第一部分 理论篇
第1 章 云计算的概念 2
1.1 什么是云计算 2
1.1.1 云计算的优点 2
1.1.2 云计算的特点 3
1.2 云计算的由来 4
1.2.1 思想演化 4
1.2.2 技术支撑 5
1.3 云计算的诞生 7
1.3.1 SaaS 的诞生 7
1.3.2 “IT 不再重要”的发表 7
1.3.3 Google 的三大核心技术 7
1.3.4 AWS 的推出 8
1.3.5 IBM 和Google 的合作 8
1.4 云计算的成长 8
1.5 云计算的影响 10
1.5.1 服务器供应商 10
1.5.2 软件开发商 11
1.5.3 云终端供应商 11
1.5.4 云供应商 11
1.5.5 整个IT 产业 12
1.6 云计算的使用场景 12
1.6.1 IDC 云 12
1.6.2 企业云 12
1.6.3 云存储系统 12
1.6.4 虚拟桌面云 13
1.6.5 开发测试云 13
1.6.6 大规模数据处理云 13
1.6.7 协作云 13
1.6.8 游戏云 14
1.6.9 HPC 云 14
1.6.10 云杀毒 14
第2 章 云计算的架构 16
2.1 云的架构 16
2.1.1 SaaS 17
2.1.2 PaaS 19
2.1.3 IaaS 21
2.1.4 云管理层 22
2.1.5 架构示例 25
2.2 云的4 种模式 27
2.21 公有云 27
2.2.2 私有云 29
2.2.3 混合云 30
2.2.4 行业云 31
第二部分 产品与技术篇
第3 章 Google App Engine 34
31 Google 的云计算产品 34
3.1.1 SaaS 层 34
3.1.2 PaaS 层 36
3.1.3 IaaS 层 36
3.1.4 云客户端 36
3.2 Google 的核心技术 39
3.2.1 分布式基础设施 39
3.2.2 分布式大规模数据处理 42
3.2.3 分布式数据库技术 43
3.2.4 数据中心优化技术 45
3.3 Google 的设计思想和整体架构 46
3.3.1 设计思想 46
3.3.2 整体架构 48
3.4 Google App Engine 简介 50
3.4.1 历史 50
3.4.2 功能 51
3.4.3 使用流程 51
3.4.4 主要组成部分 51
3.4.5 编程模型 54
3.4.6 限制和资费 55
3.5 Google App Engine 的使用 56
3.5.1 例子 56
3.5.2 搭建环境 56
3.5.3 初始化项目 56
3.5.4 编写数据库代码 58
3.5.5 添加Web 处理方法 59
3.5.6 测试和部署 60
3.6 Google App Engine 的架构 62
3.6.1 设计理念 62
3.6.2 架构 62
3.6.3 流程 63
3.6.4 Python 版和Java 版的区别 64
3.7 本地测试服务器的设计 64
3.7.1 架构 64
3.7.2 工作流程 65
3.8 Datastore 的设计 66
3.8.1 使用方面 66
3.8.2 实现方面 67
3.9 总结 69
3.9.1 注意点 69
3.9.2 最佳实践 69
3.9.3 适用场景 70
3.9.4 对未来的期望 70
第4 章 Salesforce Forcecom 72
4.1 Salesforce 简介 72
4.1.1 公司历史 72
4.1.2 Salesforce 的整体架构 73
4.1.3 Forcecom 73
4.2 多租户的介绍 74
4.2.1 概念 74
4.2.2 多租户技术的优缺点 75
4.2.3 常见的多租户模型 75
4.3 Forcecom 的多租户架构(上)76
4.3.1 总体架构 76
4.3.2 元数据驱动 77
4.3.3 应用服务器 77
4.3.4 共享数据库 78
4.4 Forcecom 的多租户架构(下)78
4.4.1 应用服务器的模块 78
4.4.2 数据库表的设计 79
4.4.3 Apex 80
4.5 总结 81
4.5.1 设计理念 81
4.5.2 经验教训 81
第5 章 系统虚拟化 83
5.1 系统虚拟化简介 83
5.1.1 虚拟化的概念 83
5.1.2 系统虚拟化的概念 83
5.1.3 系统虚拟化技术的分类 84
5.1.4 系统虚拟化的用处 87
5.2 x86 虚拟化技术 88
5.2.1 虚拟机的3 大特征 88
5.2.2 为什么x86 架构很难被虚拟化 88
5.2.3 CPU 虚拟化 89
5.2.4 内存虚拟化 89
5.2.5 I/O 虚拟化 90
5.2.6 总结与预测 90
5.3 VMware vSphere 的简介 91
5.3.1 VMware 的思路 91
5.3.2 VMware vSphere 92
5.4 VMware ESX 的架构 95
5.4.1 Service Console 95
5.4.2 VMKernel 96
5.5 虚拟网络 99
5.5.1 简介 99
5.5.2 虚拟网卡 100
5.5.3 虚拟交换机 101
5.6 动态迁移背后的奥秘 105
5.6.1 动态迁移的实现机制 105
5.6.2 动态迁移今后的挑战 106
5.7 虚拟器件 107
5.7.1 虚拟器件的定义 108
5.7.2 虚拟器件的主要组成部分108
5.7.3 虚拟器件的生命周期 109
5.7.4 虚拟器件的好处 110
5.7.5 虚拟器件的不足之处 111
5.7.6 业界支持 112
5.7.7 虚拟器件与云计算 112
5.8 OVF 协议 112
5.8.1 OVF 信封 113
5.8.2 OVF 环境文件 113
5.8.3 使用流程 114
5.9 VMware 的云计算计划 115
5.9.1 VMware vCloud Express 115
5.9.2 VMware vCloud Director 116
5.9.3 VMforce 119
5.10 Xen 的架构 119
5.10.1 Xen 简介 120
5.10.2 半虚拟化技术介绍 120
5.10.3 Xen 的架构 121
5.11 Xen 的实现机制 122
5.11.1 超级调用 122
5.11.2 vCPU 调度 123
5.11.3 中断虚拟化 123
5.11.4 内存管理 124
5.11.5 I/O 系统 124
5.11.6 信息传递 124
5.11.7 时间管理 125
5.12 Intel VT 技术 125
5.12.1 VT-x 126
5.12.2 EPT 129
5.12.3 VT-d 130
5.12.4 VT-c 131
5.13 最新的进展 132
5.13.1 VMware vSphere 41 132
5.13.2 Xen 40 133
5.13.3 Intel VT 的PLE 技术134
第6 章 Amazon EC2 135
6.1 AWS 的概况 135
6.1.1 简介 135
6.1.2 产品类别 136
6.1.3 产品特点 137
6.1.4 成功案例 138
6.2 Amazon EC2 简介 138
6.3 Amazon EC2 的主要模块 139
6.3.1 AMI 139
6.3.2 实例 140
6.3.3 存储 140
6.3.4 安全方面 141
6.3.5 可用区 142
6.3.6 网络方面 142
6.3.7 Web 管理界面 142
6.3.8 API 143
6.4 Amazon EC2 的使用 143
6.4.1 准备账号 143
6.4.2 创建实例 144
6.4.3 启动服务 148
6.5 Amazon EC2 的优缺点 148
6.5.1 优点 148
6.5.2 不足之处 149
第7 章 Cisco UCS 151
7.1 什么是UCS 151
7.2 UCS 的架构 151
7.2.1 Cisco UCS 6100 系列互联阵列 152
7.2.2 Cisco UCS 管理程序 152
7.2.3 Cisco UCS 2100 系列扩展模块 153
7.2.4 Cisco UCS 5100 系列刀片机箱 153
7.2.5 Cisco B 系列刀片服务器 153
7.2.6 Cisco UCS 网络适配器154
7.3 UCS 的核心技术之内存扩展 154
7.3.1 Xeon 5500 内存架构 154
7.3.2 思科的内存扩展技术 156
7.4 UCS 的核心技术之VN-Link 157
7.4.1 虚拟网络的难题 157
7.4.2 Cisco Nexus 1000V 的方案 157
7.4.3 NIV 的方案 158
7.5 UCS 的核心技术之统一网络 159
7.5.1 数据中心的现状 159
7.5.2 统一网络简介 160
7.5.3 统一网络的基石 160
7.5.4 不足之处 162
7.6 为虚拟化而生 162
7.6.1 虚拟化的目标 163
7.6.2 服务器整合 163
7.6.3 简化系统管理 163
7.6.4 加速应有部署 164
第8 章 云计算的安全 165
8.1 云计算安全的概念 165
8.1.1 新的挑战 166
8.1.2 现有安全系统的不足 166
8.1.3 云计算的优势 167
8.2 云计算安全的架构 167
8.2.1 云客户端 168
8.2.2 云端 168
8.2.3 第三方机构 170
8.3 Salesforce Forcecom 的安全机制 170
8.3.1 整体监管和合规性 170
8.3.2 用户管理 171
8.3.3 数据管理 171
8.3.4 系统和网络 171
8.3.5 物理设施 171
8.4 AWS 的安全机制 172
8.4.1 整体监管和合规性 172
8.4.2 用户管理 172
8.4.3 数据管理 172
8.4.4 应用保护 173
8.4.5 系统与网络 173
8.4.6 物理设施 174
8.5 为什么云计算更安全 174
8.5.1 安全管理方面 174
8.5.2 高可用性方面 174
8.5.3 数据安全方面 175
8.5.4 人才方面 175
8.5.5 广域网方面 175
8.5.6 总结 175
第三部分 实践篇
第9 章 深入分析BigTable 178
9.1 BigTable 简介 178
9.2 BigTable 的架构 178
9.3 BigTable 的数据模型和调用接口 179
9.3.1 数据模型 180
9.3.2 调用接口 181
9.4 BigTable 的存储模型 181
9.4.1 Tablet 的运行机制 182
9.4.2 SSTable 的介绍 182
9.4.3 Compaction 机制 183
9.5 BigTable 的分布式模型 183
9.5.1 综述 184
9.5.2 Chubby 184
9.5.3 如何定位Tablet 185
9.5.4 如何分配Tablet 186
9.6 BigTable 的文件系统 187
9.6.1 GFS 简介 187
9.6.2 GFS 的架构 188
9.6.3 GFS 与BigTable 的协作 191
9.7 BigTable 的优化技术 191
9.7.1 局部性群组 191
9.7.2 压缩 192
9.7.3 通过缓存提高读操作的性能192
9.7.4 Bloom 过滤器 192
9.7.5 提交日志的实现 193
9.7.6 利用不变性 193
9.8 BigTable 的功能集 194
9.8.1 论文中提到的特性 194
9.8.2 新特性 195
第10 章 YunTable 概览 197
10.1 为什么要开发YunTable 197
10.2 YunTable 的目标 198
10.2.1 02 版的主要目标 198
10.2.2 一些限制 199
10.3 YunTable 的数据模型 199
10.4 YunTable 的命令行 199
10.4.1 Add 命令 200
10.4.2 Put 命令 200
10.4.3 Get 命令 200
10.5 YunTable 的架构 200
10.5.1 Master 节点 201
10.5.2 Region 节点 201
10.5.3 客户端 202
10.6 工作流程 202
10.6.1 流程1:启动Master 节点202
10.6.2 流程2:启动Region 节点203
10.6.3 流程3:启动客户端203
10.6.4 流程4:添加Master 节点203
10.6.5 流程5:添加Region 节点204
10.6.6 流程6:创建表格 204
10.6.7 流程7:创建列组 204
10.6.8 流程8:添加数据 205
10.6.9 流程9:根据Row Key 查询205
10.7 YunTable 的使用 205
10.7.1 准备环境 205
10.7.2 测试用例 206
10.8 YunTable 的规划 207
第11 章 YunTable 的代码剖析209
11.1 基础知识 209
11.1 编程规范 209
11.1.2 代码结构 209
11.1.3 开发环境 210
11.1.4 重要设定 211
11.2 基础部分 211
11.2.1 Utils 212
11.2.2 List 215
11.2.3 Item 216
11.2.4 Conf 219
11.2.5 RPC 220
11.3 Master 部分 222
11.3.1 数据结构部分 222
11.3.2 对外接口部分 223
11.3.3 实现部分 223
11.4 Region 部分 226
11.4.1 Region 227
11.4.2 WAL 233
11.4.3 Tablet 236
11.4.4 Memstore 242
11.4.5 YFile 244
11.5 客户端部分 251
11.5.1 数据结构部分 251
11.5.2 实现部分 252
第四部分 展望篇
第12 章 云计算的未来 264
12.1 云计算的服务模式 264
12.1.1 比较 264
12.1.2 未来的竞争 265
12.2 云计算的商业模式 266
12.2.1 “超市”模式 266
12.2.2 “电厂”模式 267
12.2.3 “超市”模式和“电厂”模式的区别 269
12.2.4 超市还是电厂 269
12.3 云计算与中国 270
12.3.1 现状 270
12.3.2 对未来的期望 271
12.4 云计算最新技术 272
12.4.1 Facebook 的Open Compute项目 272
12.4.2 VMware 的开源PaaS CloudFoundry 273
12.4.3 YunEngine 273
12.5 聊聊科技产业的未来 274
12.5.1 潜在的优势 275
12.5.2 主要方向 275
12.5.3 驱动力 276
结尾 277
附录 278
· · · · · · (
收起)