目 录
第1篇 概 述
第1章 云计算概述 1
1.1 从案例看云计算 2
1.2 从服务产品看云计算 4
1.2.1 Amazon云计算服务简介 4
1.2.2 Google云计算服务简介 6
1.2.3 Salesforce云计算服务简介 8
1.2.4 云计算服务 8
1.3 计算模式的演变 9
1.4 “云端”计算 11
1.5 并行计算 12
1.5.1 MPI函数 13
1.5.2 MapReduce算法 14
1.5.3 MPI的遗留问题 15
1.6 Hadoop 16
1.6.1 Hadoop的构造 17
1.6.2 HDFS文件系统 18
1.6.3 MapReduce计算架构 20
1.6.4 Hadoop的局限 21
1.7 互联网云计算 21
1.8 传统IT云计算 22
1.9 虚拟化 23
1.9.1 资源池化 23
1.9.2 动态资源调度 25
1.10 有关云计算的参考资料 28
1.11 小结 29
第2篇 虚 拟 化
第2章 拥抱虚拟化 31
2.1 为什么选择虚拟化 32
2.1.1 当前困境 32
2.1.2 虚拟化带来的价值 32
2.1.3 可选的虚拟化架构 33
2.2 虚拟化技术 36
2.2.1 虚拟化概述 36
2.2.2 虚拟化特性 37
2.2.3 服务器虚拟化分类 38
2.3 VMware与虚拟化功能介绍 39
2.3.1 VMware介绍 39
2.3.2 vSphere组件 40
2.3.3 物理拓扑 41
2.3.4 虚拟数据中心 42
2.3.5 计算与内存资源 43
2.3.6 网络资源 44
2.3.7 存储资源 46
2.3.8 资源管理 47
2.3.9 分布式服务 49
2.4 其他虚拟化平台 51
2.4.1 Hyper-V平台 51
2.4.2 KVM平台 54
2.4.3 XEN介绍 56
2.4.4 VirtualBox介绍 57
2.4.5 OpenVZ介绍 58
2.4.6 非主流虚拟化平台 58
2.5 小结 59
第3章 虚拟化实践进阶 61
3.1 基于VMware的IaaS架构 62
3.1.1 VMware 数据中心架构 62
3.1.2 目标与定位 65
3.2 环境准备 66
3.2.1 基础环境介绍 66
3.2.2 虚拟化节点部署 67
3.2.3 客户端部署 70
3.2.4 虚拟化管理平台部署 71
3.3 虚拟主机创建的实践 74
3.3.1 虚拟主机创建 74
3.3.2 虚拟主机编辑 77
3.3.3 操作系统部署 81
3.3.4 虚拟网络设置 82
3.4 简单虚拟主机管理 86
3.4.1 虚拟主机导入 86
3.4.2 虚拟主机导出与快照 88
3.4.3 性能监控 89
3.5 小结 91
第4章 虚拟化高级管理 93
4.1 集群管理 94
4.1.1 集群创建 94
4.1.2 为集群添加物理主机 103
4.1.3 资源池管理 104
4.2 共享存储池 106
4.2.1 共享存储 106
4.2.2 案例:iSCSI共享存储
搭建 109
4.3 虚拟主机高级应用 112
4.3.1 虚拟主机批量部署 112
4.3.2 虚拟主机热迁移 113
4.4 多租户及自助管理 116
4.4.1 多租户案例 116
4.4.2 用户自助服务 118
4.5 小结 120
第5章 虚拟化编程 121
5.1 ESX命令详解 122
5.1.1 命令行管理接口介绍 122
5.1.2 ESX命令列表 125
5.2 命令管理实践 127
5.2.1 虚拟主机管理 127
5.2.2 虚拟化网络管理 130
5.2.3 其他管理 135
5.3 脚本编程 137
5.3.1 虚拟主机状态检测 137
5.3.2 创建虚拟主机 140
5.3.3 批量复制虚拟主机 142
5.3.4 自动化备份 143
5.3.5 自动警告接口 145
5.4 PowerCLI与WebService 147
5.4.1 PowerCLI 147
5.4.2 WebService 152
5.4.3 Java SDK开发 153
5.5 小结 156
第6章 开源虚拟化平台 157
6.1 KVM详解 158
6.1.1 KVM的主要功能及意义 158
6.1.2 环境准备与KVM安装 159
6.1.3 KVM虚拟主机管理 160
6.2 KVM的命令 165
6.2.1 qemu-img 165
6.2.2 qemu-kvm 168
6.2.3 virsh 170
6.3 脚本与API接口 175
6.3.1 脚本实践:虚拟化交互式
创建 175
6.3.2 脚本实践:虚拟主机状态
监测 177
6.3.3 Libvirt接口介绍 179
6.4 KVM虚拟平台开发案例 180
6.4.1 需求与架构 180
6.4.2 插件配置与调用模块设计 181
6.4.3 用户交互模块设计 183
6.4.4 帮助模块设计 183
6.4.5 运行与测试 184
6.5 小结 186
第3篇 云计算架构
第7章 云计算基础架构 187
7.1 基础架构概述 188
7.2 云计算资源架构 188
7.2.1 资源需求 188
7.2.2 物理资源置备 190
7.2.3 资源池规划 192
7.3 云计算服务交付 194
7.3.1 服务目录制订 194
7.3.2 性能与容量管理 196
7.3.3 可用性管理 197
7.3.4 持续性管理 198
7.3.5 服务水平管理 198
7.3.6 安全管理 199
7.3.7 服务度量 200
7.3.8 自服务管理 200
7.4 云计算运维流程建设 201
7.4.1 实施指导 201
7.4.2 实施路径 203
7.4.3 配置流程管理 205
7.4.4 变更流程管理 206
7.4.5 服务台与事件流程管理 206
7.4.6 问题流程管理 207
7.4.7 团队管理 208
7.5 小结 208
第8章 云计算存储架构 209
8.1 共享存储模型 210
8.2 磁盘存储阵列 212
8.2.1 磁盘存储介质 212
8.2.2 RAID磁盘组 214
8.2.3 存储逻辑单元 218
8.3 存储网络 220
8.3.1 FC存储网络 221
8.3.2 IP存储网络 227
8.3.3 存储虚拟化网关 232
8.4 共享文件系统 232
8.4.1 集群文件系统 233
8.4.2 网络文件系统 237
8.5 共享存储架构 238
8.6 小结 239
第9章 云计算网络架构 241
9.1 网络总体架构 242
9.2 接入层网络 245
9.2.1 物理架构 245
9.2.2 逻辑隔离 247
9.2.3 关于VLAN 250
9.3 主机网络虚拟化 252
9.3.1 虚拟交换机 253
9.3.2 分布式虚拟交换机 257
9.4 网络流量平面 259
9.4.1 IP数据平面 259
9.4.2 控制平面 261
9.4.3 管理平面 262
9.4.4 主机流量平面 262
9.5 小结 263
第10章 IaaS最佳实践 265
10.1 私有云基础架构方案 266
10.1.1 私有云实施动力与目标 266
10.1.2 演进路线与逻辑架构 267
10.1.3 存储资源 268
10.1.4 计算资源 272
10.1.5 网络资源 274
10.1.6 虚拟化及自助服务设计 275
10.2 IaaS实施实践 275
10.2.1 环境准备 276
10.2.2 存储实施 276
10.2.3 网络实施 277
10.2.4 虚拟化及服务器实施 278
10.2.5 管理平台实施 278
10.3 演示与验证 282
10.3.1 终端用户体验 282
10.3.2 运维与业务管理人员体验 284
10.3.3 高级管理体验 287
10.4 小结 289
第4篇 Hadoop
第11章 分布式云存储 291
11.1 分布式文件系统 292
11.1.1 什么是分布式文件系统 292
11.1.2 分布式文件系统的特点 293
11.1.3 常见分布式文件系统 293
11.1.4 Windows DFS部署 295
11.2 Hadoop的HDFS平台 299
11.2.1 Hadoop介绍 299
11.2.2 HDFS的设计原则 302
11.2.3 HDFS的架构与组成 303
11.2.4 HDFS的数据存取流程 307
11.3 HDFS伪分布式部署 308
11.3.1 环境与基础信息配置 308
11.3.2 Java安装与部署 310
11.3.3 SSH配置 310
11.3.4 HDFS的部署 312
11.3.5 HDFS的测试 314
11.4 HDFS的控制与编程 315
11.4.1 HDFS的命令集 315
11.4.2 HDFS的命令实践 319
11.4.3 HDFS的编程接口 320
11.4.4 HDFS的编程示例 322
11.5 小结 325
第12章 分布式云计算 327
12.1 MapReduce简介 328
12.1.1 MapReduce的原理 328
12.1.2 Hadoop的MapReduce 329
12.1.3 MapReduce控制与命令 330
12.2 MapReduce集群部署 332
12.2.1 环境准备 333
12.2.2 Java环境安装 334
12.2.3 SSH配置 334
12.2.4 Hadoop的安装 335
12.2.5 Hadoop的启动与测试 336
12.3 MapReduce开发接口 338
12.3.1 MapReduce编程框架 338
12.3.2 统计访问量的Java示例 340
12.3.3 Streaming机制示例 343
12.4 小结 347
第13章 非关系型数据库 349
13.1 NoSQL 350
13.1.1 NoSQL介绍 350
13.1.2 NoSQL原理 351
13.1.3 NoSQL项目 352
13.2 HBase的基础操作 353
13.2.1 Hadoop的HBase 353
13.2.2 HBase的安装与部署 354
13.2.3 HBase的常用命令 356
13.2.4 HBase的命令实践 357
13.3 HBase的数据模型与架构 360
13.3.1 HBase的数据模型 360
13.3.2 HBase的表与区域 361
13.3.3 HBase的系统架构 362
13.4 HBase的应用实践 364
13.4.1 HBase的开发接口 364
13.4.2 HBase应用开发实践 366
13.5 小结 370
