《云计算与OpenStack(虚拟机Nova篇)》
基本信息
作者: 伯龙 程志鹏 张杰
出版社:电子工业出版社
ISBN:9787121201202
上架时间:2013-8-5
出版日期:2013 年9月
开本:16开
页码:324
版次:1-1
所属分类:计算机
内容简介
计算机书籍
《云计算与openstack(虚拟机nova篇)》通过深入剖析openstack架构的设计理念及具体实现,结合云计算管理平台建设理论,将理论与实践相结合,让读者知其然并知其所以然。
全书在组织形式上,采用简单明了的语法,段落简洁,配合大量的图文以及部分核心代码,形象地表述出技术应用原理。本文穿插了笔者团队积累的一些经验,特别是在应用篇,为不同场景下云计算落地提供了建设实践案例,这在业界是相对少见且比较全面的解决方案。
《云计算与openstack(虚拟机nova篇)》适合于it首席技术官、云计算研发和运维等相关人员阅读。
目录
《云计算与openstack(虚拟机nova篇)》
partⅰ 概念篇
第1章 云计算概述2
1.1 云计算是什么2
1.2 云计算发展现状4
1.3 云计算体系架构7
1.3.1 云计算参与者8
1.3.2 云计算部署方式11
1.4 云计算的影响13
1.4.1 云计算引发了整个it行业变革13
1.4.2 云计算对经济社会各领域带来深刻影响14
1.5 云计算商用解决方案15
1.5.1 亚马逊云计算解决方案15
1.5.2 vmware vsphere解决方案19
1.6 云计算开源解决方案openstack21
1.6.1 openstack发展历史22
1.6.2 openstack概述23
第2章 openstack安装体验及入门26
2.1 快速体验安装26
2.2 脚本安装28
.2.3 手动安装29
2.4 体验35
2.4.1 创建虚拟机36
2.4.2 添加磁盘38
2.4.3 安全和访问设置41
2.5 q&a43
2.5.1 虚拟机上是否可以安装openstack43
2.5.2 找不到安装源43
2.5.3 设置上网代理44
2.6 如何入门提升44
2.6.1 源码阅读45
2.6.2 日志分析48
2.6.3 安装问题49
partⅱ 架构篇
第3章 系统架构52
3.1 整体架构剖析52
3.2 逻辑架构57
3.2.1 逻辑概念模型59
3.2.2 逻辑模块划分60
3.3 运行架构63
3.4 开发架构66
3.5 物理架构67
第4章 功能剖析70
4.1 消息队列协议amqp70
4.2 调度器nova-scheduler74
4.2.1 过滤(filtering)76
4.2.2 权衡(weighting)78
4.3 计算资源管理80
4.3.1 kvm适配83
4.3.2 vmware适配84
4.4 存储资源管理85
4.4.1 cinder功能分析88
4.4.2 iscsi适配90
4.4.3 nfs适配93
4.5 网络资源管理94
4.5.1 ip资源管理95
4.5.2 dhcp自动分派ip95
4.5.3 网络连接管理98
4.5.4 虚拟交换机管理99
4.5.5 nat网络映射102
4.5.6 网络安全管理104
4.5.7 quantum项目介绍106
part ⅲ 实现篇
第5章 计算资源池实现剖析114
5.1 代码结构分析114
5.1.1 常用命令114
5.1.2 代码结构115
5.2 业务逻辑模型分析116
5.2.1 整体业务逻辑模型116
5.2.2 libvirt虚拟化实现模型118
5.2.3 xen api虚拟化实现模型119
5.3 数据模型分析120
5.3.1 整体数据模型120
5.3.2 虚拟机模型instances121
5.3.3 虚拟机状态122
5.4 虚拟机开通123
5.4.1 操作实现123
5.4.2 实现剖析126
5.4.3 开通虚拟机外部接口nova-api.create( )127
5.4.4 开通虚拟机内部接口compute-api.create( )128
5.4.5 计算节点部署虚拟机 compute-manager.run_instance()131
5.4.6 虚拟化适配134
5.5 虚拟机启停138
5.5.1 虚拟机关闭138
5.5.2 虚拟机启动140
5.6 在线热迁移140
5.6.1 构建nfs共享存储142
5.6.2 修改计算节点配置145
5.6.3 迁移虚拟机146
5.7 vnc控制台147
5.7.1 vnc和novnc147
5.7.2 实现剖析147
5.7.3 novnc代理的配置和部署148
5.8 安全组管理149
5.8.1 安全组数据模型150
5.8.2 安全组创建和删除151
5.9 q&a152
5.9.1 虚拟机部署异常152
5.9.2 计算节点服务不能正常启动153
5.9.3 热迁移失败154
参考文献154
第6章 存储资源池实现剖析155
6.1 代码结构分析155
6.1.1 nova-volume代码结构155
6.1.2 cinder代码结构157
6.2 业务逻辑模型分析158
6.2.1 整体模型分析158
6.2.2 卷管理类(volumemanager)159
6.2.3 iscsi实现iscsidriver160
6.3 数据库模型分析160
6.3.1 整体模型分析160
6.3.2 卷(volumes)161
6.4 创建和挂载弹性云硬盘操作实现162
6.4.1 创建云硬盘操作实现162
6.4.2 挂载云硬盘操作实现164
6.5 机架式服务器iscsi存储实现剖析165
6.5.1 lvm基本概念165
6.5.2 存储节点预处理166
6.5.3 创建云硬盘167
6.5.4 挂载云硬盘168
6.6 快照管理169
6.6.1 创建快照170
6.6.2 快照恢复171
第7章 网络资源池实现剖析173
7.1 代码结构分析173
7.1.1 nova-network代码173
7.1.2 quantum代码174
7.2 nova-network业务逻辑模型分析176
7.2.1 业务逻辑模型176
7.2.2 私网资源池管理networkmanager177
7.2.3 公网资源池管理floatingip179
7.3 nova-network数据模型分析180
7.3.1 整体模型180
7.3.2 私有网络networks181
7.3.3 私网ip地址池182
7.3.4 弹性ip地址池183
7.4 nova-network中flatdhcp模式184
7.4.1 网络部署184
7.4.2 网络连接机制剖析185
7.4.3 高可用性187
7.5 nova-network中vlan模式189
7.5.1 网络部署189
7.5.2 网络连接机制剖析190
7.5.3 高可用性191
7.6 nova-network分配私网ip地址192
7.6.1 创建私有网络192
7.6.2 分配私网fixed ip193
7.6.3 dhcp自动分配ip地址197
7.7 nova-network分配弹性ip地址199
7.7.1 操作实现200
7.7.2 实现剖析201
7.8 quantum业务逻辑模型分析203
7.8.1 quantum-server业务逻辑模型203
7.8.2 agent业务逻辑模型204
7.9 quantum数据模型分析204
7.9.1 整体数据模型204
7.9.2 quantum模型映射关系206
7.9.3 端口ports207
7.10 quantum网络模式分析208
7.10.1 扁平共享模式(flat)208
7.10.2 租户私有网络209
7.11 quantum操作实现211
第8章 glance镜像管理212
8.1 镜像功能架构213
8.1.1 逻辑架构213
8.1.2 开发架构213
8.2 业务逻辑模型分析215
8.3 数据模型分析215
8.3.1 整体模型215
8.3.2 镜像(images)216
8.3.3 镜像状态217
8.4 制作镜像218
8.4.1 制作windows 7镜像218
8.4.2 制作linux镜像222
8.4.3 上传镜像222
8.5 创建镜像实现分析224
第9章 horizon前端界面实现剖析227
9.1 什么是django227
9.2 horizon的功能和实现228
9.2.1 horizon介绍228
9.2.2 功能架构229
9.2.3 部署架构230
9.2.4 开发架构232
9.2.5 horizon和django233
9.2.6 horizon和其他模块的关系234
9.3 定制horizon235
9.3.1 修改web应用的标题235
9.3.2 修改horizon的logo235
9.3.3 修改dashboard和panel236
9.4 国际化236
第10章 keystone认证管理238
10.1 keystone架构238
10.1.1 逻辑架构238
10.1.2 开发架构239
10.2 数据模型分析241
10.2.1 整体模型241
10.2.2 用户(user)242
10.2.3 项目tenant242
10.2.4 用户项目角色关联表metadata243
10.2.5 服务service243
10.2.6 服务端endpoint243
10.3 keystone操作体验244
10.3.1 创建项目project244
10.3.2 创建用户245
10.3.3 为项目project增加新用户246
10.4 认证机制剖析247
10.4.1 curl方式创建虚拟机247
10.4.2 认证过程剖析252
10.4.3 认证获取token剖析254
10.4.4 权限判断256
10.5 q&a258
part ⅳ 应用篇
第11章 私有云平台建设262
11.1 概述262
11.2 适用场景分析263
11.2.1 选择私有云264
11.2.2 适用场景示例——服务器应用266
11.2.3 适用场景示例——桌面云应用270
11.3 建设思路274
11.3.1 建设思路转变274
11.3.2 统筹规划、分阶段建设277
11.4 建设过程277
11.4.1 网络规划及部署278
11.4.2 cpu兼容性282
11.5 案例分析283
11.6 私有云平台待完善287
11.6.1 openstack持续优化288
11.6.2 系统监控管理289
11.6.3 高可用性管理294
第12章 公有云平台建设297
12.1 谁适用公有云297
12.2 运营商建设298
12.2.1 小规模应用299
12.2.2 大规模建设300
12.3 单数据中心建设方案301
12.3.1 网络部署方案301
12.3.2 共享存储提升高可用性303
12.4 多数据中心建设方案304
12.4.1 区域zone解决方案305
12.4.2 单元cell解决方案307
后记309
- Ubuntu16手动安装OpenStack——nova篇。。转
前言: 本文转自https://www.voidking.com/dev-ubuntu16-manual-openstack-nova/ ,过程非常的详细,作者也说本实验最终失败,因为课程要求我们只要 ...
- openstack常用命令-nova篇
1.查看openstack版本 nova-manage version 2.查看节点 nova host-list 3.查看计算节点 nova hypervisor-list 4.查看计算节点上有哪些 ...
- Openstack 03 - Nova Compute
1.前言 非常早之前就開始着手写Openstack 系列的博客了,在写了总体架构和Keystone之后,准备写Nova,可是每次写到一半,自己心里就认为不踏实,由于似乎我并没有真正理解Nova,或者说 ...
- 大型网站技术学习-2. 云计算之OpenStack简述
上一章讲,虚拟化能够充分的利用资源,带来各种各样的好处. 当一个网站不大,只需要四五台机器就可以支撑的时候,可以采用手工的方式虚拟机,但是当网站流量很高,需要成千上万台机器的时候,那就非常不方便了. ...
- openstack核心组件——nova计算服务(7)
云计算openstack核心组件——nova计算服务(7) 一.nova介绍: Nova 是 OpenStack 最核心的服务,负责维护和管理云环境的计算资源.OpenStack 作为 ...
- 云计算与 OpenStack - 每天5分钟玩转 OpenStack(14)
“云计算” 算是近年来最热的词了.现在 IT 行业见面不说这三个字您都不好意思跟人家打招呼. 对于云计算,学术界有各种定义,大家有兴趣可以百度一下. CloudMan 这里主要想从技术的角度谈谈对云计 ...
- OpenStack虚拟机冷迁移与热迁移
一.虚拟机迁移分析 openstacvk虚拟机迁移分为冷迁移和热迁移两种方式. 1.1冷迁移: 冷迁移(cold migration),也叫静态迁移.关闭电源的虚拟机进行迁移.通过冷迁移,可以选择将关 ...
- OpenStack虚拟机快照和增量备份实现
1 快照的概念一般对快照的理解就是能够将系统还原到某个瞬间,这就是快照的作用.快照针对要保存的数据分为内存快照和磁盘快照,内存快照就是保存当前内存的数据,磁盘快照就是保存硬盘的数据.快照针对保存方式又 ...
- OpenStack之Nova模块
Nova简介 nova和swift是openstack最早的两个组件,nova分为控制节点和计算节点,计算节点通过nova computer进行虚拟机创建,通过libvirt调用kvm创建虚拟机,no ...
随机推荐
- 给mongodb设置密码权限
昨天装了个mongodb数据库用于测试用,装好后没有密码,现在就讲讲怎么设置密码 1.首先进入C:\mongodb\bin下面运行mongod.exe启动数据库. 2.在相同目录下启动mongo.ex ...
- mui初探笔记
/* MUI 使用说明: * * 1.每个用到mui的页面都调用下mui.init. * 2.如果需要使用大H5+对象,就写到plusReady中,如plus对象. */ '''[MUI开发注意事项] ...
- linux命令(35):head命令
1.命令格式: head [参数]... [文件]... 2.命令功能: head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行. 3.命令参数: -q 隐藏文件名 -v ...
- Django Ajax学习二之csrf跨站请求伪造
方式1 $.ajaxSetup({ data: {csrfmiddlewaretoken: '{{ csrf_token }}' }, }); 方式2 # html文件from表单中<form& ...
- BestCoder Round #86 二,三题题解(尺取法)
第一题太水,跳过了. NanoApe Loves Sequence题目描述:退役狗 NanoApe 滚回去学文化课啦! 在数学课上,NanoApe 心痒痒又玩起了数列.他在纸上随便写了一个长度为 nn ...
- GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置
GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置 前言 此篇博客主要为Pelican在Windows平台下的配置安装所写,在此过程中主要参考资料烟雨林博客.poem_of_ ...
- 使用vue2.0 vue-router vuex 模拟ios7操作
其实你也可以,甚至做得更好... 首先看一下效果:用vue2.0实现SPA:模拟ios7操作 与 通讯录实现 github地址是:https://github.com/QRL909109/ios7 如 ...
- nodejs里的express自动刷新高级篇【转载】
搬运自[简书:http://www.jianshu.com/p/2f923c8782c8]亲测可用哦! 最近在使用express框架及mongodb,由于前端和后端代码修改后都需要实现自动刷新功能,刚 ...
- linux下LD_PRELOAD的用处
linux下LD_PRELOAD的用处 在UNIX的动态链接库的世界中,LD_PRELOAD就是这样一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定义在程序运行前 ...
- shell脚本学习(六)
shell函数 注:现在是unix编程 实例: #!/bin/shdemon(){ echo "这是一个shell脚本"}demon 注: 调用是只写函数名没有() 函数的返回值 ...