第1章 欢迎来到Docker Swarm 1
集群工具和容器管理器 3
Swarm的目标 3
为什么使用Swarm 4
真实的示例 5
-- 宠物模型vs牛群模型 5
Swarm特性 6
类似项目 7
-- Kubernetes 7
-- CoreOS Fleet 8
-- Apache Mesos 9
-- Kubernetes vs Fleet vs Mesos 10
-- Swarm vs所有 10
Swarm v1架构 10
-- 术语 12
开始使用Swarm 13
-- Mac系统上的Docker 14
-- Windows系统上的Docker 16
-- 使用Linux 18
-- 检查Docker Machine是否可用——所有系统 19
以前的Swarm 19
-- Boot2Docker 21
-- 使用Docker Machine创建4个集群节点 21
-- 配置Docker主机 24
-- 启动Docker Swarm 25
-- 测试Swarm集群 29
-- 如今的Swarm 31
本章小结 35
第2章 探索发现服务 36
发现服务 37
Token 38
-- 使用token重新架构第1章示例 38
-- Token的限制 43
Raft 43
-- Raft理论 43
-- 实际的Raft 45
Etcd 47
-- 使用Etcd重新架构第1章示例 47
ZooKeeper 50
Consul 50
-- 使用Consul重新架构第1章示例 50
实现去中心化的发现服务 52
本章小结 52
第3章 遇见Docker Swarm Mode 53
SwarmKit 53
-- 版本和支持 54
-- SwarmKit架构 54
-- SwarmKit的核心:swarmd 56
-- SwarmKit的控制器:swarmctl 57
-- 使用Ansible预配SwarmKit集群 58
-- 在SwarmKit上创建服务 62
Swarm Mode 63
-- Swarm v1 vs Swarm Mode vs SwarmKit 64
-- 深入了解Swarm Mode部署 65
本章小结 72
第4章 创建生产级别Swarm 73
工具 73
Swarm2k的HA拓扑 74
-- 管理器配置 75
-- Raft恢复场景 75
-- Raft文件 76
-- 运行任务 76
-- 管理器拓扑 76
使用belt预配基础架构 79
使用Docker Machine保护管理器安全 81
理解Swarm内部机制 83
-- 加入worker 84
-- 升级管理器 85
监控Swarm2k 87
-- InfluxDB时间序列数据库 87
Swarm3k 90
-- Swarm3k的搭建和工作负载 90
-- 大规模Swarm的性能 92
总结Swarm2k和Swarm3k的经验教训 95
本章小结 96
第5章 管理Swarm集群 97
Docker Swarm standalone 97
Docker Swarm Mode 98
-- 手动添加节点 99
-- 管理器 99
-- Worker数量 100
-- 添加脚本化节点 100
-- belt 102
-- 使用Ansible 103
集群管理 105
-- 操作节点 106
降级和升级 107
-- 标记节点 108
-- 移除节点 110
Swarm健康 111
备份集群配置 111
灾难恢复 112
Swarm的图形化界面 112
-- Shipyard 112
-- Portainer 114
本章小结 115
第6章 Swarm上真实应用的部署 116
微服务 116
部署一个复制的Nginx 117
-- 一个极简的Swarm 118
-- Docker Service 120
overlay网络 124
集成的负载均衡 124
服务的连接:用WordPress例子展示 124
-- Swarm的调度策略 127
-- 现在,WordPress 127
Docker Compose和Swarm Mode 130
Docker stacks介绍 130
-- 分布式应用包 131
-- Docker deploy 132
另外一个应用:Apache Spark 133
-- 为什么要在Docker上运行Spark 134
-- 没有Swarm的Spark单机 134
-- 在Swarm上的Spark单机 137
-- 在Swarm上启动Spark 138
本章小结 140
第7章 平台的向上伸缩 141
再次登场的Spark例子 142
Docker插件 142
实验室环境 143
-- 一个独一无二的秘钥 143
-- Docker Machine 144
-- 安全组 145
-- 网络配置 146
-- 存储配置和架构 146
安装Flocker 148
-- 生成Flocker证书 149
-- 安装软件 151
-- 安装控制节点 153
-- 安装集群节点 153
-- 测试一切是否正常 154
安装并配置Swarm 156
-- 为Spark添加一个卷 157
再次部署Spark 157
-- 测试Spark 159
-- 使用Flocker存储 161
伸缩Spark 164
监控Swarm托管的应用 165
-- Prometheus 165
-- 安装一个监控系统 166
-- 在Grafana中导入Prometheus 167
本章小结 169
第8章 Swarm附加特性的探索 171
Libnetwork 171
-- Networking插件 172
-- 容器网络模型 173
加密和路由矩阵 174
MacVLAN 174
-- overlay网络 175
网络控制面板 177
Libkv 179
-- 如何使用libkv 180
本章小结 181
第9章 Swarm集群和Docker软件供应链的安全加固 182
软件供应链 182
Swarm集群的安全加固 183
安全加固Swarm:最佳实践 184
-- 证书颁发机构 185
-- 证书和相互TLS 185
-- 集群加入令牌 185
-- 在Docker Machine中添加TLS 186
Docker Notary 187
Docker Secret介绍 190
本章小结 192
第10章 Swarm和云 193
Docker for AWS和Docker for Azure 193
-- Docker for AWS 194
-- Docker for Azure 198
Docker Datacenter 201
OpenStack上的Swarm 202
-- OpenStack Nova 204
-- 当下现实:OpenStack友好的方式 205
-- OpenStack Heat 205
-- OpenStack Magnum 206
本章小结 215
第11章 Swarm的未来展望 216
Provisioning的挑战 216
软件定义基础设施 216
-- Infrakit 217
-- TUF—— The Update Framework 219
Docker Stacks和Compose 220
Caas ——容器即服务 220
Unikernel 220
为Docker做贡献 222
-- Github 222
-- 提交issue 222
-- 代码 223
-- belt和其他项目 223
本章小结 223
· · · · · · (
收起)