OpenStack开源云王者归来:云计算、虚拟化、Nova、Swift、Quantum与Hadoop
正版保障 假一赔十 可开发票
¥
62.04
6.2折
¥
99.8
全新
仅1件
作者戢友编著
出版社清华大学出版社
ISBN9787302367000
出版时间2013-04
装帧平装
开本16开
定价99.8元
货号8277694
上书时间2024-12-16
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
戢友,毕业于华东师范大学。计算机应用技术硕士。研究方向为机器学习与模式识别。现就职于英特尔亚太研发有限公司,从事OpenStack与云计算的研发工作。对云计算、云存储、大数据和分布式系统有强烈的兴趣和较长时间的研究。
目录
第1篇 基 础 篇
第1章 OpenStack概述2
1.1 云计算简介2
1.1.1 什么是云计算2
1.1.2 什么是云存储3
1.1.3 私有云与公有云4
1.2 为什么使用云计算5
1.2.1 方案1:简单的服务部署5
1.2.2 方案2:分布式服务部署6
1.2.3 方案3:基于虚拟化的服务部署8
1.2.4 方案4:云计算的解决方案11
1.3 OpenStack架构13
1.3.1 OpenStack与云计算13
1.3.2 OpenStack发展与现状13
1.3.3 OpenStack优势14
1.3.4 OpenStack学习建议15
1.4 OpenStack各个组件及功能16
1.4.1 虚拟机管理系统Nova16
1.4.2 磁盘存储系统Glance与Swift17
1.4.3 虚拟网络管理Quantum18
1.4.4 OpenStack三大组件18
1.5 小结19
第2章 虚拟化技术20
2.1 虚拟化技术简介20
2.1.1 KVM20
2.1.2 Xen21
2.1.3 Libvirt22
2.2 安装Libvirt虚拟化工具22
2.2.1 安装KVM22
2.2.2 安装Libvirt24
2.3 虚拟机配置文件详解25
2.3.1 xml描述hypervisor26
2.3.2 虚拟机整体信息28
2.3.3 系统信息29
2.3.4 硬件资源特性29
2.3.5 突发事件处理30
2.3.6 raw格式image30
2.3.7 qcow2格式image31
2.3.8 格式的选择34
2.3.9 多个image35
2.3.10 虚拟光盘36
2.3.11 虚拟网络36
2.3.12 vnc配置39
2.4 制作image39
2.4.1 virt-manager创建image40
2.4.2 virsh命令创建image44
2.5 快速启动虚拟机47
2.5.1 手动安装47
2.5.2 直接复制47
2.5.3 qcow2快速创建48
2.5.4 修改qcow2 image49
2.5.5 大批量创建虚拟机52
2.6 虚拟机桌面显示57
2.6.1 准备工作58
2.6.2 创建Windows 7 Image58
2.6.3 创建Windows 7虚拟机60
2.6.4 spice桌面显示61
2.7 常见错误与分析62
2.8 小结63
2.8.1 常用的virsh命令63
2.8.2 磁盘快照管理66
第2篇 安 装 篇
第3章 安装Keystone安全认证服务70
3.1 Keystone简介70
3.2 搭建局域网源71
3.2.1 局域网apt-get源搭建方法71
3.2.2 局域网python源搭建方法72
3.2.3 Ubuntu-12.10局域网源74
3.3 搭建MySQL数据库74
3.3.1 apt-get安装MySQL74
3.3.2 源码安装MySQL78
3.4 安装RabbitMQ消息通信服务80
3.5 安装Keystone81
3.5.1 python源码包的安装81
3.5.2 Keystone自动化安装83
3.5.3 Keystone客户端使用及测试91
3.5.4 Keystone的管理92
3.6 常见错误与分析94
3.6.1 无法下载python依赖包95
3.6.2 Keystone命令运行失败95
3.7 小结96
第4章 安装Swift存储服务97
4.1 Swift基本概念97
4.1.1 Swift的特性97
4.1.2 Swift的架构98
4.1.3 Swift的故障处理99
4.1.4 Swift的集群部署100
4.2 搭建环境101
4.2.1 准备工作101
4.2.2 创建Proxy Node102
4.2.3 创建Storage Node102
4.3 安装Proxy服务102
4.3.1 解决依赖关系103
4.3.2 注册Swift服务104
4.3.3 配置Proxy服务105
4.3.4 启动Proxy服务108
4.4 安装存储服务109
4.4.1 磁盘格式化110
4.4.2 同步服务112
4.4.3 子服务113
4.4.4 启动存储服务115
4.5 管理存储服务116
4.5.1 使用存储服务116
4.5.2 删除存储节点117
4.5.3 添加存储节点117
4.5.4 添加Proxy节点118
4.6 常见错误及分析118
4.6.1 Keystone注册用户失败118
4.6.2 Proxy服务无法正常启动119
4.6.3 存储服务无法使用119
4.7 小结121
4.7.1 安装Proxy Node121
4.7.2 安装Storage Node122
第5章 安装Glance镜像服务123
5.1 Glance简介123
5.2 Glance服务的安装123
5.2.1 解决依赖关系124
5.2.2 注册Glance服务至Keystone124
5.2.3 Glance源码包的安装126
5.3 Glance服务的配置127
5.3.1 Glance服务的基本配置127
5.3.2 使用文件系统存储镜像128
5.3.3 使用Swift对象存储服务存储镜像130
5.3.4 上传复杂的磁盘镜像131
5.3.5 上传磁盘镜像参考脚本133
5.4 Glance自动化安装133
5.5 常见错误分析134
5.5.1 上传磁盘镜像中断的解决方案134
5.5.2 openssl出错135
5.5.3 上传大磁盘镜像的方法135
5.6 小结136
第6章 安装Quantum虚拟网络服务137
6.1 Open vSwitch虚拟交换机137
6.1.1 Open vSwitch简介137
6.1.2 GRE隧道模式138
6.1.3 VLAN模式142
6.2 解决依赖关系145
6.3 注册Quantum服务至Keystone146
6.4 安装Quantum服务147
6.4.1 源码安装Quantum148
6.4.2 Quantum Server的配置149
6.4.3 配置OVS agent151
6.4.4 配置dhcp agent152
6.4.5 配置l3 agent152
6.5 Quantum自动化安装153
6.6 Quantum服务使用及测试154
6.6.1 创建内部网络154
6.6.2 创建外部网络155
6.7 常见错误与分析156
6.7.1 虚拟机之间无法通信156
6.7.2 dhcp和agent服务启动警告156
6.8 小结157
6.8.1 Open vSwitch的使用157
6.8.2 Quantum的安装157
第7章 安装Cinder块存储服务159
7.1 Cinder基本概念159
7.1.1 Cinder的特性159
7.1.2 Cinder的架构160
7.1.3 Cinder架构的优缺点162
7.2 搭建环境163
7.2.1 准备工作163
7.2.2 创建API Node163
7.2.3 创建Volume存储节点164
7.3 安装Cinder API服务164
7.3.1 解决依赖关系164
7.3.2 注册Cinder服务至Keystone165
7.3.3 配置MySQL服务167
7.3.4 修改配置文件168
7.3.5 运行Cinder API服务169
7.4 安装Cinder Volume服务170
7.4.1 准备工作170
7.4.2 启动Volume服务171
7.5 参考部署171
7.5.1 单节点部署171
7.5.2 多节点部署177
7.6 常见错误及分析180
7.6.1 虚拟机之间无法通信180
7.6.2 cinder客户端命令执行失败182
7.6.3 没有额外分区182
7.7 小结183
7.7.1 安装Cinder API Node183
7.7.2 安装Cinder Volume Node183
第8章 安装Nova虚拟机管理系统184
8.1 Nova基本概念184
8.1.1 Nova的特性184
8.1.2 Nova的架构186
8.1.3 Nova架构的优缺点189
8.2 搭建环境189
8.2.1 准备工作189
8.2.2 创建节点191
8.3 安装Nova API服务191
8.3.1 准备工作192
8.3.2 解决依赖关系194
8.3.3 注册Nova服务195
8.3.4 配置MySQL服务196
8.3.5 修改Nova配置文件197
8.4 安装Nova Compute服务199
8.4.1 准备工作199
8.4.2 解决依赖关系200
8.4.3 配置文件201
8.4.4 启动服务201
8.4.5 检查服务202
8.5 参考部署202
8.5.1 单节点部署203
8.5.2 多节点部署205
8.6 客户端使用207
8.6.1 环境变量208
8.6.2 创建虚拟机208
8.7 小结209
8.7.1 安装Nova API Node209
8.7.2 安装Nova Compute Node210
第9章 安装Dashboard Web界面211
9.1 Dashboard简介211
9.2 Dashboard的安装211
9.2.1 解决依赖关系212
9.2.2 源码安装Horizon213
9.3 Dashboard的配置214
9.3.1 local_settings.py文件的配置214
9.3.2 secret_key.py文件的修改215
9.3.3 Apache2的配置216
9.3.4 vncproxy的配置217
9.4 Dashboard自动化安装218
9.5 Web界面使用及测试219
9.5.1 登录Dashboard219
9.5.2 使用Dashboard上传镜像221
9.5.3 使用Dashboard创建网络222
9.5.4 使用Dashboard创建虚拟机223
9.6 常见错误分析224
9.7 小结225
第10章 OpenStack部署示例226
10.1 OpenStack单节点部署226
10.1.1 单节点部署的特点226
10.1.2 准备工作227
10.1.3 系统初始化配置229
10.1.4 安装OpenStack各组件229
10.2 OpenStack多节点部署237
10.2.1 多点部署特点237
10.2.2 部署流程239
10.3 OpenStack实用部署249
10.3.1 实用部署特点249
10.3.2 部署流程251
10.4 常见错误及分析255
10.4.1 eth1网卡无法使用256
10.4.2 自建源无法使用256
10.4.3 客户端命令执行失败256
10.5 小结257
10.5.1 单节点安装257
10.5.2 多节点安装257
10.5.3 实用安装257
第3篇 剖 析 篇
第11章 OpenStack服务分析260
11.1 RESTful API简介260
11.2 搭建RESTful API261
11.2.1 一个简单的WSGI服务262
11.2.2 使用PasteDeploy定制WSGI服务262
11.2.3 带过滤器的WSGI服务264
11.2.4 利用类来实现过滤器和应用266
11.2.5 实现WSGI服务的URL映射268
11.3 基于消息通信的RPC调用274
11.3.1 AMQP简介275
11.3.2 RabbitMQ分析276
11.3.3 RPC调用的实现278
11.4 小结290
11.4.1 RESTful API290
11.4.2 RPC调用291
第12章 Keystone的安全认证292
12.1 Keystone框架结构293
12.1.1 Keystone服务端架构293
12.1.2 Keystone客户端架构300
12.2 用户管理303
12.2.1 用户认证303
12.2.2 本地认证310
12.2.3 用户信息的维护313
12.3 多租户机制315
12.3.1 租户管理316
12.3.2 角色管理317
12.3.3 权限管理318
12.4 Token管理322
12.4.1 Token认证方式322
12.4.2 Token的存储325
12.5 服务的安全认证326
12.6 OpenStack各个模块与Keystone的交互329
12.7 小结335
12.7.1 Keystone服务器端架构335
12.7.2 客户端发送HTTP请求流程335
12.7.3 用户认证335
12.7.4 访问OpenStack服务的流程336
第13章 Swift存储服务337
13.1 Swift框架概述337
13.2 问题描述338
13.3 炮灰方法339
13.4 快拳方法339
13.4.1 算法原理339
13.4.2 算法实现340
13.4.3 算法分析341
13.4.4 算法破绽342
13.5 太极拳344
13.5.1 算法原理344
13.5.2 算法实现347
13.5.3 算法分析348
13.5.4 算法升级349
13.5.5 算法破绽351
13.6 虚实相生352
13.6.1 算法原理352
13.6.2 算法实现354
13.6.3 算法分析355
13.6.4 算法升级357
13.6.5 算法分析361
13.7 扩展364
13.7.1 映射中的动与不动365
13.7.2 虚节点
内容摘要
【前言】
为什么要写这本书
云计算已经从概念走向现实,从讨论走向实践。各种各样的云计算平台也层出不穷,基于云计算的应用也不断推出。相对于天价的商业云计算软件,众多的云计算爱好者和公司开始考虑一种易用的开源云计算软件。开源云OpenStack正是在这样的环境下诞生的。在OpenStack诞生之前也有很多的开源云软件,但是OpenStack却成为了当下最热门的开源云平台。这主要得益于OpenStack的优秀特性:灵活的结构、巧妙的模块化设计及极强的扩展性能。但是,OpenStack的入门却有着不低的门槛。除了技术本身的障碍之外,眼花缭乱的安装部署方式、尚待完善的官方文档、良莠不齐的技术博客、炒作概念的各种讨论会等,让希望了解开源云OpenStack的人望而却步。此外,OpenStack版本升级较快,模块变化较大,也给很多研究人员带了很重的学习负担。本书以实践为宗旨,由浅入深,从入门到精通,一点一滴地介绍了OpenStack的核心技术。
本书以OpenStack Grizzly版本为基础,详细介绍了OpenStack的几个方面:云计算技术的基础、集群搭建、组件剖析及扩展开发。阅读完本书后,读者能够掌握OpenStack实现的技术细节与设计思想,并且将这些技术灵活地运用在云计算的开发中。理解了OpenStack的精髓,无论OpenStack更新到何种版本,学习起来都会游刃有余。
本书有何特色
1.讲解了云计算入门所需的虚拟化技术
为了将读者带入云计算的领域,虚拟化技术是一个绕不开的坎。作者专门介绍了OpenStack用到的虚拟化技术,并编写了大量的实例、程序及脚本供读者参考。
2.涵盖OpenStack大部分组件
本书涵盖了MySQL、RabbitMQ、Keystone、Swift、Glance、Cinder、Quantum、Nova和Dashboard重要组件的安装。每一种组件的安装都单独成一个模块,并且介绍了这些组件之间安装部署的相互依赖关系。此外,还提供了多种多样的参考部署方式。通过安装篇提供安装脚本,读者只需要简单地配置,便可以快速地部署相应的服务。此外,本书对OpenStack用到的关键技术和重要组件都有源代码剖析。
3.案例经典,注重实践
为了讲解OpenStack的各种技术细节,书中编写了大量的程序和脚本。为了讲解云计算设计思想与实现细节,本书的每一章都设计了经典案例、脚本及代码实现。
4.循序渐进,由浅入深
本书从云计算最基本的虚拟化技术入手,由虚拟机、虚拟资源的管理引出开源云OpenStack的实现,由浅入深,层层解开了开源云OpenStack的关键技术与重要组件。
5.提供完善的技术支持
本书内容及知识体系
第1篇 基础篇(第1~2章)
本篇介绍了云计算的基本概念及开源云OpenStack的基本知识。主要包括云计算概念的产生与优势、开源云OpenStack的框架与特点、KVM和Libvirt虚拟化技术的使用。
第2篇 安装篇(第3~10章)
本篇介绍了OpenStack系统的安装与集成,包含了OpenStack所需组件的安装部署,涵盖MySQL、RabbitMQ、Keystone、Swift、Glance、Cinder、Quantum、Nova及Dashboard。每个组件的安装部署都单独成章,并且给出了OpenStack集群部署的几种常用参考架构。讲解安装的同时,也介绍了OpenStack各个组件之间的相互依赖关系。
第3篇 剖析篇(第11~16章)
本篇主要介绍了OpenStack重要组件所利用的关键技术。剖析的组件包括Keystone、Swift、Quantum和Nova。此外,还重点介绍了Nova Compute虚拟机管理服务。介绍的OpenStack关键技术包括OpenStack RESTful API的实现、RPC消息通信服务和Swift存储系统设计。介绍这些关键技术时,由浅入深地提供了大量的参考代码与实现细节,逐步剥开了OpenStack关键技术细节的面纱。
第4篇 扩展篇(第17~19章)
本篇介绍了如何利用OpenStack做二次开发。涵盖的内容有:如何在OpenStack上搭建Hadoop大数据分析系统;Nova扩展开发;添加自定义组件。添加自定义组件时,介绍了如何从基础代码构建一个兼容OpenStack的独立模块。详细介绍了数据库的设计与实现、API接口的添加、模块之间RPC调用。还介绍了将OpenStack的关键技术运用在一个独立开发的模块中。
如何获得本书资源
为了方便读者阅读本书,笔者将本书所涉及的所有代码上传于https://github.com/JiYou/ openstack。包括的内容如下:
* 本书引用的OpenStack Grizzly版本的源代码、image资源、脚本和python包;
* 剖析OpenStack关键技术细节时所编写的示例;
* 添加自定义组件时,创建的兼容于OpenStack的组件Monitor的整个项目源码和安装脚本;
* 后续勘误与安装脚本的更新。
适合阅读本书的读者
* 需要入门并且全面学习云计算的人员;
* 希望使用OpenStack开源云的研究人员;
* 需要了解云计算实现技术细节和内部运作机制的程序员;
* 需要利用OpenStack做快速二次开的程序员;
* 开源云OpenStack数据中心的管理员;
* 对云计算感兴趣的公司或个人。
阅读本书的建议
* 云计算初学者,请务必从一章开始阅读,并且熟练掌握第2章虚拟化技术。熟练的虚拟机管理操作,会给后续的研究与OpenStack系统安装带来极大的方便。此外,还需要基本的Python知识,以及熟练掌握Linux系统,特别是Ubuntu-12.10 Service Edition的使用。
* 云计算入门者,有一定云计算概念,并且知道如何操作KVM/Libvirt的读者,可以直接阅读安装篇,了解安装OpenStack各个组件的基本流程。
* 注意关键技术。由于OpenStack系统过于庞大,本书也只是挑选了OpenStack重要组件中的关键技术细节进行介绍。理解了这些关键技术细节,读通整个OpenStack项目的代码便绝非难事。
* 一切密秘尽在OpenStack的源码中,正所谓“师傅领进门,修行靠自身”。本书的目的在于将欲入门而不得其要领的人带入OpenStack开发的大门。就如同告诉“挖宝人”宝藏的所在地和挖掘方法一样,本书将读者带入门后,真正的挖掘还需要读者多看源码,多动手实践。
勘误和支持
— 没有更多了 —
以下为对购买帮助不大的评价