《精通OpenStack》新书(原书翻译第二版)出版

由我(山金孝)和业内技术专家刘世民(Sammy Liu)、肖力(《深度实践KVM作者》)共同翻译的英文畅销Openstack书籍,于2019年2月已由机械工业出版社出版,目前可在京东等各大商店购买!这本书在在国外的销量还是很不错的,我们翻译的时候已经是第二版本了,主要将的是OpenStack整个生命周期的管理及各种工具,对从事或想要了解openstack的朋友应该会有帮助。

目录如下:

目录

译者序

前言

关于作者和审校者

第1章 OpenStack参考架构设计 1

1.1 OpenStack引领新一代数据中心 2

1.2 OpenStack逻辑架构介绍 2

1.2.1 认证管理服务Keystone 3

1.2.2 对象存储服务Swift 3

1.2.3 块存储服务Cinder 4

1.2.4 文件共享存储服务Manila 5

1.2.5 镜像注册服务Glance 5

1.2.6 计算服务Nova 6

1.2.7 网络服务Neutron 7

1.2.8 计量服务Telemetry 9

1.2.9 编排服务Heat 9

1.2.10 仪表盘服务Horizon 10

1.2.11 消息队列 10

1.2.12 数据库 10

1.3 资源准备与虚拟机创建 10

1.3.1 准备虚拟机资源 10

1.3.2 虚拟机创建流程 11

1.4 OpenStack逻辑概念设计 13

1.4.1 概念模型设计 13

1.4.2 逻辑模型设计 15

1.4.3 存储选型考虑 16

1.4.4 逻辑网络设计 17

1.5 OpenStack物理模型设计 19

1.5.1 估算硬件容量 19

1.5.2 CPU评估 20

1.5.3 内存评估 21

1.5.4 网络评估 21

1.5.5 存储评估 22

1.6 OpenStack设计实践 23

1.7 总结 24

第2章 基于DevOps的OpenStack部署 25

2.1 DevOps与CI/CD 25

2.1.1 一切皆代码 26

2.1.2 DevOps与OpenStack 27

2.1.3 基础架构部署代码 28

2.1.4 OpenStack中的CI/CD 29

2.2 DevOps工具与OpenStack自动化部署 30

2.2.1 Ansible介绍 31

2.2.2 Ansible与OpenStack自动化 33

2.2.3 开发和生产环境架构 34

2.2.4 硬件与软件需求规划 35

2.2.5 网络需求规划 36

2.2.6 开发环境构建 37

2.2.7 基础架构代码环境准备 39

2.2.8 代码变更追踪 43

2.3 总结 43

第3章 OpenStack集群——云控制器和公共服务 44

3.1 集群核心概念 45

3.1.1 非对称集群 45

3.1.2 对称集群 45

3.1.3 集群分而治之 45

3.2 云控制器及其服务 46

3.2.1 Keystone服务 47

3.2.2 nova-conductor服务 50

3.2.3 nova-scheduler服务 50

3.2.4 API服务 51

3.2.5 镜像管理 51

3.2.6 网络服务 52

3.2.7 Horizon仪表板服务 52

3.2.8 计量服务 52

3.2.9 基础架构服务 53

3.3 云控制器集群部署准备 54

3.3.1 OpenStack Ansible安装部署 55

3.3.2 控制节点环境准备 57

3.4 使用OpenStack playbook部署集群 58

3.4.1 配置OpenStack Ansible 58

3.4.2 网络配置 59

3.4.3 配置主机组 59

3.4.4 用于集群部署的playbook 61

3.5 总结 63

第4章 OpenStack计算——Hypervisor选择与节点隔离 64

4.1 计算服务组件 65

4.2 Hypervisor决策 65

4.3 Docker容器与Hypervisor 66

4.4 OpenStack容器服务项目Magnum 67

4.5 计算云中的分区与隔离 69

4.5.1 可用区 69

4.5.2 主机聚合 69

4.5.3 Nova单元 70

4.5.4 区域 71

4.5.5 工作负载隔离 71

4.5.6 使用多种Hypervisor 72

4.6 资源超分 75

4.6.1 CPU分配比率 75

4.6.2 内存分配比率 76

4.7 实例临时存储规划 77

4.7.1 外部共享文件存储 77

4.7.2 内部非共享文件存储 77

4.8 理解实例启动过程 77

4.8.1 理解Nova调度流程 78

4.8.2 从镜像启动实例 78

4.8.3 获取实例元数据 78

4.8.4 添加计算节点 80

4.9 备份恢复规划 81

4.9.1 使用backup-manager进行备份 82

4.9.2 简要恢复步骤 83

4.9.3 数据保护即服务 84

4.9.4 OpenStack社区数据备份项目 84

4.10 总结 84

第5章 OpenStack块、对象存储与文件共享 85

5.1 OpenStack存储类型 86

5.1.1 临时存储 86

5.1.2 持久存储 86

5.2 Swift对象存储 87

5.2.1 Swift架构 87

5.2.2 Swift在物理设计上的规划 88

5.2.3 Swift环 89

5.2.4 Swift存储策略和纠删码 91

5.2.5 Swift硬件考虑 92

5.2.6 Swift节点资源配置考虑 93

5.2.7 Swift网络配置考虑 94

5.2.8 Swift服务部署 94

5.3 块存储服务Cinder 97

5.3.1 Cinder后端驱动和调度 99

5.3.2 Cinder服务部署 101

5.4 共享存储服务Manila 101

5.4.1 Manila共享存储项目介绍 101

5.4.2 Manila共享存储配置与使用 103

5.5 存储类型选择 104

5.6 Ceph分布式存储集群 105

5.6.1 Ceph在OpenStack中的应用 108

5.6.2 使用Ansible部署Ceph集群 108

5.6.3 将Glance镜像存储至Ceph 111

5.7 总结 112

第6章 OpenStack网络类型与安全 113

6.1 Neutron架构 114

6.1.1 Neutron插件 115

6.1.2 Neutron服务插件 115

6.1.3 Neutron代理 115

6.1.4 Neutron API扩展 115

6.2 虚拟网络实现 116

6.2.1 VLAN网络 116

6.2.2 隧道网络 116

6.2.3 虚拟交换机 118

6.2.4 ML2插件 118

6.2.5 网络类型 119

6.2.6 Neutron子网 119

6.2.7 创建虚拟网络和子网 119

6.3 Neutron网络端口连接 119

6.3.1 基于Linux Bridge的网络连接 119

6.3.2 基于OpenVSwitch的网络连接 121

6.4 Neutron虚拟网络与路由 123

6.4.1 Neutron虚拟配置路由服务 123

6.4.2 基于路由的网络连接实现 124

6.4.3 实例访问外网 125

6.4.4 外网访问实例 125

6.4.5 关联虚拟机浮动IP 126

6.5 Neutron安全组 126

6.5.1 安全组 127

6.5.2 创建安全组策略 127

6.6 Firewall as a Service 128

6.6.1 防火墙配置 128

6.6.2 创建防火墙策略和规则 129

6.7 v*n as a Service 130

6.7.1 v*n插件配置 131

6.7.2 创建v*n服务 132

6.8 总结 137

第7章 OpenStack SDN网络与NFV 138

7.1 基于SDN的网络 138

7.1.1 SDN介绍 138

7.1.2 OVS架构 139

7.2 OVN架构 140

7.2.1 OVN组件 141

7.2.2 OVN与OpenStack集成 141

7.2.3 基于OVN的虚拟网络实现 142

7.3 网络功能虚拟化 144

7.3.1 管理与编排规范 144

7.3.2 云应用拓扑编排规范模版 144

7.3.3 OpenStack Tacker项目介绍 145

7.4 基于Octavia的LBaaS实现 147

7.4.1 配置Octavia 148

7.4.2 创建负载均衡器 148

7.5 总结 150

第8章 OpenStack集群操作与管理 151

8.1 OpenStack租户操作 152

8.1.1 项目与用户管理 152

8.1.2 用户权限管理 153

8.1.3 资源配额管理 155

8.2 OpenStack编排服务 160

8.2.1 OpenStack Heat项目介绍 160

8.2.2 OpenStack模板栈及其介绍 161

8.2.3 OpenStack模板栈组织架构 162

8.2.4 栈模块化编排应用 162

8.2.5 资源编排利器Terraform 170

8.3 本章小结 178

第9章 OpenStack高可用与容错机制 179

9.1 集群高可用 179

9.1.1 不能混淆的HA概念 181

9.1.2 Open Stack中的HA级别 181

9.1.3 严格制定SLA 182

9.1.4 量化与度量SLA 183

9.1.5 HA字典 183

9.2 负载均衡器HAProxy 184

9.2.1 OpenStack服务高可用 186

9.2.2 负载均衡高可用 186

9.3 OpenStack HA实现方法 187

9.3.1 数据库高可用 188

9.3.2 消息队列高可用 191

9.4 HA规划与实现 192

9.4.1 MySQL高可用实现 192

9.4.2 RabbitMQ高可用实现 197

9.4.3 OpenStack控制节点高可用实现 200

9.4.4 网络节点高可用实现 204

9.5 Ansible实现HA 210

9.6 总结 212

第10章 OpenStack集群监控与故障排查 213

10.1 OpenStack中的Telemetry服务 214

10.1.1 Ceilometer介绍及架构 214

10.1.2 时序数据库Gnocchi 218

10.1.3 监控告警项目Aodh 219

10.2 在OpenStack中安装Telemetry 220

10.2.1 Ceilometer安装部署 221

10.2.2 Aodh配置部署 224

10.3 OpenStack监控增强 226

10.3.1 运行Nagios 227

10.3.2 Nagios监控配置 228

10.3.3 Nagios监控OpenStack 228

10.4 基于监控的OpenStack故障排除 231

10.4.1 服务的启动与运行 231

10.4.2 服务监听 233

10.4.3 拯救故障实例 234

10.4.4 网络故障排除 236

10.5 总结 239

第11章 OpenStack ELK日志处理系统 240

11.1 OpenStack日志处理 241

11.1.1 OpenStack日志解密 241

11.1.2 OpenStack外部监控系统 244

11.1.3 ELK核心概念与组件 244

11.2 ELK安装部署 246

11.2.1 ELK服务器准备 247

11.2.2 ElasticSearch安装 247

11.2.3 ElasticSearch配置 248

11.2.4 ElasticSearch功能扩展 249

11.2.5 Kibana安装 251

11.2.6 Kibana配置 251

11.2.7 LogStash安装 253

11.2.8 LogStash配置 254

11.2.9 LogStash操作 254

11.2.10 LogStash客户端准备 257

11.2.11 OpenStack日志过滤 258

11.3 OpenStack ELK功能扩展 262

11.3.1 OpenStack日志可视化 264

11.3.2 基于Kibana的故障分析 267

11.4 总结 270

第12章 OpenStack基准测试与性能调优 271

12.1 OpenStack数据库瓶颈调优 272

12.1.1 数据库瓶颈根因 273

12.1.2 OpenStack中的缓存系统 273

12.1.3 Memcached在OpenStack中的应用 274

12.1.4 Memcached安装与部署 275

12.2 OpenStack基准测试 279

12.2.1 基于Rally的OpenStack API测试 280

12.2.2 实现OpenStack SLA 280

12.2.3 Rally安装与部署 281

12.2.4 Rally配置应用 282

12.2.5 测试示例—Keystone性能调优 284

12.3 基于Shaker的OpenStack网络测试 291

12.3.1 Shaker架构 292

12.3.2 Shaker安装部署 293

12.3.3 Shaker配置应用 294

12.3.4 测试示例—OpenStack L2网络调优 296

12.4 总结 302

《精通OpenStack》新书(原书翻译第二版)出版