第1章 OpenStack基本操作系统环境的PXE自动部署 1
1.1 PXE、Kickstart与Preseed简介 2
1.1.1 PXE简介 2
1.1.2 Kickstart与Preseed简介 2
1.2 PXE服务器的准备 2
1.2.1 选择Ubuntu操作系统 3
1.2.2 Ubuntu操作系统的基本安装与更新 3
1.3 复制Ubuntu和CentOS操作系统文件 5
1.3.1 复制Ubuntu操作系统全目录、内核与启动镜像文件 5
1.3.2 复制CentOS操作系统全目录、内核与启动镜像文件 6
1.4 PXE客户端操作系统的选择与引导过程 6
1.4.1 创建PXE 客户端导示文件 7
1.4.2 选择安装配置文件 7
1.5 CentOS宿主机的Kickstart配置文件 9
1.6 OpenStack计算节点的主机Preseed配置文件 12
1.7 使用PXE 安装CentOS 7的脚本 15
1.8 常见问题与处理 17
1.9 小结 17
1.10 参考资源 17
第2章 OpenStack与网络 18
2.1 网卡管理工具ethtool 18
2.1.1 安装与使用ethtool 18
2.1.2 网卡子接口 20
2.1.3 网卡信息文件 21
2.1.4 OpenStack:运用网卡子接口模拟多网卡 22
2.2 网桥及网桥管理工具bridge-utils 22
2.2.1 安装与使用bridge-utils 23
2.2.2 理解网桥的IP地址与虚拟机的IP地址 23
2.2.3 Ubuntu下网桥的配置文件 24
2.2.4 CentOS下网桥的配置文件 24
2.2.5 将虚拟机与某个网桥连接 24
2.3 虚拟局域网VLAN 25
2.3.1 VLAN协议802.1Q 25
2.3.2 接入端口与中继端口 26
2.3.3 VLAN管理工具vconfig 26
2.4 主机多网卡静态路由配置 28
2.5 Open vSwitch简介与实验 28
2.5.1 Open vSwitch简介 29
2.5.2 安装Open vSwitch 29
2.5.3 使用ovs-vsctl管理OVS 31
2.5.4 OVS 的数据库配置与网络配置文件的关系 33
2.5.5 设置VLAN及VLAN接口的IP地址 34
2.5.6 OVS支持OpenFlow的SDN模式 34
2.6 构建云中的网络 35
2.6.1 VLAN的优势与局限 35
2.6.2 GRE的特点 36
2.6.3 VXLAN的特点 36
2.7 Linux内核的VXLAN功能实验记录 37
2.7.1 实验环境及目标 37
2.7.2 配置与测试VXLAN 38
2.7.3 测试与结果 40
2.8 Linux内核VXLAN与Open vSwitch的结合 40
2.9 网络名字空间及网络虚拟设备 41
2.9.1 网络名字空间 41
2.9.2 网络名字空间与系统空间的数据转发 41
2.10 小结 42
2.11 参考资源 42
第3章 OpenStack基本控制服务多点部署 43
3.1 部署环境说明 43
3.2 控制节点主机环境准备 45
3.2.1 服务器硬件准备 45
3.2.2 操作系统环境准备 45
3.3 虚拟机镜像的准备 46
3.3.1 虚拟机镜像网络接口准备 46
3.3.2 虚拟机镜像NTP安装 47
3.3.3 虚拟机镜像Kilo源安装 47
3.4 OpenStack基本控制服务组件的安装与配置 48
3.4.1 OpenStack基本控制服务组件简介 48
3.4.2 MySQL服务器的安装与配置 48
3.4.3 RabbitMQ服务器的安装与配置 51
3.4.4 Keystone服务器的安装与配置 53
3.4.5 租户、用户、角色、服务端点及用户身份环境变量 55
3.4.6 决定用户操作权限的policy.json文件 56
3.4.7 Glance服务器的安装与配置 62
3.4.8 Nova API节点的安装与配置 66
3.4.9 Horizon服务器的安装与配置 71
3.5 OpenStack基本服务运行简要验证 74
3.6 小结 74
3.7 参考资源 74
第4章 nova-network多机部署及企业应用 75
4.1 nova-network多主机部署简介 75
4.2 部署环境说明 76
4.3 nova-network FlatDHCP部署模式 76
4.3.1 计算节点主机准备 77
4.3.2 安装Ubuntu操作系统 77
4.3.3 网络配置 77
4.3.4 时间服务 78
4.3.5 安装OpenStack Kilo源 78
4.3.6 软件安装 78
4.3.7 服务配置 78
4.3.8 服务启动 81
4.3.9 运行验证 81
4.4 创建并管理虚拟机 82
4.5 nova-network VLAN部署模式 88
4.6 nova-network元数据处理 89
4.6.1 元数据简要介绍 89
4.6.2 元数据请求及服务模式 89
4.6.3 元数据处理过程 90
4.7 nova-network企业应用模式调整 91
4.7.1 OpenStack企业内部应用的调整要求 91
4.7.2 nova-network的IP地址管理及流量模式 91
4.7.3 企业多点多主机nova-network部署示意图 93
4.7.4 企业内多网段与虚拟机多网卡.94
4.8 小结 95
4.9 参考资源 96
第5章 OpenStack桌面虚拟化 97
5.1 虚拟桌面协议介绍 97
5.2 免费使用的xVDI System I虚拟桌面系统 99
5.3 xVDI System I虚拟桌面系统部署 100
5.3.1 xVDI-Server镜像下载与解压.100
5.3.2 xVDI-Server软件代码、root及IP地址信息 101
5.3.3 xVDI-Server配置 101
5.3.4 xVDI-Server服务的运行状态验证 102
5.3.5 xVDI客户端的安装与使用 102
5.4 无法连接Windows虚拟机的异常处理 105
5.4.1 无法连接OpenStack中的Windows 虚拟机 105
5.4.2 Windows虚拟机运行性能表现不佳 106
5.5 小结 106
5.6 参考资源 106
第6章 OpenStack Neutron网络服务107
6.1 部署环境说明 107
6.2 Neutron组件的构成及原理 108
6.3 Neutron组件的安装 110
6.3.1 Neutron Server的安装 110
6.3.2 网络节点软件安装 114
6.3.3 计算节点Neutron Agent组件的安装 116
6.3.4 调整nova-api与计算节点的nova.conf配置文件 117
6.4 Linuxbridge VLAN/VXLAN网络模式配置 119
6.4.1 部署架构 119
6.4.2 相关配置文件说明 120
6.4.3 重启Neutron相关的服务 123
6.5 Open vSwitch GRE部署模式及相关配置文件 125
6.5.1 GRE 部署架构 125
6.5.2 创建br-ex网桥 125
6.5.3 相关配置文件说明 126
6.5.4 重启Neutron相关的服务 127
6.5.5 调整nova-api与计算节点的nova.conf配置文件 129
6.6 Neutron网络模式下元数据服务路径 131
6.7 Neutron模式下创建网络的相关操作 133
6.7.1 查看当前环境中的网络代理 134
6.7.2 创建公网与子网 135
6.8 Neutron DVR 140
6.9 参考资源 141
第7章 Neutron与SDN融合 142
7.1 广义的SDN 142
7.2 Arista 官方SDN原理图 142
7.3 实验环境说明 143
7.4 配置Arista交换机 144
7.4.1 配置交换机管理的IP 144
7.4.2 将交换机注册到CVX 中 145
7.4.3 访问交换机的API 146
7.4.4 配置交换机的中继端口 146
7.4.5 启用链路发现协议(LLDP) 146
7.4.6 配置交换机支持Neutron指令 148
7.5 配置Neutron Server 149
7.5.1 为neutron-server打补丁 149
7.5.2 配置ml2 使用Arista 驱动程序 150
7.5.3 重建neutron数据库 151
7.5.4 配置网络节点及计算节点 152
7.5.5 重启Neutron相关的服务 153
7.6 Neutron与Arista SDN联动测试 153
7.7 测试总结 156
7.8 参考资源 156
第8章 分布式存储系统 157
8.1 分布式文件系统MooseFS 157
8.1.1 MFS 的架构简介 158
8.1.2 MFS 的安装与配置 158
8.1.3 实验环境 158
8.1.4 mfs-master服务器安装 159
8.1.5 mfs-metalogger服务器的安装 161
8.1.6 mfs-chunk 服务器的安装 163
8.1.7 MFS 客户端的安装 166
8.1.8 MFS 功能测试 168
8.1.9 OpenStack计算节点集成MFS中央存储 171
8.2 GlusterFS系统安装 171
8.2.1 部署环境说明 171
8.2.2 准备GlusterFS存储节点虚拟机镜像 171
8.2.3 创建GlusterFS存储集群 173
8.2.4 创建GlusterFS存储卷 178
8.2.5 GlusterFS卷访问安全控制 181
8.2.6 安装客户端 182
8.3 Ceph系统安装 183
8.3.1 安装环境说明 184
8.3.2 准备ceph-deploy、Ceph mon及osd的虚拟机镜像 185
8.3.3 安装Ceph mon节点 187
8.3.4 增加cephmond和cephmone节点 191
8.3.5 关于mon初始成员的法定人数问题 192
8.3.6 创建Ceph osd节点集群 192
8.3.7 同步所有节点的时间 200
8.3.8 查看集群的健康状况 200
8.3.9 创建存储池 201
8.4 用户管理 202
8.5 客户端操作 203
8.6 小结 204
8.7 参考资源 204
第9章 OpenStack中央存储及虚拟机动态迁移 205
9.1 NFS中央存储模式 205
9.1.1 NetApp的NFS服务准备 205
9.1.2 计算节点客户端NFS的安装与配置 207
9.2 虚拟机动态迁移 207
9.2.1 准备要求 208
9.2.2 调整libvirt服务及nova.conf的配置 208
9.2.3 动态迁移实验 209
9.3 NFS系统的不足及pNFS的发展 210
9.3.1 NFS的不足 210
9.3.2 pNFS的发展 210
9.4 参考资源 211
第10章 Cinder卷服务 212
10.1 Cinder的安装与配置及连接Netapp存储后端 212
10.1.1 部署环境说明 212
10.1.2 Cinder服务器的安装及配置 213
10.1.3 验证服务的运行状态 216
10.1.4 创建、使用与删除卷 217
10.2 连接Gluster存储后端 220
10.2.1 实验环境说明 220
10.2.2 安装与配置Cinder及计算节点 220
10.2.3 测试Cinder、计算节点与Gluster后端的连通性 222
10.2.4 Cinder与Gluster协作测试 222
10.3 连接Ceph存储后端 224
10.3.1 实验环境说明 224
10.3.2 安装Ceph软件到相关节点.225
10.3.3 准备存储池及用户 225
10.3.4 配置计算节点 226
10.3.5 配置Cinder 227
10.3.6 验证Cinder与计算节点均可以创建卷 228
10.3.7 创建云硬盘并将其附加到虚拟机中 228
10.4 小结 229
10.5 参考资源 229
第11章 Swift存储系统部署 230
11.1 Swift系统简介及原理 230
11.1.1 Swift系统的来源 230
11.1.2 Swift系统的基本原理 230
11.2 Swift环境部署简介 232
11.3 公共服务部署与服务注册 233
11.3.1 NTP 时间安装 233
11.3.2 虚拟机镜像Kilo源安装 234
11.3.3 ssh-key生成与下发 234
11.3.4 注册Swift服务 234
11.4 account-container-server部署 235
11.4.1 网络配置 235
11.4.2 配置主机Hosts文件 236
11.4.3 服务安装 236
11.4.4 配置数据存储盘 236
11.4.5 配置rsync服务 236
11.4.6 启动rsync服务 237
11.4.7 配置account-server服务 237
11.4.8 配置container-server服务 238
11.4.9 Swift服务验证配置 239
11.4.10 修改文件夹权限 239
11.4.11 启动服务 239
11.5 object-server部署 239
11.5.1 网络配置 239
11.5.2 配置主机Hosts文件 240
11.5.3 安装服务 240
11.5.4 配置数据存储盘 240
11.5.5 配置rsync服务 241
11.5.6 启动rsync服务 241
11.5.7 配置object-server服务 242
11.5.8 Swift服务验证配置 242
11.5.9 修改文件夹权限 242
11.5.10 启动服务 243
11.6 proxy-server部署 243
11.6.1 网络配置 243
11.6.2 配置主机Hosts文件 243
11.6.3 软件安装 244
11.6.4 服务配置 244
11.6.5 Swift服务验证配置 245
11.6.6 修改文件夹权限 245
11.6.7 重启服务 245
11.7 Swift存储中使用ring文件的创建与分发 246
11.7.1 account-server中使用的ring文件的创建与同步 246
11.7.2 container-server中使用的ring文件的创建与同步 247
11.7.3 object-server中使用的ring文件的创建与同步 248
11.7.4 Swift 存储的ring文件下发 251
11.8 proxy-server双机心跳服务部署 252
11.8.1 检查proxy-server的Hosts解析 252
11.8.2 安装心跳服务 252
11.8.3 服务配置 253
11.8.4 启动心跳服务 253
11.8.5 运行验证 253
11.9 Swift验证与实践 254
11.9.1 设置身份验证的环境变量 254
11.9.2 查看Swift状态 255
11.9.3 新建容器 255
11.9.4 上传对象 255
11.9.5 删除对象 256
11.9.6 下载对象 256
11.10 Windows下Swift客户端的使用 256
11.10.1 客户端下载 256
11.10.2 客户端安装 256
11.10.3 客户端使用 257
11.10.4 通过客户端上传文件 260
11.11 Swift故障恢复 261
11.11.1 模拟object服务器数据丢失 261
11.11.2 模拟Object服务器硬盘故障 263
11.11.3 模拟object-server系统故障 265
11.12 小结 269
11.13 参考资源 269
第12章 OpenStack与Docker 270
12.1 Docker简介 270
12.2 安装与运行Docker 271
12.2.1 Docker基础安装 271
12.2.2 查找及下载Docker镜像 271
12.2.3 启动并登录Docker容器 271
12.2.4 Docker与网络名字空间 272
12.2.5 Ceph RBD存储卷持久化 274
12.3 Machine、Swarm、Compose及Flocker 276
12.4 Docker与OpenStack的融合 277
12.4.1 Machine方案 277
12.4.2 nova-docker方案 278
12.4.3 heat-docker方案 278
12.4.4 Magnum方案 279
12.5 nova-docker方案实践 279
12.5.1 novadocker的安装 280
12.5.2 配置计算节点 280
12.5.3 配置Glance 280
12.5.4 下载及上传镜像 280
12.5.5 创建虚拟机 281
12.5.6 查看网络信息 282
12.6 参考资源 283
第13章 Heat与弹性集群伸缩 284
13.1 Telemetry简介 284
13.2 Telemetry安装环境 285
13.3 Telemetry服务的安装与配置 285
13.3.1 MongoDB的安装与配置 285
13.3.2 安装Telemetry 287
13.4 Telemetry Agent安装 290
13.5 创建警告 292
13.6 Heat简介 296
13.7 Heat部署环境信息 297
13.8 Heat服务的安装与配置 297
13.8.1 创建heat数据库 297
13.8.2 向Keystone注册Heat服务 297
13.8.3 安装软件 298
13.8.4 配置服务 298
13.8.5 创建heat数据库表 299
13.8.6 启动服务 299
13.8.7 运行验证 299
13.9 创建Heat域及管理员 301
13.10 创建栈 304
13.10.1 Heat模板要素简介 304
13.10.2 第一个模板 305
13.10.3 集群的自动弹性扩展与收缩 307
13.11 参考资源 311
第14章 Sahara与弹性Hadoop集群312
14.1 Sahara简介 312
14.2 Sahara部署准备 313
14.3 Sahara部署环境设置 313
14.4 sahara-api服务的安装与配置 314
14.4.1 创建sahara数据库并注册endpoint 314
14.4.2 安装sahara-api软件 315
14.4.3 配置sahara-api 316
14.4.4 初始化表 319
14.4.5 服务启动 320
14.4.6 运行验证 320
14.5 安装sahara-dashboard 320
14.5.1 安装sahara-dashboard软件 320
14.5.2 配置sahara-dashboard 321
14.5.3 验证sahara-dashboard安装 321
14.6 预封装虚拟机镜像的下载与注册 322
14.6.1 镜像下载 322
14.6.2 向Glance服务注册镜像 323
14.6.3 向Sahara服务注册镜像 323
14.7 创建Hadoop集群 323
14.7.1 OpenStack基本环境检查 323
14.7.2 创建Hadoop集群 324
14.8 查看创建完成的集群 330
14.8.1 登录到namenode查看集群配置信息 330
14.8.2 通过Web访问namenode来查看集群配置信息 331
14.9 故障处理 332
14.10 参考资源 334
第15章 OpenStack与VMware虚拟机迁移 335
15.1 实验环境 335
15.2 将VMware ESXi平台的虚拟机迁移至OpenStack 平台 335
15.2.1 迁移Ubuntu Server 14.04虚拟机 335
15.2.2 迁移CentOS 6.5虚拟机 338
15.2.3 迁移Windows Server 2008 R2虚拟机 341
15.3 将OpenStack 平台的虚拟机迁移至VMware ESXi 平台 347
15.3.1 迁移Ubuntu Server 14.04虚拟机 347
15.3.2 迁移CentOS 6.5 虚拟机 354
15.3.3 迁移Windows Server 2008虚拟机 355
15.4 小结 357
15.5 参考资源 358
· · · · · · (
收起)