《典型云计算平台与应用教程》从应用的角度出发,首先概括了云计算的相关概念、专业工具及程序设计等知识,从而揭开云计算的神秘面纱,带领读者全面了解云计算的发展状况;接着分别介绍了云计算在各企业中应用相关平台,主要包括微软云计算、Google云计算、Amazon云计算、VMware云计算等内容,从而让读者切身体会到云计算在各企业中的应用;最后介绍了云计算的仿真器及其实际应用,让读者全盘掌握云计算。
信息技术从诞生以来一直在经历快速的发展和变革。新技术、新产品、新思维的层出不穷催生了一代又一代崭新的商业模式和理念,它们在使得市场竞争越发激烈的同时,也带来了令人振奋的无限机遇。
早在大型机盛行的20世纪五六十年代,计算资源就是采用“租借”的方式对外提供服务的。IBM公司当时的首席执行官Thomas Watson曾预言道:“全世界只需要五台计算机”,过去三十年的PC大繁荣似乎正在推翻这个论断,人们也常常引用这个例子,来说明信息产业的不可预测性。然而,信息技术变革并不总是直线前进,而是螺旋式上升的。半导体、互联网和虚拟化技术的飞速发展使得业界不得不重新思考这一构想,这些支撑技术的成熟让我们有可能把全世界的数据中心进行适度的集中,从而实现规模化经济效应。人们只需远程租用这些共享资源,从而消除企业为了使用信息技术而进行的数据中心构建、硬件采购、软件安装、系统维护等环节。
“云计算(Cloud Computing)”被称为继个人计算机、互联网之后的第三次信息化革命,通过与相关技术创新要素、商业模式创建要素形成有机互动,“云计算”将成为推动电信业乃至广义ICT产业下一轮突破发展的重要驱动力。
“云计算”时代已经来临,未来不管是软件服务、信息分析、影音发送还是联机游戏等,都会由云计算来运行,因为云计算系统具有庞大的计算能力与存储空间,用户只要通过网络与云计算系统连接,就可取得云计算服务资源,而且消费者只要按自己的使用量付费,就像付水电费一样方便。如果是个人使用者,则可享受云计算软件服务在生活与工作上所带来的便利性;如果为一般中小企业,则可以通过云计算平台开发设计应用程序,来经营云计算软件服务事业;如果是有能力提供云计算基础设施的大型企业,致力于打造数以万计的云计算硬件与架构,则需要自行构建云计算系统,打造自己的私有云与企业云。
“云计算”的影响将是深远的,其将彻底改变IT产业的架构和运行方式。可预见,高性能计算机、高端服务器、高端存储器和高端处理器的市场将被数量众多、低成本、低能耗和高性价比的“云计算”硬件市场所挤占;绝大多数软件将以服务方式呈现,甚至连大多数游戏都将在“云”里运行;呼叫中心、网络会议中心、智能监控中心、数据交换中心、视频监控中心和销售管理中心等,将越来越向某些“云计算”设施集中而获取更多的性价比。放眼远眺,“云计算”将与网络计算融为一体,实现“云计算”平台间的互操作和资源共享,实现紧耦合高性能科学计算与松耦合高吞吐量商业计算的融合,使互联网上的主要计算设施融为一个有机整体,称为“云格”。
云计算平台可以分为3类:以数据存储为主的存储型云平台、以数据处理为主的计算型云平台,以及计算和数据存储处理兼顾的综合云计算平台。
云计算平台具有以下特点。
(1)服务无处不在。
用户只需要一台具备基本计算能力的计算设备,以及一个有效的互联网连接,就可以随时随地使用该服务。从这个意义来讲,任何联网的应用,都具备成为云计算平台的潜力。
(2)具备进入成本。
用户具备使用该服务的需求,但是并不具备独立提供该服务的经济或者技术条件。例如,某些企业需要定期地进行大规模的运算,但是并不值得专门为此购置一台具备大规模运算能力的计算设备。超算中心通过发展客户群让多个用户来分担超级计算机的成本,使得其用户能够在不拥有计算设备的情况下以较小的成本完成计算任务。
(3)用户决定应用。
云计算平台提供计算能力(包括处理器、内存、存储、网络接口),但是并不关心用户的应用类型。用户利用云计算平台所提供的计算能力,并且充分考虑云计算平台所设定的(技术和经济)限制,开发出丰富多彩的应用。
本书共8章,分别如下。
第1章:云计算简介,主要包括云计算基础、云计算关键技术研究、云标准及云安全等内容。
第2章:介绍云计算的专业工具及程序设计,主要包括云计算应用Java软件、云计算应用软件Platform Symphony、云计算应用软件Python及云计算应用软件MATLAB等内容。
第3章:介绍微软云计算,主要包括Windows Azure计算平台、微软云计算数据库SQL Azure及Windows Azure AppFabric等内容。
第4章:介绍Google云计算,主要包括Hadoop概述、Hadoop常用命令、分布式处理数据MapReduce及分布式服务Zookeeper等内容。
第5章:介绍Amazon云计算,主要包括弹性计算云EC2、存储服务S3、简单队列服务SQS及简单数据库服务Simple DB等内容。
第6章:介绍VMware云计算,主要包括VMware云主品简介、ESX/ESXi概述、VMware vSphere分布式服务等内容。
第7章:介绍云计算仿真器CloudSim,主要包括CloudSim体系结构、CloudSim的功能及扩展、CloudSim的使用方法等内容。
第8章:介绍云计算的综合应用,主要包括提升办公效率及云计算在移动通信令监控与查询的综合实例等内容。
本书主要由赵新芬编写,此外,参加编写的还有李晓东、丁伟雄、雷晓平、李娅、杨文茵、何正风、赵书兰、赵书梅、栾颖、刘志为、周灵、周品、张德丰、余智豪。
由于作者的水平有限,加之时间紧凑,书中难免会存在不足之处,敬请广大读者批评指正。
编著者
第1章 云计算简介
1.1 云计算基础
1.1.1 云产生的背景
1.1.2 云计算定义
1.1.3 云计算体系架构
1.1.4 云计算的分类
1.1.5 云计算发展趋势
1.1.6 云计算研究方向
1.1.7 云计算的实现机制
1.2 云计算关键技术研究
1.2.1 虚拟化技术
1.2.2 数据存储技术
1.2.3 资源管理技术
1.2.4 能耗管理技术
1.2.5 云监测技术
1.3 云计算应用实例
1.3.1 Google的云计算平台应用实例
1.3.2 IBM“蓝云”计算平台应用实例
1.3.3 Amazon的弹性计算云应用实例
1.4 云标准
1.4.1 云标准背景
1.4.2 云计算潜在标准化需求分析
1.4.3 云计算标准制定
1.4.4 云标准现状
1.4.5 云标准性能评估
1.4.6 云计算标准发展趋势
1.5 云计算产业的优势
1.5.1 优化产业布局
1.5.2 推进专业分工
1.5.3 提升资源利用率
1.5.4 减少初期投资
1.5.5 降低运营成本
1.5.6 产生新创价值
1.6 云安全
1.6.1 云安全与网络安全的差别
1.6.2 云安全常见问题
1.6.3 云安全研究方向
1.6.4 云安全的难点问题
1.6.5 云安全新增及增强功能
1.6.6 云安全应用
1.6.7 安全示例
1.6.8 云安全的问题
1.7 云生命周期
1.8 云计算优缺点
第2章 云计算的专业工具及程序设计
2.1 云计算应用Java软件
2.1.1 创建Java云计算项目
2.1.2 创建HTTP Servlet程序类别
2.1.3 Web.xml文档设置
2.1.4 设置appengine-web.xml文档
2.1.5 添加Google用户服务
2.1.6 设计用户界面
2.1.7 访客留言板表单的创建
2.1.8 利用JDO访问datastore
2.1.9 创建JDO类别
2.1.10 创建PersistenceManager类别
2.1.11 JOD的创建及保存
2.1.12 JDO Query Language查询存储物件
2.1.13 界面外观修饰
2.2 云计算应用软件Platform Symphony
2.2.1 Symphony DE简介
2.2.2 Platform Symphony架构
2.2.3 使用Symphony DE编写程序
2.3 云计算应用软件Python
2.3.1 创建Python项目
2.3.2 app.ymal设置文档
2.3.3 创建webapp程序架构
2.3.4 利用datastore保存资料
2.3.5 大胜Django留言范本
2.3.6 界面外观修饰
2.3.7 创建首页index.html
2.3.8 app.yaml文档更改
2.3.9 测试Python云计算程序
2.3.10 发布Python云计算程序
2.4 云计算应用软件MATLAB
2.4.1 MATLAB的简单使用
2.4.2 利用PCT提高计算速度
2.4.3 更多的工具运行在云计算环境中
2.5 云计算应用软件C#与VB.NET
2.5.1 C#与VB.NET开发环境创建
2.5.2 C#与VB.NET云计算程序设计
2.5.3 使用C#处理云计算服务回应的HML资料
2.5.4 使用VB.NET处理云计算服务回应的XML资料
2.6 动手做自己的云计算
2.6.1 系统总体分析
2.6.2 管理节点程序设计与分析
2.6.3 子节点程序分析
2.6.4 客户端API设计
第3章 微软云计算
3.1 Windows Azure计算平台
3.1.1 Windows Azure概述
3.1.2 在Azure开发平台并创建运行项目
3.1.3 Windows Azure存储服务
3.1.4 Windows Azure存储服务特点
3.2 微软云计算数据库SQL Azure
3.2.1 SQL Azure架构
3.2.2 使用SQL Azure的理由
3.2.3 使用SQL Azure Database的好处
3.2.4 SQL Azure与SQL Server的比较
3.2.5 SQL Azure关键技术
3.2.6 在应用程序中使用SQL Azure
3.3 Windows Azure AppFabric
3.3.1 服务总线
3.3.2 访问控制(Access Control Service,ACS)
3.3.3 分布式缓存
第4章 Google云计算
4.1 Hadoop概述
4.1.1 Hadoop的功能与作用
4.1.2 Hadoop的优点
4.1.3 Hadoop的主要子项目
4.1.4 Hadoop体系结构
4.2 Hadoop部署与开发
4.2.1 在Linux下安装Hadoop
4.2.2 在Windows下安装Hadoop
4.3 Hadoop常用命令
4.3.1 FS shell
4.3.2 管理与更新
4.3.3 用户命令
4.4 Hadoop输入与输出
4.4.1 MapReduce输入与输出
4.4.2 HDFS的输入与输出
4.5 分布式处理数据MapReduce
4.5.1 编程模型
4.5.2 MapReduce实现机制
4.5.3 MapReduce实例分析
4.6 分布式表HBase
4.6.1 数据模型
4.6.2 概念视图
4.6.3 物理视图
4.6.4 系统架构
4.6.5 HBase的安装与部署
4.6.6 HBase的实例分析
4.7 分布式服务Zookeeper
4.7.1 Zookeeper概述
4.7.2 Zookeeper工作原理
4.7.3 Zookeeper安装与部署
4.7.4 Zookeeper API
4.7.5 Zookeeper实例分析
4.8 数据仓库Hive
4.8.1 Hive结构
4.8.2 Hive数据存储
4.8.3 Hive安装
4.8.4 Hive的扩展特性
4.8.5 Hive实例分析
4.9 数据序列化系统Avro
4.9.1 数据序列化
4.9.2 数据排序顺序
4.9.3 Avro的安装
4.9.4 RPC通信实现
4.9.5 Avro的Java实现
第5章 Amazon云计算
5.1 Amazon相关概念
5.2 弹性计算云EC2
5.2.1 EC2主要特性
5.2.2 EC2基本架构
5.2.3 Amazon EC2的优势与特点
5.2.4 EC2实战
5.3 存储服务S3
5.3.1 S3基本概念
5.3.2 S3一致性
5.3.3 S3安全措施
5.3.4 Amazon Web Services和S3入门
5.3.5 使用GAE与AWS S3部署
5.4 简单队列服务SQS
5.4.1 SQS其模型及特性
5.4.2 SQS框架的概念
5.4.3 Amazon Web Services和SQS入门
5.4.4 使用Amazon SQS进行基于云计算的消息传送
5.4.5 通过Zend Framework使用Amazon SQS
5.5 简单数据库服务Simple DB
5.5.1 SDB的基本概念
5.5.2 SDB的使用
第6章 VMware云计算
6.1 VMware云产品概述
6.1.1 VMware云操作系统
6.1.2 VMware功能
6.1.3 VMware特征
6.1.4 VMware带来好处
6.1.5 VMware云计算工作模式
6.2 VMware云主品简介
6.2.1 VMware云三层框架
6.2.2 VMware vSphere架构
6.2.3 云操作系统vSphere
6.2.4 底层架构服务vCloud Service Director
6.2.5 虚拟桌面产品VMware View
……