第1章 OpenStack是什么 1
1.1云 1
1.2搭建自己的云 3
1.3用法 3
1.4关键组件 3
1.4.1实例 3
1.4.2队列 4
1.4.3仪表盘(Horizon) 4
1.4.4计算(Nova) 6
1.4.5身份(Keystone) 8
1.4.6网络(Neutron) 8
1.4.7镜像服务(Glance) 9
1.4.8块存储(Cinder) 9
1.4.9对象存储(Swift) 10
1.4.10遥测(Ceilometer) 10
1.4.11裸机(Ironic) 11
1.4.12编排(Heat) 11
1.4.13容器(Magnum) 11
1.4.14其他项目 12
1.5发布周期 12
1.5.1 Ubuntu长期支持 13
1.5.2 Ubuntu Cloud Archive 13
1.5.3 Puppet模块 14
1.6小结 15
第一部分 初次部署 19
第2章 DevStack 19
2.1 DevStack是什么 19
2.1.1开发者用途 20
2.1.2培训用途 20
2.1.3持续集成用途 20
2.2 DevStack需求 21
2.3部署DevStack 21
2.3.1仪表盘:作为用户登录 23
2.3.2仪表盘:作为管理员登录 26
2.3.3命令行上使用主机 27
2.4 DevStack选项 29
2.4.1“稳定的”DevStack 29
2.4.2定制DevStack 30
2.5小结 31
第3章 网络 32
3.1关键概念 32
3.1.1操作的分层 32
3.1.2提供商网络 33
3.1.3租户网络 34
3.1.4最大传输单元(MTU) 35
3.2部署条件 36
3.3流量流 39
3.3.1控制器节点 40
3.3.2计算节点 44
3.4其他资源 45
3.5小结 45
第4章 首个OpenStack 46
4.1系统要求 46
4.2初始设置 47
4.2.1网络 47
4.2.2操作系统 49
4.2.3系统配置 49
4.3 OpenStack组件 53
4.3.1控制器节点 53
4.3.2计算节点 79
4.4管理实例 81
4.5小结 83
第二部分 部署 87
第5章 部署的基础 87
5.1系统要求 87
5.1.1参考部署 88
5.1.2网络 89
5.1.3选择部署机制 89
5.2初始设置 90
5.3选择组件 91
5.3.1身份(Keystone) 91
5.3.2数据库(MySQL) 92
5.3.3消息队列(RabbitMQ) 92
5.3.4网络(Neutron) 92
5.3.5计算(Nova) 93
5.3.6镜像(Glance) 93
5.3.7仪表盘(Horizon) 93
5.4基础场景 94
5.4.1控制器节点 94
5.4.2计算节点 106
5.4.3故障排除 111
5.5小结 112
第6章 私有计算云 113
6.1使用 113
6.1.1政府机构 114
6.1.2主要公司 114
6.2系统要求 114
6.3场景 115
6.3.1启动实例:仪表盘 115
6.3.2启动实例:OpenStack客户端 124
6.3.3运行服务 131
6.3.4 SDK与OpenStack API 133
6.4小结 134
第7章 公有计算云 135
7.1使用 135
7.1.1传统技术公司 136
7.1.2网络托管公司 136
7.2系统要求 136
7.3架构概览 137
7.4场景 138
7.4.1控制器节点设置 138
7.4.2计算节点设置 139
7.4.3查看统计数据:仪表盘 140
7.4.4查看统计数据:命令行客户端 141
7.5处理测量值与警报 144
7.6小结 144
第8章 块存储云 145
8.1使用 145
8.1.1云提供商 145
8.1.2数据处理 146
8.1.3保持备份 147
8.2系统要求 147
8.3架构概览 148
8.4场景 149
8.4.1控制器节点设置 149
8.4.2创建和附加卷:仪表盘 151
8.4.3创建和附加卷:OpenStack客户端 154
8.4.4使用卷 157
8.4.5自动化 159
8.5小结 159
第9章 对象存储云 160
9.1使用 160
9.1.1网络托管公司 161
9.1.2文件同步与共享 161
9.1.3日志存储 161
9.2系统要求 162
9.2.1选择组件 162
9.2.2关键概念 162
9.3场景 165
9.3.1控制器节点设置 166
9.3.2创建容器和对象:仪表盘 169
9.3.3创建容器和对象:OpenStack客户端 172
9.3.4使用对象 173
9.4除Swift之外 176
9.5小结 176
第10章 裸机配置 177
10.1使用 177
10.1.1云托管公司 178
10.1.2内部云 178
10.1.3数据库托管 178
10.1.4高性能计算 178
10.2架构概览 179
10.2.1安装 180
10.2.2使用Ironic 180
10.2.3管理Ironic 183
10.3社区 184
10.4小结 184
第11章 控制容器 185
11.1什么是容器 185
11.2使用 186
11.2.1公有云公司 186
11.2.2在线游戏公司 186
11.3针对Nova的容器驱动 187
11.4 Magnum 187
11.4.1 Magnum概念 188
11.4.2安装Magnum 189
11.5小结 189
第三部分 扩展与故障排除 193
第12章 一个完整的云 193
12.1使用 193
12.2系统要求 193
12.3场景 194
12.3.1控制器节点设置 194
12.3.2计算节点设置 195
12.3.3探索部署:仪表盘 195
12.3.4探索部署:命令行客户端 196
12.4更大的云 197
12.4.1高可用性和扩展性 197
12.4.2额外组件 198
12.5小结 199
第13章 故障排除 200
13.1阅读显示的错误 200
13.2日志 203
13.2.1调试模式 203
13.2.2理解日志消息 204
13.3关键服务 205
13.4网络 205
13.4.1网络调试工具 206
13.4.2 ip和网络名称空间 206
13.4.3 tcpdump 207
13.4.4 MTU 208
13.4.5 Open vSwitch和Linux网桥 208
13.4.6 iptables 209
13.5配置文件 209
13.6 Puppet 210
13.6.1探索模块 210
13.6.2更多的Puppet帮助 211
13.7缓解中断 211
13.8请求帮助 212
13.9小结 212
第14章 厂商与混合云 213
14.1厂商生产系统 213
14.2公有云与混合云 214
14.2.1公有云 214
14.2.2混合云 216
14.3厂商锁定 217
14.3.1迁移至自己运行的新云上 217
14.3.2迁移至由厂商运行的云上 217
14.4小结 218
附录A 参考部署 219
附录B 其他部署机制 222
附录C 经久耐用的Puppet 224
附录D 为OpenStack贡献代码 229
附录E OpenStack客户端(OSC) 235
附录F 通过OpenStack寻求帮助 239