第一部分 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 Kubemetes实战 197
10.3.1 Kubemetes快速安装 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