第1章 容器云平台的建设和规划 1
1.1 为什么要建设企业级容器云 1
1.2 企业IT系统现状调研分析 2
1.3 企业级容器云技术选型 5
1.4 企业级容器云总体架构方案设计 8
1.5 企业级容器云PaaS与IaaS的边界限定 12
1.6 企业级容器云建设应遵循的标准 14
1.7 小结 18
第2章 资源管理 19
2.1 计算资源管理 19
2.1.1 多集群资源管理 20
2.1.2 资源分区管理 22
2.1.3 资源配额和资源限制管理 23
2.1.4 服务端口号管理 26
2.2 网络资源管理 27
2.2.1 跨主机容器网络方案 27
2.2.2 网络策略管理 38
2.2.3 集群边界路由器Ingress的管理 40
2.2.4 集群DNS域名服务管理 48
2.3 存储资源管理 53
2.3.1 Kubernetes支持的Volume类型 54
2.3.2 共享存储简介 54
2.3.3 CSI简介 58
2.3.4 存储资源的应用场景 61
2.4 镜像资源管理 64
2.4.1 镜像生命周期管理 64
2.4.2 镜像库多租户权限管理 65
2.4.3 镜像库远程复制管理 65
2.4.4 镜像库操作审计管理 66
2.4.5 开源容器镜像库介绍 66
第3章 应用管理 71
3.1 应用的创建 72
3.1.1 应用模板的定义 72
3.1.2 应用配置管理 81
3.2 应用部署管理 84
3.2.1 对多集群环境下应用的一键部署管理 84
3.2.2 对应用更新时的灰度发布策略管理 85
3.3 应用的弹性伸缩管理 89
3.3.1 手工扩缩容 89
3.3.2 基于CPU使用率的自动扩缩容 90
3.3.3 基于自定义业务指标的自动扩缩容 92
3.4 应用的日志管理和监控管理 97
第4章 微服务管理体系 98
4.1 从单体架构到微服务架构 98
4.2 Kubernetes微服务架构 107
4.3 Service Mesh与Kubernetes 114
4.4 Kubernetes多集群微服务解决方案 133
4.5 小结 139
第5章 平台运营管理 140
5.1 DevOps管理 140
5.1.1 DevOps概述 140
5.1.2 DevOps持续集成实战 144
5.1.3 小结 153
5.2 日志管理 153
5.2.1 日志的集中采集 153
5.2.2 日志的查询分析 157
5.3 监控和告警管理 163
5.3.1 监控管理 163
5.3.2 告警管理 170
5.4 安全管理 176
5.4.1 用户角色的权限管理 177
5.4.2 租户对应用资源的访问安全管理 178
5.4.3 Kubernetes系统级的安全管理 182
5.4.4 与应用相关的敏感信息管理 183
5.4.5 网络级别的安全管理 184
5.5 容器云平台关键数据的备份管理 185
5.5.1 etcd数据备份及恢复 185
5.5.2 Elasticsearch数据备份及恢复 188
5.5.3 InfluxDB数据备份及恢复 191
第6章 传统应用的容器化迁移 195
6.1 Java应用的容器化改造迁移 195
6.1.1 Java应用的代码改造 196
6.1.2 Java应用的容器镜像构建 197
6.1.3 在Kubernetes上建模与部署 199
6.2 PHP应用的容器化改造迁移 200
6.2.1 PHP应用的容器镜像构建 201
6.2.2 在Kubernetes上建模与部署 205
6.3 复杂中间件的容器化改造迁移 207
第7章 容器云PaaS平台落地实践 210
7.1 容器云平台运营全生命周期管理 210
7.2 项目准入和准备 211
7.2.1 运营界面的划分 211
7.2.2 项目准入规范和要求 214
7.2.3 多租户资源申请流程 218
7.2.4 集群建设及应用部署 219
7.3 持续集成和持续交付 220
7.3.1 应用程序管理 220
7.3.2 微服务设计规范 221
7.3.3 应用打包/镜像管理规范 224
7.3.4 应用自动化升级部署/灰度发布 229
7.4 服务运营管理 231
7.4.1 应用容量的自动扩缩容 231
7.4.2 故障容灾切换 233
7.4.3 Docker.Kubernetes的升级 233
7.5 监控分析 237
7.5.1 综合监控 237
7.5.2 事件响应和处理 239
7.5.3 数据分析和度量 242
7.6 反馈与优化 244
第8章 案例分享 246
8.1 某大型企业的容器云PaaS平台应用案例 246
8.2 Kubernetes在大数据领域的应用案例 258
8.3 Kubernetes在NFV领域的应用案例 269