出版时间:2011-5 出版社:人民邮电出版社 作者:吴朱华 页数:288
Tag标签:无
内容概要
云计算是新一代IT计算模式,它运用先进的分布式计算及存储架构为用户提供方便的体验并降低使用成本。本书首先介绍了云计算理论方面的知识,接着剖析了多个顶尖云计算产品(比如Google
App Engine和Salesforce
Force.com)的实现,介绍了非常重要的系统虚拟化技术和安全方面的机制,然后以云的核心模块之一——分布式数据库为实践方向,并以
YunTable这个云时代的BigTable为例,来给大家演示如何手动编写和设计一个分布式数据库,最后对云计算的未来发展做了展望。
作者简介
吴朱华
曾在IBM中国研究院参与过多个云计算产品的开发工作,现在成立了人云科技信息有限公司http://peopleyun.com),官方微博http://t.sina.com.cn/peopleyun,专注于YunTable和YunEngine研发。
书籍目录
第一部分 理论篇
第1章 云计算的概念
1.1 什么是云计算
1.1.1 云计算的优点
1.1.2 云计算的特点
1.2 云计算的由来
1.2.1 思想演化
1.2.2 技术支撑
1.3 云计算的诞生
1.3.1 SaaS 的诞生
1.3.2 “IT 不再重要”的发表
1.3.3 Google 的三大核心技术
1.3.4 AWS 的推出
1.3.5 IBM 和Google 的合作
1.4 云计算的成长
1.5 云计算的影响
1.5.1 服务器供应商
1.5.2 软件开发商
1.5.3 云终端供应商
1.5.4 云供应商
1.5.5 整个IT 产业
1.6 云计算的使用场景
1.6.1 IDC 云
1.6.2 企业云
1.6.3 云存储系统
1.6.4 虚拟桌面云
1.6.5 开发测试云
1.6.6 大规模数据处理云
1.6.7 协作云
1.6.8 游戏云
1.6.9 HPC 云
1.6.10 云杀毒
第2章 云计算的架构
2.1 云的架构
2.1.1 SaaS
2.1.2 PaaS
2.1.3 IaaS
2.1.4 云管理层
2.1.5 架构示例
2.2 云的4 种模式
2.21 公有云
2.2.2 私有云
2.2.3 混合云
2.2.4 行业云
第二部分 产品与技术篇
第3章 Google App Engine
3.1 Google 的云计算产品
3.1.1 SaaS 层
3.1.2 PaaS 层
3.1.3 IaaS 层
3.1.4 云客户端
3.2 Google 的核心技术
3.2.1 分布式基础设施
3.2.2 分布式大规模数据处理
3.2.3 分布式数据库技术
3.2.4 数据中心优化技术
3.3 Google 的设计思想和整体架构
3.3.1 设计思想
3.3.2 整体架构
3.4 Google App Engine 简介
3.4.1 历史
3.4.2 功能
3.4.3 使用流程
3.4.4 主要组成部分
3.4.5 编程模型
3.4.6 限制和资费
3.5 Google App Engine 的使用
3.5.1 例子
3.5.2 搭建环境
3.5.3 初始化项目
3.5.4 编写数据库代码
3.5.5 添加Web 处理方法
3.5.6 测试和部署
3.6 Google App Engine 的架构
3.6.1 设计理念
3.6.2 架构
3.6.3 流程
3.6.4 Python 版和Java 版的区别
3.7 本地测试服务器的设计
3.7.1 架构
3.7.2 工作流程
3.8 Datastore 的设计
3.8.1 使用方面
3.8.2 实现方面
3.9 总结
3.9.1 注意点
3.9.2 最佳实践
3.9.3 适用场景
3.9.4 对未来的期望
第4章 Salesforce Forcecom
4.1 Salesforce 简介
4.1.1 公司历史
4.1.2 Salesforce 的整体架构
4.1.3 Forcecom
4.2 多租户的介绍
4.2.1 概念
4.2.2 多租户技术的优缺点
4.2.3 常见的多租户模型
4.3 Forcecom 的多租户架构(上)
4.3.1 总体架构
4.3.2 元数据驱动
4.3.3 应用服务器
4.3.4 共享数据库
4.4 Forcecom 的多租户架构(下)
4.4.1 应用服务器的模块
4.4.2 数据库表的设计
4.4.3 Apex
4.5 总结
4.5.1 设计理念
4.5.2 经验教训
第5章 系统虚拟化
5.1 系统虚拟化简介
5.1.1 虚拟化的概念
5.1.2 系统虚拟化的概念
5.1.3 系统虚拟化技术的分类
5.1.4 系统虚拟化的用处
5.2 x86 虚拟化技术
5.2.1 虚拟机的3 大特征
5.2.2 为什么x86 架构很难被虚拟化
5.2.3 CPU 虚拟化
5.2.4 内存虚拟化
5.2.5 I/O 虚拟化
5.2.6 总结与预测
5.3 VMware vSphere 的简介
5.3.1 VMware 的思路
5.3.2 VMware vSphere
5.4 VMware ESX 的架构
5.4.1 Service Console
5.4.2 VMKernel
5.5 虚拟网络
5.5.1 简介
5.5.2 虚拟网卡
5.5.3 虚拟交换机
5.6 动态迁移背后的奥秘
5.6.1 动态迁移的实现机制
5.6.2 动态迁移今后的挑战
5.7 虚拟器件
5.7.1 虚拟器件的定义
5.7.2 虚拟器件的主要组成部分
5.7.3 虚拟器件的生命周期
5.7.4 虚拟器件的好处
5.7.5 虚拟器件的不足之处
5.7.6 业界支持
5.7.7 虚拟器件与云计算
5.8 OVF 协议
5.8.1 OVF 信封
5.8.2 OVF 环境文件
5.8.3 使用流程
5.9 VMware 的云计算计划
5.9.1 VMware vCloud Express
5.9.2 VMware vCloud Director
5.9.3 VMforce
5.10 Xen 的架构
5.10.1 Xen 简介
5.10.2 半虚拟化技术介绍
5.10.3 Xen 的架构
5.11 Xen 的实现机制
5.11.1 超级调用
5.11.2 vCPU 调度
5.11.3 中断虚拟化
5.11.4 内存管理
5.11.5 I/O 系统
5.11.6 信息传递
5.11.7 时间管理
5.12 Intel VT 技术
5.12.1 VT-x
5.12.2 EPT
5.12.3 VT-d
5.12.4 VT-c
5.13 最新的进展
5.13.1 VMware vSphere
5.13.2 Xen
5.13.3 Intel VT 的PLE 技术
第6章 Amazon EC
6.1 AWS 的概况
6.1.1 简介
6.1.2 产品类别
6.1.3 产品特点
6.1.4 成功案例
6.2 Amazon EC2 简介
6.3 Amazon EC2 的主要模块
6.3.1 AMI
6.3.2 实例
6.3.3 存储
6.3.4 安全方面
6.3.5 可用区
6.3.6 网络方面
6.3.7 Web 管理界面
6.3.8 API
6.4 Amazon EC2 的使用
6.4.1 准备账号
6.4.2 创建实例
6.4.3 启动服务
6.5 Amazon EC2 的优缺点
6.5.1 优点
6.5.2 不足之处
第7章 Cisco UCS
7.1 什么是UCS
7.2 UCS 的架构
7.2.1 Cisco UCS 6100 系列互联阵列
7.2.2 Cisco UCS 管理程序
7.2.3 Cisco UCS 2100 系列扩展模块
7.2.4 Cisco UCS 5100 系列刀片机箱
7.2.5 Cisco B 系列刀片服务器
7.2.6 Cisco UCS 网络适配器
7.3 UCS 的核心技术之内存扩展
7.3.1 Xeon 5500 内存架构
7.3.2 思科的内存扩展技术
7.4 UCS 的核心技术之VN-Link
7.4.1 虚拟网络的难题
7.4.2 Cisco Nexus 1000V 的方案
7.4.3 NIV 的方案
7.5 UCS 的核心技术之统一网络
7.5.1 数据中心的现状
7.5.2 统一网络简介
7.5.3 统一网络的基石
7.5.4 不足之处
7.6 为虚拟化而生
7.6.1 虚拟化的目标
7.6.2 服务器整合
7.6.3 简化系统管理
7.6.4 加速应有部署
第8章 云计算的安全
8.1 云计算安全的概念
8.1.1 新的挑战
8.1.2 现有安全系统的不足
8.1.3 云计算的优势
8.2 云计算安全的架构
8.2.1 云客户端
8.2.2 云端
8.2.3 第三方机构
8.3 Salesforce Forcecom 的安全机制
8.3.1 整体监管和合规性
8.3.2 用户管理
8.3.3 数据管理
8.3.4 系统和网络
8.3.5 物理设施
8.4 AWS 的安全机制
8.4.1 整体监管和合规性
8.4.2 用户管理
8.4.3 数据管理
8.4.4 应用保护
8.4.5 系统与网络
8.4.6 物理设施
8.5 为什么云计算更安全
8.5.1 安全管理方面
8.5.2 高可用性方面
8.5.3 数据安全方面
8.5.4 人才方面
8.5.5 广域网方面
8.5.6 总结
第三部分 实践篇
第9章 深入分析BigTable
9.1 BigTable 简介
9.2 BigTable 的架构
9.3 BigTable 的数据模型和调用接口
9.3.1 数据模型
9.3.2 调用接口
9.4 BigTable 的存储模型
9.4.1 Tablet 的运行机制
9.4.2 SSTable 的介绍
9.4.3 Compaction 机制
9.5 BigTable 的分布式模型
9.5.1 综述
9.5.2 Chubby
9.5.3 如何定位Tablet
9.5.4 如何分配Tablet
9.6 BigTable 的文件系统
9.6.1 GFS 简介
9.6.2 GFS 的架构
9.6.3 GFS 与BigTable 的协作
9.7 BigTable 的优化技术
9.7.1 局部性群组
9.7.2 压缩
9.7.3 通过缓存提高读操作的性能
9.7.4 Bloom 过滤器
9.7.5 提交日志的实现
9.7.6 利用不变性
9.8 BigTable 的功能集
9.8.1 论文中提到的特性
9.8.2 新特性
第10章 YunTable 概览
10.1 为什么要开发YunTable
10.2 YunTable 的目标
10.2.1 02 版的主要目标
10.2.2 一些限制
10.3 YunTable 的数据模型
10.4 YunTable 的命令行
10.4.1 Add 命令
10.4.2 Put 命令
10.4.3 Get 命令
10.5 YunTable 的架构
10.5.1 Master 节点
10.5.2 Region 节点
10.5.3 客户端
10.6 工作流程
10.6.1 流程1:启动Master 节点
10.6.2 流程2:启动Region 节点
10.6.3 流程3:启动客户端
10.6.4 流程4:添加Master 节点
10.6.5 流程5:添加Region 节点
10.6.6 流程6:创建表格
10.6.7 流程7:创建列组
10.6.8 流程8:添加数据
10.6.9 流程9:根据Row Key 查询
10.7 YunTable 的使用
10.7.1 准备环境
10.7.2 测试用例
10.8 YunTable 的规划
第11章 YunTable 的代码剖析
11.1 基础知识
11.1 编程规范
11.1.2 代码结构
11.1.3 开发环境
11.1.4 重要设定
11.2 基础部分
11.2.1 Utils
11.2.2 List
11.2.3 Item
11.2.4 Conf
11.2.5 RPC
11.3 Master 部分
11.3.1 数据结构部分
11.3.2 对外接口部分
11.3.3 实现部分
11.4 Region 部分
11.4.1 Region
11.4.2 WAL
11.4.3 Tablet
11.4.4 Memstore
11.4.5 YFile
11.5 客户端部分
11.5.1 数据结构部分
11.5.2 实现部分
第四部分 展望篇
第12 章 云计算的未来
12.1 云计算的服务模式
12.1.1 比较
12.1.2 未来的竞争
12.2 云计算的商业模式
12.2.1 “超市”模式
12.2.2 “电厂”模式
12.2.3 “超市”模式和“电厂”模式的区别
12.2.4 超市还是电厂
12.3 云计算与中国
12.3.1 现状
12.3.2 对未来的期望
12.4 云计算最新技术
12.4.1 Facebook 的Open Compute项目
12.4.2 VMware 的开源PaaS CloudFoundry
12.4.3 YunEngine
12.5 聊聊科技产业的未来
12.5.1 潜在的优势
12.5.2 主要方向
12.5.3 驱动力
结尾
附录
章节摘录
1.使网络架构更复杂 在数据中心的网络设计方面,普遍使用核心(Core)、汇聚(Aggregation)和接入(Access)这三层架构,但是随着虚拟交换机的出现,数据中心的网络虽然还能维持三层架构,但是接入层将从原先常见的机架(Rack)或者刀片机箱(Blade Chassis)级别降至主机(Host)级别,这不仅影响这三层架构,而且打破了之前每个网口对应唯一一个物理机的假设。同时,虚拟交换机又打破了另一个操作系统无法移动的假设,其原因是高级的虚拟化技术(比如vMotion)使一个操作系统在多个物理机乃至多个数据中心之间移动。这种移动性的变化对整个网络架构产生了非常大的影响。首先,部分属于汇聚层的网络服务需要修改以支持虚拟机的移动性。其次,在接入层,vMotion需要动态迁移的发起者和接受者都必须位于一个统一的第二层网段内,而且为了迁移方便,会有过多的主机接入到同一个第二层的网段内,这种方式极大地违反了经典的网络设计理念。最后,在普通物理环境下,每个网口和接入它的物理机的网络设置[比如端口的安全设置、ACL(Access Control List,访问控制列表)和VLAN等]都是固定的,但是在虚拟环境中,因为系统会不断迁移,导致上面提到的这些网络配置也需要做相应迁移来保持统一,这个工作也是很麻烦的。 2.加大管理难度 虽然虚拟交换机的诞生带来了很多方便,但是如果数据中心部署了许多虚拟主机的话,这将会带来很多管理问题。首先,每个虚拟交换机都是一个独立的管理点,如果需要管理它的话,那就需要耗费很多精力,所以经常被忽视;其次,因为现在虚拟交换机属于主机这个层次,普遍由服务器管理员负责,而不是由网络管理员控制,所以虚拟交换机的设置和维护都脱离了数据中心整体的网络架构,再加上虚拟机的移动性,更加大了管理工作的难度。 为了解决上面提到的那些虚拟交换机的不足,VMware在vSphere4中推出了分布式虚拟交换机(vDS)。vDS堪称VMware新一代的虚拟网络技术,它是能横跨多个主机的分布式交换机,而不是像虚拟交换机那样只能在一台主机上活动。 它的实现机制是分离了交换机的数据功能和控制功能。虽然数据功能还是由主机上的虚拟交换机来处理的,但是控制功能都被集中起来移至主机之外,并将其安装在一个特制的虚拟机内(比如Cisco Nexus 1000V)、Virtual Center内或者一个特制的物理机上(比如Cisco Nexus 1010)。 引入vDS最大的好处就是简化了管理。它通过一个能横跨多个主机的数据中心级分布式交换机来替代很多主机层次的虚拟交换机。通过这个方式,不仅能对虚拟环境的网络资源进行统一管理,而且可以通过Virtual Center来进行管理。 在vSphere4中,VMware还推出了主机配置(Host Profile)和分布式虚拟端口组(Distributed Virtual Port Groups)这两个功能来进一步简化vDS的部署和管理,同时能更好地维护网络配置的一致性。另外,vDS还支持其他一些网络功能,具体如下。 ……
图书封面
图书标签Tags
无
评论、评分、阅读与下载