• 日本核爆受害者启动环球航海 呼吁废核 2019-02-26
  • 武汉今秋迎11.5万名小学新生 “房户一致”优先 2019-02-26
  • Docker微服务架构实战
    • 推荐0
    • 收藏5
    • 浏览731

    Docker微服务架构实战

    黑龙江时时时彩结果 www.fcyww.com 蒋彪 (作者) 

    • 书  号:978-7-121-35033-7
    • 出版日期:2018-11-06
    • 页  数:284
    • 开  本:16(185*235)
    • 出版状态:上市销售
    • 维护人:孙奇俏
    纸质版 ¥69.00

    相关图书

    Kubernetes in Action中文版

    Marko Luksa (作者) 李雪瓅 (译者)

    本书主要讲解如何在 Kubernetes 中部署分布式容器应用。本书开始部分概要介绍了 Docker 和Kubernetes 的由来和发展,然后通过在 Kube...

    ¥148.00

    Kubernetes容器云运维实战

    闫健勇 (作者)

    本书是基于《Kubernetes权威指南:从Docker到Kubernetes实践全接触》进行企业级容器云平台建设的实战指南,力图对容器云平台的建设、应用和运营...

    ¥89.00

    Java云原生

    Josh Long, Kenny Bastani (作者) 张若飞 (译者)

    无论是传统IT行业,还是互联网行业,都正处于行业历史上最剧烈的变革中 :大量的系统正在从传统的IT架构转向基于云的架构, 开发模式也正在从开发和运维分工的传统模...

    ¥128.00

    生产微服务

    Susan Fowler (作者) 薛命灯 (译者)

    本书全面地探讨了微服务,作者从运行超过一千个微服务的高生产准备标准中获取经验,探讨了适用所有微服务的标准,分享了使微服务处于生产就绪状态的策略,为读者展现出一个...

    ¥35.00

    Swarm容器编排与Docker原生集群

    Fabrizio Soppelsa ,Chanwit Kaewkasi (作者) 崔婧雯 (译者)

    Docker Swarm作为Docker集群原生的容器编排解决方案,是Docker生态系统中的关键组件之一?!禨warm容器编排与Docker原生集群》涵盖了S...

    ¥39.00

    Mesos 实战

    Roger Ignazio (作者) 余何 (译者)

    本书汇集了以Mesos为核心的新一代数据中心操作系统的最佳实践,全面展示了Mesos集群对数据中心资源管理的集成高效性,和对应用部署和计划任务创建扩容操作的便捷...

    ¥69.00
    微服务与Docker 是近年来分布式大规模服务架构中两个主流的技术趋势,本书主要介绍中小型企业在架构落地过程中柔性地切入微服务和Docker 虚拟化的各种方法。
    书中主要介绍了微服务架构的各种技术选型、微服务拆分的各项原则、传统应用向微服务架构过渡的方法论、Docker 技术原理、Docker 跨主机通信选型、Docker 与DevOps 的整合方法等要点,同时简单介绍了利用Rancher 搭建Docker 容器云平台的快速解决方案,非常适合云计算从业人员阅读、学习。
    深入解析微服务、容器技术、Service Mesh原理,帮助读者快速建立微服务生态圈的全局知识体系。
    蒋彪,高级架构师。2006年至今,历任程序员、技术经理、架构师、高级架构师等职,具有十余年研发及技术管理工作经验。早年在日本参与过みずほ银行(瑞穂实业银行)内部精算系统重构项目,以及东京证券交易所新一代交易系统研发项目,回国后主持过江苏三六五网、麦芽金服等公司的大型高并发互联网架构工作。主要技术领域是微服务设计、容器化部署、容器云计算、DevOps方法论、AIOps模型实战。
    前言

    Docker 与微服务是什么
    到底什么是架构师?一名架构师的职责应该是什么?
    很多年前,我作为一名架构初学者,便了解了架构师要做的事情。从方法论上来看,就是“识别利益相关者”“梳理各个层次的利益传递”和“根据利益线索设计有伸缩性的架构”。
    同样,以架构师的视角来看,到底什么是微服务呢?作为架构师,我所看到的微服务,是在团队人数井喷,产品迭代周期太快,系统中的技术负债过剩导致不能将鸡蛋放到同一个摇摇欲坠的篮子,投资人对产品功能特性提出夸张、多变要求的大背景下,在投资人、经理层、研发人员、测试人员、运维人员等各个利益相关者的逼迫下,被迫地将系统从并发、扩展、易维护等维度进行的拆分。
    按照微服务的思想将系统拆分之后,我们发现,拆分得越厉害,系统的信息熵就越大,因此有了系统的拆分,就要有拆分之后的治理。
    比如,如何保证拆分之后应用的注册发现?如何保证拆分之后服务的熔断限流监控?如何保证服务之间底层通信的可靠性和序列化?
    为此,各种各样的服务治理以及分布式服务协同框架便出现了。
    那么是不是有了微服务的拆分再加上微服务的治理就足够了呢?对于开发人员而言也许足够了,但是对于运维人员而言,远远不够。拆分使得系统的健壮性大大提高,但是也使系统的发布和运维异常复杂。试想一下,如何在一个分布式的环境下令几万个微服务快速启停?如何实现几万个微服务的管理、编排与自动扩容?
    为了解决这些问题,Docker 以及与Docker 关联的各种容器编排技术便出现了。
    因此,如果我们站在终点回望起点,就会知道为什么会有微服务,又为什么会有Docker,乃至为什么会有今天的Service Mesh。我们可以说,这些技术的产生一脉相承,它们的根本目的都是解决系统复杂度井喷之后的系统架构问题;从学术上来说,这些技术都是在和复杂分布式架构中的信息熵进行对抗;从工程上来说,这些技术是当今时代背景催生出的必然产物。

    为什么写此书
    作为一名技术人员,比起知道技术的用法,更重要的是要知道如何使这项技术切合公司现有的技术栈、业务线,如何解决公司的痛点,如何在各个部门的协同下将技术实际落地。
    一项技术再好,再优秀,在实际落地中也要“削足适履”,要根据公司的产品线走,跟着公司的技术现状确定如何应用。毕竟绝大多数公司的第一要务是生存与盈利,能够专职供养一支底层研究技术团队的公司少之又少,更何况是对Docker 这样的“底之又底”的技术栈。
    对于一名架构师而言,当你决定引入Docker 的时候,你要知道,你在公司内引入的不是一个简单的技术框架、一个中间件、一个自动化工具,而是一种思想、一个云平台、一个新的开发习惯。
    对于Docker 的引入,从入门到落地,需要架构师、运维工程师、网络工程师、研发人员、测试工程师,乃至公司高层的全面支持和协作。把Docker 用到极致,就是在建设自己的云平台和PaaS,对于这种体量的研究,若没有一个全面的规划和路线图是无法完成的。
    同时,对于Docker 的引入者而言,需要学习包括Docker 底层的原理、Docker 的网络模型、Docker 的容器隔离、Docker 下的自动发布与自动运维,乃至常被很多人挂在嘴边的Docker 容器编排、Docker 与微服务、Docker 与DevOps 在内的方方面面的知识。
    上述所有的知识,若能够集中在一个人身上,实在是难得。毕竟,在IT 行业,每个人都有自己的知识短板。
    甚至我可以负责任地说,在很多公司中,若想找到一支能够搞定底层到上层方方面面建设的专业团队,都是很困难的。
    举个例子,我见过很多Docker 实际应用的场景,在一些中型场景中,通常直接用bridge端口来转发通信,为什么会这样?因为很多公司虽然不缺少优秀的程序员,但是缺少网络方面的架构师,不懂也不敢尝试复杂的网络模式。再比如,我亲眼见到有的项目在落地的时候,采用Docker 挂载卷轴的方式发布代码,为什么?因为这些公司缺少专门的人来维护CI/CD 平台。
    正是因为有这些困难,所以笔者将自己在中小型企业中推广微服务和Docker 的亲身经历和亲眼所见总结出来,从技术选型和架构切入的层面进行梳理,希望通过这本书将这些好的经验传递给需要的读者,帮助更多的人。

    本书内容
    本书共包括三个部分,共计13 章,每部分及每章的简要内容如下。
    第一部分 Docker 与微服务基础
    第1 章 微服务架构概述
    本章介绍了微服务具体是什么,为什么要使用微服务,微服务的架构设计原则,以及从单体到微服务的演进过程。
    第2 章 微服务中的技术选型
    本章主要介绍了微服务架构中的各种技术选型,包括服务治理、服务网关、服务发现、请求链路追踪等。
    第3 章 Service Mesh
    本章主要介绍了目前非常前沿的一个微服务架构Service Mesh,讲述其定义、优势、发展历程以及未来可能的发展趋势。
    第4 章 Docker 技术简介
    本章主要介绍了Docker 技术是什么,Docker 与传统VM 的区别,Docker 的作用和优势,Docker 生态圈的现状与发展,以及微服务与Docker 的联系等。
    第二部分 Docker 架构与生态
    第5 章 Docker 技术架构
    本章介绍了Docker 的进程模型,Docker 在宿主机上的进程特征,Docker 容器的底层实现机制,以及Docker 在运行时的技术模型。
    第6 章 Docker 逻辑架构
    本章介绍了Docker 中各个核心组件之间的逻辑架构关系,讲解了各个组件之间是如何进行耦合的,最后简单介绍了开源仓库Harbor 的原理和部署方式。
    第7 章 Docker 网络架构
    本章介绍了Docker 在单机环境下的网络通信模式,包括Bridge、Host、Container、None等,同时介绍了Docker 在跨主机集群环境下的常见网络通信模式,比如Flannel、L2-FLAT 等。
    第8 章 Docker 安全架构
    本章介绍了Docker 技术中常见的安全问题,比如Docker 自身隔离机制不足导致的安全缺陷、Docker 镜像被注入恶意代码导致的安全缺陷等,同时提出了一系列的Docker 安全检查基线,最后介绍了几种常见的Docker 安全工具。
    第9 章 Docker 与DevOps
    本章介绍了Docker 中的代码如何挂载,如何在Docker 容器中实现服务注册发现,同时介绍了Dockerfile 的写法和规范,以及如何在Docker 中收集日志、实施监控,如何与CI/CD 平台整合等。
    第10 章 容器编排
    本章介绍了容器编排技术的概念、用途和具体用法,列举了常见的几种容器编排技术,比如Swarm、Kubernetes 和Mesos 等,对它们进行了比较,简单介绍了它们的部署安装及使用方法。
    第三部分 Docker 落地之路
    第11 章 企业级Docker 容器云架构
    本章介绍了在企业级环境下如何进行整体的Docker 架构设计,同时介绍了围绕着Docker建立企业级容器云平台架构的方法。
    第12 章 基于Rancher 的容器云管理平台
    本章介绍了基于开源PaaS 软件Rancher 建立企业级容器云平台的各类方案,以及其中各种技术难点的解决方法。
    第13 章 微服务与Docker 化实战
    本章介绍了如何在某条实际产品线的Docker 化落地过程中进行平滑切入,如何打通容器网络和物理网络,以及如何将产品线整合进Rancher 的容器云平台。

    目录

    目录

    第一部分 Docker 与微服务基础 .......................................................................................... 1
    第1 章 微服务架构概述 .......................................................................................................... 2
    1.1 什么是微服务 ............................................................................................................... 2
    1.1.1 CORBA ............................................................................................................. 3
    1.1.2 DCOM ............................................................................................................... 4
    1.1.3 RMI .................................................................................................................... 5
    1.1.4 SOA ................................................................................................................... 7
    1.2 为什么要使用微服务 ................................................................................................... 9
    1.2.1 scale cube ........................................................................................................... 9
    1.2.2 API 网关 .......................................................................................................... 13
    1.3 微服务架构设计原则 ................................................................................................. 15
    1.3.1 业务架构 ......................................................................................................... 15
    1.3.2 逻辑架构 ......................................................................................................... 16
    1.3.3 技术架构 ......................................................................................................... 19
    1.3.4 基础架构 ......................................................................................................... 20
    1.4 从单体到微服务 ......................................................................................................... 21
    1.4.1 止损 ................................................................................................................. 22
    1.4.2 前后端分离 ..................................................................................................... 23
    1.4.3 提取服务 ......................................................................................................... 24
    第2 章 微服务中的技术选型 ................................................................................................. 26
    2.1 服务治理 ..................................................................................................................... 27
    2.1.1 Dubbo .............................................................................................................. 27
    2.1.2 Spring Cloud .................................................................................................... 30
    2.2 服务网关 ..................................................................................................................... 35
    2.2.1 OpenResty ........................................................................................................ 35
    2.2.2 Orange ............................................................................................................. 38
    2.2.3 Kong ................................................................................................................ 40
    2.2.4 Zuul .................................................................................................................. 41
    2.3 服务注册发现 ............................................................................................................. 43
    2.3.1 ZooKeeper ....................................................................................................... 43
    2.3.2 Eureka .............................................................................................................. 49
    2.4 配置中心 ..................................................................................................................... 51
    2.5 请求链路追踪 ............................................................................................................. 57
    第3 章 Service Mesh ........................................................................................................... 64
    3.1 初识Service Mesh ...................................................................................................... 64
    3.1.1 什么是Service Mesh ....................................................................................... 64
    3.1.2 为什么使用Service Mesh ............................................................................... 65
    3.2 Service Mesh 的发展过程 .......................................................................................... 66
    3.2.1 早期的分布式计算 ......................................................................................... 66
    3.2.2 微服务时代的分布式计算.............................................................................. 68
    3.3 主流的Service Mesh 框架 ......................................................................................... 73
    第4 章 Docker 技术简介 ...................................................................................................... 75
    4.1 Docker 是什么 ............................................................................................................ 75
    4.2 Docker 的作用 ............................................................................................................ 77
    4.2.1 用Docker 快速搭建环境 ................................................................................ 78
    4.2.2 用Docker 降低运维成本 ................................................................................ 83
    4.2.3 Docker 下自动发布 ......................................................................................... 84
    4.3 Docker 的生态圈 ........................................................................................................ 86
    4.4 微服务与Docker ........................................................................................................ 89

    第二部分 Docker 架构与生态 ............................................................................................ 93
    第5 章 Docker 技术架构 ...................................................................................................... 94
    5.1 Docker 的进程模型 .................................................................................................... 94
    5.1.1 容器中进程启动的两种模式 .......................................................................... 96
    5.1.2 容器中的进程隔离模型 ............................................................................... 101
    5.1.3 容器的自重启 ............................................................................................... 102
    5.1.4 容器中用户权限的隔离和传递 .................................................................... 103
    5.1.5 Docker 守护进程宕机的处理机制 ............................................................... 104
    5.2 容器的本质 ............................................................................................................... 104
    5.2.1 Namespace 解惑 ............................................................................................ 105
    5.2.2 Rootfs 解惑 .................................................................................................... 106
    5.2.3 CGroups 解惑 ................................................................................................ 109
    5.3 Docker 容器的运行时模型 ....................................................................................... 111
    第6 章 Docker 逻辑架构 .................................................................................................... 113
    6.1 Docker Registry 的技术选型 .....................................................................................114
    6.2 Harbor 的部署 ............................................................................................................115
    第7 章 Docker 网络架构 .................................................................................................... 120
    7.1 Docker 的单机网络模式 .......................................................................................... 120
    7.1.1 Bridge 模式 ................................................................................................... 120
    7.1.2 Host 模式 ....................................................................................................... 123
    7.1.3 Container 模式 ............................................................................................... 124
    7.1.4 None 模式 ...................................................................................................... 125
    7.2 Docker 的集群网络模式 .......................................................................................... 126
    7.2.1 Bridge 端口转发 ........................................................................................... 126
    7.2.2 扁平网络 ....................................................................................................... 127
    7.2.3 Flannel 模式 .................................................................................................. 130
    第8 章 Docker 安全架构 .................................................................................................... 135
    8.1 Docker 安全问题 ...................................................................................................... 135
    8.2 Docker 安全措施 ...................................................................................................... 138
    第9 章 Docker 与DevOps ................................................................................................. 148
    9.1 DevOps 概要 ............................................................................................................. 148
    9.2 Docker 容器的代码挂载机制 .................................................................................. 149
    9.2.1 静态导入 ....................................................................................................... 149
    9.2.2 动态导入 ....................................................................................................... 150
    9.3 Docker 与服务发现 .................................................................................................. 150
    9.4 Dockerfile 怎么写 ..................................................................................................... 164
    9.5 Docker 与日志 .......................................................................................................... 172
    9.6 Docker 与监控 .......................................................................................................... 176
    9.7 Docker 与CI/CD ....................................................................................................... 182
    9.8 Docker 给运维团队带来的挑战 .............................................................................. 184
    第10 章 容器编排 ............................................................................................................... 186
    10.1 容器编排概述 ......................................................................................................... 186
    10.2 容器编排技术选型 ................................................................................................. 189
    10.2.1 Docker Swarm ............................................................................................. 189
    10.2.2 Kubernetes ................................................................................................... 191
    10.2.3 Marathon ...................................................................................................... 194
    10.3 Kubernetes 实战 ...................................................................................................... 197
    10.3.1 Kubernetes 快速安装 .................................................................................. 198
    10.3.2 在Kubernetes 上部署应用 ......................................................................... 203
    10.4 Docker Swarm 实战 ................................................................................................ 210
    10.4.1 Docker Swarm 的快速安装 ........................................................................ 212
    10.4.2 在Decker Swarm 上部署应用 .................................................................... 214

    第三部分 Docker 落地之路 ............................................................................................. 221
    第11 章 企业级Docker 容器云架构 ................................................................................... 222
    11.1 宏观系统视角下的架构 ......................................................................................... 222
    11.2 容器云平台逻辑架构图 ......................................................................................... 223
    第12 章 基于Rancher 的容器云管理平台 ......................................................................... 226
    12.1 Rancher 概述 ........................................................................................................... 226
    12.2 Rancher 的安装 ....................................................................................................... 227
    12.3 Rancher 对IaaS 的管理 .......................................................................................... 228
    12.4 Rancher 下多租户多环境的管理 ........................................................................... 236
    12.5 Rancher 对SaaS 的管理 ......................................................................................... 240
    12.6 Rancher 对容器的管理 ........................................................................................... 242
    12.7 Rancher 的L2-FLAT 网络 ..................................................................................... 248
    12.8 Rancher 的服务治理 .............................................................................................. 249
    第13 章 微服务与Docker 化实战 ....................................................................................... 258
    13.1 整体架构鸟瞰 ......................................................................................................... 258
    13.2 基于log-pilot 的日志收集 ..................................................................................... 261
    13.3 基于Zabbix 的容器监控 ........................................................................................ 263
    13.4 简单的DevOps 架构图 .......................................................................................... 264
    13.5 推进方案和成本 ..................................................................................................... 266

    读者评论

  • 日本核爆受害者启动环球航海 呼吁废核 2019-02-26
  • 武汉今秋迎11.5万名小学新生 “房户一致”优先 2019-02-26