工业和信息化精品系列教材——云计算技术

OpenStack云计算平台实战(微课版)

以Train版本为基础,覆盖了OpenStack从学习方法到设计与实现等各个方面的内容,微课版云计算教材
分享 推荐 0 收藏 32 阅读 1.3K
赵德宝 , 钟小平 (主编) 涂刚 , 季丹 , 吕良 (副主编)

关于本书的内容有任何问题,请联系 初美呈

项目任务式式结构,每个项目通过学习目标明确教学任务
CentOS 7上部署和运维 OpenStack为例进行讲解,在OpenStack Train发行版本
PPT+微课视频+教案+大纲+教学进度表
注重系统架构解析和实验操作

内容摘要

本书系统讲解 OpenStack 云计算平台的安装、配置、管理和运维方法,全书共 9 个项目,内容包括OpenStack 安装、OpenStack 快速入门、OpenStack 基础环境配置与API 使用、OpenStack 身份管理、OpenStack镜像管理与制作、OpenStack 虚拟机实例管理、OpenStack 网络管理、OpenStack 存储管理,以及手动部署OpenStack 的综合演练。本书内容丰富,结构清晰,重点突出,难点分散,注重实践性和可操作性,项目中的每个任务都有相应的操作示范,并穿插大量实例,便于读者快速上手。
本书可作为高职、高专院校计算机专业课程的教材,也适合软件开发人员、IT 实施和运维工程师学习OpenStack 云计算技术使用,还可作为相关行业的培训教材。

目录

项目一
OpenStack安装 1
学习目标 1
项目描述 1
任务一 了解云计算 1
任务说明 1
知识引入 1
1.什么是虚拟化 1
2.什么是云计算 2
3.云计算架构 2
4.云计算部署模式 3
5.裸金属云 3
任务实现 3
1.了解商用云计算平台 3
2.了解开源云计算平台 4
任务二 了解OpenStack项目 4
任务说明 4
知识引入 5
1.什么是OpenStack 5
2.OpenStack项目及其组成 5
3.OpenStack版本演变 7
4.OpenStack基金会与社区 8
任务实现 8
1.了解OpenStack应用场景 8
2.调查国内的OpenStack应用现状 9
任务三 理解OpenStack架构 10
任务说明 10
知识引入 11
1.OpenStack的设计基本原则 11
2.OpenStack的概念架构 11
3.OpenStack的逻辑架构 12
4.OpenStack组件之间的通信机制 13
5.OpenStack的物理部署架构 13
6.OpenStack的物理网络类型 14
任务实现 15
1.了解基于OpenStack构建云平台的问题 15
2.了解部署OpenStack的技术需求 15
任务四 部署与安装OpenStack 15
任务说明 15
知识引入 16
1.运行OpenStack的操作系统平台 16
2.OpenStack部署拓扑 16
3.OpenStack部署工具 16
任务实现 18
1.准备OpenStack安装环境 18
2.准备所需的软件库 20
3.安装Packstack安装器 20
4.运行Packstack安装OpenStack 21
项目实训 24
项目实训一 调查移动云的现状 24
实训目的 24
实训内容 24
项目实训二 使用Packstack安装器安装一体化OpenStack
云平台 24
实训目的 24
实训内容 24
项目总结 24

项目二
OpenStack快速入门 25
学习目标 25
项目描述 25
任务一 熟悉OpenStack图形界面操作 25
任务说明 25
知识引入 25
1.Horizon项目 25
2.Horizon与Django框架 26
3.Horizon功能架构 26
4.项目与用户 27
任务实现 27
1.访问OpenStack主界面 27
2.访问“项目”仪表板 30
3.访问“管理员”仪表板 30
4.访问“身份管理”仪表板 31
5.访问“设置”仪表板 32
6.自定义仪表板和面板 32
任务二 创建和操作虚拟机实例 33
任务说明 33
知识引入 34
1.创建虚拟机实例的前提条件 34
2.虚拟机实例与镜像 34
任务实现 34
1.准备镜像 34
2.查看实例类型 37
3.查看网络 37
4.添加安全组规则 37
5.添加密钥对 39
6.创建虚拟机实例 40
7.操作和使用虚拟机实例 43
任务三 实现虚拟机与外部网络的通信 45
任务说明 45
知识引入 46
1.OpenStack的虚拟网络 46
2.浮动IP地址 46
任务实现 46
1.将OpenStack主机网卡添加到br-ex网桥上 46
2.调整网络配置 49
3.为虚拟机实例分配浮动IP地址 52
4.在Linux计算机上通过SSH访问虚拟机实例 54
5.在Windows计算机上通过SSH访问虚拟机实例 55
6.为虚拟机实例设置用户账户和密码 57
项目实训 58
项目实训一 练习OpenStack图形界面操作 58
实训目的 58
实训内容 58
项目实训二 创建和测试Fedora虚拟机实例 59
实训目的 59
实训内容 59
项目实训三 开通虚拟机实例的外部通信 59
实训目的 59
实训内容 59
项目实训四 在Windows计算机中通过SSH证书登录Fedora
虚拟机实例 59
实训目的 59
实训内容 59
项目总结 59

项目三
OpenStack基础环境配置与API使用 60
学习目标 60
项目描述 60
任务一 了解OpenStack基础环境配置 60
任务说明 60
知识引入 60
1.数据库服务器 60
2.消息队列服务 61
任务实现 62
1.验证SQL数据库 62
2.操作SQL数据库 64
3.验证NoSQL数据库 66
4.验证RabbitMQ 66
5.操作RabbitMQ 66
任务二 了解并使用OpenStack API 67
任务说明 67
知识引入 67
1.什么是RESTful API 67
2.OpenStack的RESTful API 68
3.OpenStack的认证与API请求流程 69
4.调用OpenStack API的方式 69
任务实现 70
1.获取OpenStack认证令牌 70
2.向OpenStack云平台发送API请求 72
任务三 使用OpenStack命令行客户端 73
任务说明 73
知识引入 74
1.为什么要使用命令行操作OpenStack 74
2.进一步了解OpenStack客户端 74
3.openstack命令的语法 74
4.执行openstack命令所需的认证 75
任务实现 75
1.云管理员通过openstack命令管理OpenStack云平台 75
2.普通云用户通过openstack命令使用OpenStack云服务 76
项目实训 77
项目实训一 使用cURL命令获取实例列表 77
实训目的 77
实训内容 77
项目实训二 使用openstack命令创建Fedora虚拟机实例 77
实训目的 77
实训内容 77
项目总结 77

项目四
OpenStack身份管理 78
学习目标 78
项目描述 78
任务一 理解身份服务 78
任务说明 78
知识引入 78
1.Keystone的基本概念 78
2.Keystone的主要功能 79
3.Keystone的管理层次结构 80
4.Keystone的认证流程 80
任务实现 82
1.查看当前的Identity API版本 82
2.通过API请求认证令牌 82
3.使用认证令牌通过API进行身份管理操作 84
任务二 管理项目、用户和角色 85
任务说明 85
知识引入 85
1.进一步了解项目、用户和角色 85
2.命令行的身份管理用法 86
3.专用的服务用户 87
任务实现 87
1.管理项目 87
2.管理用户 89
3.管理角色 91
4.查看服务的API端点 91
5.使用命令行进行身份管理操作 91
任务三 通过oslo.policy库实现权限管理 94
任务说明 94
知识引入 94
1.OpenStack的oslo.policy库 94
2.policy.json文件的语法 94
任务实现 95
1.编写简单的policy.json策略 95
2.解读policy.json策略 95
项目实训 97
项目实训一 通过图形界面管理项目、用户和角色 97
实训目的 97
实训内容 97
项目实训二 通过命令行管理项目、用户和角色 97
实训目的 97
实训内容 97
项目总结 97

项目五
OpenStack镜像管理与制作 98
学习目标 98
项目描述 98
任务一 理解OpenStack镜像服务 98
任务说明 98
知识引入 98
1.什么是镜像 98
2.什么是镜像服务 99
3.Glance架构 99
任务实现 100
1.查看Glance配置文件 100
2.验证Glance服务 101
3.试用镜像服务的API 101
任务二 管理OpenStack镜像 102
任务说明 102
知识引入 102
1.虚拟机镜像的磁盘格式和容器格式 102
2.镜像的状态 103
3.镜像的访问权限 103
4.镜像的元数据 104
5.命令行的镜像管理方法 104
任务实现 105
1.获取镜像 105
2.查看镜像 106
3.创建镜像 107
4.管理镜像 108
5.转换镜像格式 109
任务三 基于预制镜像定制OpenStack镜像 110
任务说明 110
知识引入 110
1.什么是cloud-init 110
2.什么是实例快照 110
任务实现 111
1.通过预制的OpenStack镜像创建一个虚拟机实例 111
2.对实例进行定制 111
3.定制cloud-init初始化行为 112
4.为上述实例创建快照 112
5.测试实例快照 113
6.将实例快照转换成镜像 114
任务四 使用自动化工具制作OpenStack镜像 115
任务说明 115
知识引入 115
1.Diskimage-builder工具 115
2.其他自动化镜像生成工具 115
任务实现 116
1.安装Diskimage-builder 116
2.熟悉Diskimage-builder的用法 116
3.使用Diskimage-builder自动构建Ubuntu操作系统镜像 117
任务五 手动制作OpenStack镜像 119
任务说明 119
知识引入 119
1.手动制作镜像 119
2.KVM虚拟化工具 119
3.KVM虚拟磁盘(镜像)文件格式 120
4.VirtIO驱动程序与Cloudbase-init 120
任务实现 121
1.部署KVM 121
2.手动创建Windows Server 2012 R2操作系统镜像 121
3.测试Windows Server 2012 R2操作系统镜像 126
4.测试Cloudbase-init初始化设置 127
5.解决Windows虚拟机实例时间不同步问题 128
项目实训 129
项目实训一 通过命令行界面完成镜像的基本操作 129
实训目的 129
实训内容 129
项目实训二 基于预制镜像定制Ubuntu操作系统云镜像 129
实训目的 129
实训内容 130
项目总结 130

项目六
OpenStack虚拟机实例
管理 131
学习目标 131
项目描述 131
任务一 理解OpenStack计算服务 131
任务说明 131
知识引入 131
1.什么是Nova 131
2.Nova所用的虚拟化技术 132
3.Nova的系统架构 133
4.虚拟机实例化流程 133
任务实现 134
1.验证Nova服务 134
2.试用计算服务的API 134
任务二 创建和管理虚拟机实例 136
任务说明 136
知识引入 136
1.nova-api服务 136
2.nova-scheduler服务 136
3.nova-compute服务 138
4.nova-conductor服务 139
5.Nova计算服务与Placement放置服务 140
6.镜像和实例的关系 140
7.命令行的实例创建用法 141
8.命令行的实例管理用法 142
任务实现 143
1.生成密钥对 143
2.添加安全组规则 144
3.管理实例类型 144
4.创建实例 146
5.创建实例排错 146
6.管理虚拟机实例 147
7.访问虚拟机实例 147
任务三 注入元数据实现虚拟机实例个性化配置 148
任务说明 148
知识引入 148
1.元数据注入 148
2.元数据服务机制 149
3.配置驱动器机制 150
4.进一步了解cloud-init 150
任务实现 151
1.向虚拟机实例注入用户数据 151
2.设置虚拟机实例的元数据(属性) 153
3.验证元数据服务机制 153
4.验证配置驱动器机制 155
任务四 增加一个计算节点 156
任务说明 156
知识引入 156
1.Nova的物理部署 156
2.Nova的部署模式 156
任务实现 157
1.准备双节点OpenStack云平台安装环境 157
2.编辑应答文件 157
3.使用修改过的应答文件运行Packstack安装器 158
4.验证双节点部署 158
任务五 迁移虚拟机实例 160
任务说明 160
知识引入 161
1.什么是实例冷迁移 161
2.什么是实例热迁移 161
3.热迁移命令行用法 161
任务实现 162
1.在计算节点之间配置SSH无密码访问 162
2.执行实例的冷迁移操作 162
3.实现热迁移的通用配置 164
4.执行实例的热迁移操作 165
项目实训 167
项目实训一 使用命令行创建Fedora虚拟机实例并注入用户密码 167
实训目的 167
实训内容 167
项目实训二 增加一个计算节点并进行实例冷迁移 167
实训目的 167
实训内容 167
项目总结 167

项目七
OpenStack网络管理 168
学习目标 168
项目描述 168
任务一 了解OpenStack网络服务 168
任务说明 168
知识引入 168
1.Neutron项目 168
2.Neutron架构 169
3.Neutron网络基本结构 170
任务实现 170
1.验证网络服务 170
2.验证网络结构 170
3.试用网络服务的API 171
任务二 理解OpenStack网络资源模型 172
任务说明 172
知识引入 172
1.Neutron的网络 172
2.提供者网络 173
3.自服务网络 174
4.Neutron的子网 175
5.Neutron的端口 176
6.Neutron的路由器 176
7.网络管理的命令行基本用法 177
任务实现 178
1.验证网络资源模型 178
2.提供者网络实例分析 181
3.自服务网络实例分析 182
任务三 理解OpenStack网络服务的实现机制 183
任务说明 183
知识引入 184
1.Neutron服务与组件的层次结构 184
2.neutron-server 184
3.插件与代理架构 185
4.ML2插件 185
5.L2代理 186
6.Open vSwitch代理 187
7.L3代理 188
8.DHCP代理 190
9.元数据代理 190
任务实现 190
了解OpenStack网络服务的物理部署 190
任务四 掌握OpenStack网络服务与OVN的集成 191
任务说明 191
知识引入 191
1.什么是OVN 191
2.OVN架构和实现机制 192
3.OpenStack Neutron与OVN集成 193
4.集成OVN的Neutron网络服务部署 194
任务实现 195
1.验证集成OVN的网络服务部署 195
2.查看集成OVN的网络服务配置 197
项目实训 198
项目实训一 验证OpenStack网络资源模型 198
实训目的 198
实训内容 198
项目实训二 整理OpenStack网络端口管理的命令行用法 199
实训目的 199
实训内容 199
项目实训三 验证OVN网络的部署和配置 199
实训目的 199
实训内容 199
项目总结 199

项目八
OpenStack存储管理 200
学习目标 200
项目描述 200
任务一 理解OpenStack块存储服务 200
任务说明 200
知识引入 201
1.Cinder的主要功能 201
2.Cinder与Nova的交互 201
3.Cinder架构 201
4.Cinder创建卷的基本流程 202
任务实现 203
1.验证Cinder服务 203
2.试用Cinder的API 203
任务二 创建和管理卷 204
任务说明 204
知识引入 205
1.cinder-api服务 205
2.cinder-scheduler服务 205
3.cinder-volume服务 206
4.cinder-backup服务 208
5.Cinder服务的部署 208
6.卷操作的命令行基本用法 208
任务实现 210
1.查看卷服务分布和运行情况 210
2.查看存储后端配置 210
3.查看卷 210
4.创建与删除卷 211
5.连接与分离卷 212
6.扩展卷 212
7.创建卷快照 213
8.设置可启动卷 214
9.更改卷的卷类型 214
10.管理卷类型 214
任务三 了解Swift对象存储服务 215
任务说明 215
知识引入 215
1.Swift对象存储系统 215
2.Swift的应用场景 216
3.对象的层次数据模型 216
4.对象层级结构与对象存储API的交互 216
5.对象存储的组件 217
6.Swift架构 218
任务实现 220
1.验证Swift服务 220
2.查看Swift环文件 222
项目实训 223
项目实训一 使用命令行创建和管理卷 223
实训目的 223
实训内容 223
项目实训二 验证Cinder和Swift服务 223
实训目的 223
实训内容 223
项目总结 223

项目九
综合演练——手动部署OpenStack 224
学习目标 224
项目描述 224
任务一 OpenStack云部署规划 224
任务说明 224
知识引入 224
1.架构设计 224
2.虚拟网络方案设计 225
3.实例示例的网络拓扑 227
4.实例示例架构的局限性 227
任务实现 227
1.确定云部署目标 227
2.设计云部署架构 228
3.OpenStack账户密码约定 228
任务二 OpenStack云平台环境配置 229
任务说明 229
任务实现 229
1.准备两个节点主机 229
2.配置节点主机网络 230
3.设置时间同步 231
4.安装OpenStack软件包 231
5.安装SQL数据库 232
6.安装消息队列服务 233
7.安装Memcached服务 233
8.安装Etcd 234
任务三 安装和部署Keystone身份服务 234
任务说明 234
知识引入 235
1.keystone-manage命令 235
2.其他服务在Keystone中的注册 235
任务实现 235
1.创建Keystone数据库 235
2.安装和配置Keystone及相关组件 236
3.配置Apache HTTP服务器 237
4.完成Keystone安装 237
5.创建域、项目、用户和角色 237
6.验证Keystone服务的安装 239
7.创建OpenStack客户端环境脚本 239
任务四 安装和部署Glance镜像服务 240
任务说明 240
任务实现 240
1.完成Glance的安装准备 240
2.安装和配置Glance组件 241
3.完成Glance服务的安装 242
4.验证Glance镜像操作 242
任务五 安装和部署Placement放置服务 242
任务说明 242
任务实现 242
1.完成放置服务安装的前期准备 242
2.安装和配置放置服务组件 243
3.完成放置服务安装 244
4.验证放置服务安装 244
任务六 安装和部署Nova计算服务 245
任务说明 245
知识引入 245
1.Nova的Cell架构 245
2.Cell部署 246
3.Cell管理命令 247
任务实现 247
1.在控制节点上完成Nova的安装准备 247
2.在控制节点上安装和配置Nova组件 248
3.在控制节点上完成Nova安装 250
4.在计算节点上安装和配置Nova组件 250
5.在计算节点上完成Nova安装 252
6.将计算节点添加到cell数据库 252
7.验证Nova计算服务的安装 252
任务七 安装和部署Neutron网络服务 253
任务说明 253
任务实现 253
1.在控制节点上完成网络服务的安装准备 253
2.在控制节点上配置网络选项 254
3.在控制节点上配置元数据代理 257
4.在控制节点上配置计算服务使用网络服务 258
5.在控制节点上完成网络服务安装 258
6.在计算节点上安装Neutron组件 258
7.在计算节点上配置网络通用组件 258
8.在计算节点上配置网络选项 259
9.在计算节点上配置计算服务使用网络服务 259
10.在计算节点上完成网络服务安装 260
11.验证网络服务运行 260
12.创建初始网络 260
13.验证网络操作 261
14.基于提供者网络启动实例 262
任务八 安装和部署Horizon仪表板 263
任务说明 263
任务实现 263
1.安装和配置Horizon组件 263
2.完成Horizon安装 264
3.验证仪表板操作 264
任务九 安装和部署Cinder块存储服务 266
任务说明 266
任务实现 266
1.在控制节点上完成Cinder的安装准备 266
2.在控制节点上安装和配置Cinder组件 267
3.在控制节点上配置计算服务使用块存储服务 267
4.在控制节点上完成Cinder安装 268
5.在存储节点上完成Cinder的安装准备 268
6.在存储节点上安装和配置Cinder组件 269
7.在存储节点上完成Cinder安装 270
8.验证Cinder服务操作 270
项目实训 270
项目实训一 搭建OpenStack云平台基础环境 270
实训目的 270
实训内容 271
项目实训二 安装Keystone身份服务 271
实训目的 271
实训内容 271
项目实训三 安装Glance镜像服务 271
实训目的 271
实训内容 271
项目实训四 安装Nova计算服务 271
实训目的 271
实训内容 271
项目实训五 安装Neutron网络服务 271
实训目的 271
实训内容 272
项目总结 272

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

赵德宝,男,副教授、高级工程师,硕士学位。长期从事计算机网络、云计算等相关专业课程教学与研究。担任主编教材2部《网络设备配置与调试》、《ASP动态网页设计》;担任副主编教材《SQL Server 2012数据库应用教程》、《计算机网络项目教程》等3部。主持湖北省教育厅科技处项目并结题1项,参与省级课题2项;公开发表论文7篇;授权实用新型专利4个,取得软件著作权2个;作为第一指导老师指导学生参加2019年全国职业技能大赛云计算赛项获团体三等奖,省市级大赛荣获20余项荣誉。2019年世界技能大赛武汉市选拔赛云计算赛项优秀教练;2019年湖北“工匠杯”优秀指导老师;第46届世界技能大赛湖北省选拔赛云计算赛项裁判员;2021全国职业技能大赛网络搭建与应用赛项(中职组)裁判员。
钟小平 长期从事信息技术研究、教学、软件开发和技术支持工作。近年来著有《网络服务器配置与应用》《网络拓展配置与管理》《网络服务器配置完全手册》《网络操作系统——Windows Server 2012 R2配置与管理》和《Ubuntu Linux操作系统》等技术图书和高校教材。

同系列书

相关图书

联系客服
联系客服
人邮微信
人邮微信
微信二维码
返回顶部
返回顶部