《典型云計算平臺與應(yīng)用教程》從應(yīng)用的角度出發(fā),首先概括了云計算的相關(guān)概念、專業(yè)工具及程序設(shè)計等知識,從而揭開云計算的神秘面紗,帶領(lǐng)讀者全面了解云計算的發(fā)展狀況;接著分別介紹了云計算在各企業(yè)中應(yīng)用相關(guān)平臺,主要包括微軟云計算、Google云計算、Amazon云計算、VMware云計算等內(nèi)容,從而讓讀者切身體會到云計算在各企業(yè)中的應(yīng)用;最后介紹了云計算的仿真器及其實際應(yīng)用,讓讀者全盤掌握云計算。
信息技術(shù)從誕生以來一直在經(jīng)歷快速的發(fā)展和變革。新技術(shù)、新產(chǎn)品、新思維的層出不窮催生了一代又一代嶄新的商業(yè)模式和理念,它們在使得市場競爭越發(fā)激烈的同時,也帶來了令人振奮的無限機遇。
早在大型機盛行的20世紀五六十年代,計算資源就是采用“租借”的方式對外提供服務(wù)的。IBM公司當時的首席執(zhí)行官Thomas Watson曾預(yù)言道:“全世界只需要五臺計算機”,過去三十年的PC大繁榮似乎正在推翻這個論斷,人們也常常引用這個例子,來說明信息產(chǎn)業(yè)的不可預(yù)測性。然而,信息技術(shù)變革并不總是直線前進,而是螺旋式上升的。半導體、互聯(lián)網(wǎng)和虛擬化技術(shù)的飛速發(fā)展使得業(yè)界不得不重新思考這一構(gòu)想,這些支撐技術(shù)的成熟讓我們有可能把全世界的數(shù)據(jù)中心進行適度的集中,從而實現(xiàn)規(guī);(jīng)濟效應(yīng)。人們只需遠程租用這些共享資源,從而消除企業(yè)為了使用信息技術(shù)而進行的數(shù)據(jù)中心構(gòu)建、硬件采購、軟件安裝、系統(tǒng)維護等環(huán)節(jié)。
“云計算(Cloud Computing)”被稱為繼個人計算機、互聯(lián)網(wǎng)之后的第三次信息化革命,通過與相關(guān)技術(shù)創(chuàng)新要素、商業(yè)模式創(chuàng)建要素形成有機互動,“云計算”將成為推動電信業(yè)乃至廣義ICT產(chǎn)業(yè)下一輪突破發(fā)展的重要驅(qū)動力。
“云計算”時代已經(jīng)來臨,未來不管是軟件服務(wù)、信息分析、影音發(fā)送還是聯(lián)機游戲等,都會由云計算來運行,因為云計算系統(tǒng)具有龐大的計算能力與存儲空間,用戶只要通過網(wǎng)絡(luò)與云計算系統(tǒng)連接,就可取得云計算服務(wù)資源,而且消費者只要按自己的使用量付費,就像付水電費一樣方便。如果是個人使用者,則可享受云計算軟件服務(wù)在生活與工作上所帶來的便利性;如果為一般中小企業(yè),則可以通過云計算平臺開發(fā)設(shè)計應(yīng)用程序,來經(jīng)營云計算軟件服務(wù)事業(yè);如果是有能力提供云計算基礎(chǔ)設(shè)施的大型企業(yè),致力于打造數(shù)以萬計的云計算硬件與架構(gòu),則需要自行構(gòu)建云計算系統(tǒng),打造自己的私有云與企業(yè)云。
“云計算”的影響將是深遠的,其將徹底改變IT產(chǎn)業(yè)的架構(gòu)和運行方式?深A(yù)見,高性能計算機、高端服務(wù)器、高端存儲器和高端處理器的市場將被數(shù)量眾多、低成本、低能耗和高性價比的“云計算”硬件市場所擠占;絕大多數(shù)軟件將以服務(wù)方式呈現(xiàn),甚至連大多數(shù)游戲都將在“云”里運行;呼叫中心、網(wǎng)絡(luò)會議中心、智能監(jiān)控中心、數(shù)據(jù)交換中心、視頻監(jiān)控中心和銷售管理中心等,將越來越向某些“云計算”設(shè)施集中而獲取更多的性價比。放眼遠眺,“云計算”將與網(wǎng)絡(luò)計算融為一體,實現(xiàn)“云計算”平臺間的互操作和資源共享,實現(xiàn)緊耦合高性能科學計算與松耦合高吞吐量商業(yè)計算的融合,使互聯(lián)網(wǎng)上的主要計算設(shè)施融為一個有機整體,稱為“云格”。
云計算平臺可以分為3類:以數(shù)據(jù)存儲為主的存儲型云平臺、以數(shù)據(jù)處理為主的計算型云平臺,以及計算和數(shù)據(jù)存儲處理兼顧的綜合云計算平臺。
云計算平臺具有以下特點。
。1)服務(wù)無處不在。
用戶只需要一臺具備基本計算能力的計算設(shè)備,以及一個有效的互聯(lián)網(wǎng)連接,就可以隨時隨地使用該服務(wù)。從這個意義來講,任何聯(lián)網(wǎng)的應(yīng)用,都具備成為云計算平臺的潛力。
。2)具備進入成本。
用戶具備使用該服務(wù)的需求,但是并不具備獨立提供該服務(wù)的經(jīng)濟或者技術(shù)條件。例如,某些企業(yè)需要定期地進行大規(guī)模的運算,但是并不值得專門為此購置一臺具備大規(guī)模運算能力的計算設(shè)備。超算中心通過發(fā)展客戶群讓多個用戶來分擔超級計算機的成本,使得其用戶能夠在不擁有計算設(shè)備的情況下以較小的成本完成計算任務(wù)。
。3)用戶決定應(yīng)用。
云計算平臺提供計算能力(包括處理器、內(nèi)存、存儲、網(wǎng)絡(luò)接口),但是并不關(guān)心用戶的應(yīng)用類型。用戶利用云計算平臺所提供的計算能力,并且充分考慮云計算平臺所設(shè)定的(技術(shù)和經(jīng)濟)限制,開發(fā)出豐富多彩的應(yīng)用。
本書共8章,分別如下。
第1章:云計算簡介,主要包括云計算基礎(chǔ)、云計算關(guān)鍵技術(shù)研究、云標準及云安全等內(nèi)容。
第2章:介紹云計算的專業(yè)工具及程序設(shè)計,主要包括云計算應(yīng)用Java軟件、云計算應(yīng)用軟件Platform Symphony、云計算應(yīng)用軟件Python及云計算應(yīng)用軟件MATLAB等內(nèi)容。
第3章:介紹微軟云計算,主要包括Windows Azure計算平臺、微軟云計算數(shù)據(jù)庫SQL Azure及Windows Azure AppFabric等內(nèi)容。
第4章:介紹Google云計算,主要包括Hadoop概述、Hadoop常用命令、分布式處理數(shù)據(jù)MapReduce及分布式服務(wù)Zookeeper等內(nèi)容。
第5章:介紹Amazon云計算,主要包括彈性計算云EC2、存儲服務(wù)S3、簡單隊列服務(wù)SQS及簡單數(shù)據(jù)庫服務(wù)Simple DB等內(nèi)容。
第6章:介紹VMware云計算,主要包括VMware云主品簡介、ESX/ESXi概述、VMware vSphere分布式服務(wù)等內(nèi)容。
第7章:介紹云計算仿真器CloudSim,主要包括CloudSim體系結(jié)構(gòu)、CloudSim的功能及擴展、CloudSim的使用方法等內(nèi)容。
第8章:介紹云計算的綜合應(yīng)用,主要包括提升辦公效率及云計算在移動通信令監(jiān)控與查詢的綜合實例等內(nèi)容。
本書主要由趙新芬編寫,此外,參加編寫的還有李曉東、丁偉雄、雷曉平、李婭、楊文茵、何正風、趙書蘭、趙書梅、欒穎、劉志為、周靈、周品、張德豐、余智豪。
由于作者的水平有限,加之時間緊湊,書中難免會存在不足之處,敬請廣大讀者批評指正。
編著者
第1章 云計算簡介
1.1 云計算基礎(chǔ)
1.1.1 云產(chǎn)生的背景
1.1.2 云計算定義
1.1.3 云計算體系架構(gòu)
1.1.4 云計算的分類
1.1.5 云計算發(fā)展趨勢
1.1.6 云計算研究方向
1.1.7 云計算的實現(xiàn)機制
1.2 云計算關(guān)鍵技術(shù)研究
1.2.1 虛擬化技術(shù)
1.2.2 數(shù)據(jù)存儲技術(shù)
1.2.3 資源管理技術(shù)
1.2.4 能耗管理技術(shù)
1.2.5 云監(jiān)測技術(shù)
1.3 云計算應(yīng)用實例
1.3.1 Google的云計算平臺應(yīng)用實例
1.3.2 IBM“藍云”計算平臺應(yīng)用實例
1.3.3 Amazon的彈性計算云應(yīng)用實例
1.4 云標準
1.4.1 云標準背景
1.4.2 云計算潛在標準化需求分析
1.4.3 云計算標準制定
1.4.4 云標準現(xiàn)狀
1.4.5 云標準性能評估
1.4.6 云計算標準發(fā)展趨勢
1.5 云計算產(chǎn)業(yè)的優(yōu)勢
1.5.1 優(yōu)化產(chǎn)業(yè)布局
1.5.2 推進專業(yè)分工
1.5.3 提升資源利用率
1.5.4 減少初期投資
1.5.5 降低運營成本
1.5.6 產(chǎn)生新創(chuàng)價值
1.6 云安全
1.6.1 云安全與網(wǎng)絡(luò)安全的差別
1.6.2 云安全常見問題
1.6.3 云安全研究方向
1.6.4 云安全的難點問題
1.6.5 云安全新增及增強功能
1.6.6 云安全應(yīng)用
1.6.7 安全示例
1.6.8 云安全的問題
1.7 云生命周期
1.8 云計算優(yōu)缺點
第2章 云計算的專業(yè)工具及程序設(shè)計
2.1 云計算應(yīng)用Java軟件
2.1.1 創(chuàng)建Java云計算項目
2.1.2 創(chuàng)建HTTP Servlet程序類別
2.1.3 Web.xml文檔設(shè)置
2.1.4 設(shè)置appengine-web.xml文檔
2.1.5 添加Google用戶服務(wù)
2.1.6 設(shè)計用戶界面
2.1.7 訪客留言板表單的創(chuàng)建
2.1.8 利用JDO訪問datastore
2.1.9 創(chuàng)建JDO類別
2.1.10 創(chuàng)建PersistenceManager類別
2.1.11 JOD的創(chuàng)建及保存
2.1.12 JDO Query Language查詢存儲物件
2.1.13 界面外觀修飾
2.2 云計算應(yīng)用軟件Platform Symphony
2.2.1 Symphony DE簡介
2.2.2 Platform Symphony架構(gòu)
2.2.3 使用Symphony DE編寫程序
2.3 云計算應(yīng)用軟件Python
2.3.1 創(chuàng)建Python項目
2.3.2 app.ymal設(shè)置文檔
2.3.3 創(chuàng)建webapp程序架構(gòu)
2.3.4 利用datastore保存資料
2.3.5 大勝Django留言范本
2.3.6 界面外觀修飾
2.3.7 創(chuàng)建首頁index.html
2.3.8 app.yaml文檔更改
2.3.9 測試Python云計算程序
2.3.10 發(fā)布Python云計算程序
2.4 云計算應(yīng)用軟件MATLAB
2.4.1 MATLAB的簡單使用
2.4.2 利用PCT提高計算速度
2.4.3 更多的工具運行在云計算環(huán)境中
2.5 云計算應(yīng)用軟件C#與VB.NET
2.5.1 C#與VB.NET開發(fā)環(huán)境創(chuàng)建
2.5.2 C#與VB.NET云計算程序設(shè)計
2.5.3 使用C#處理云計算服務(wù)回應(yīng)的HML資料
2.5.4 使用VB.NET處理云計算服務(wù)回應(yīng)的XML資料
2.6 動手做自己的云計算
2.6.1 系統(tǒng)總體分析
2.6.2 管理節(jié)點程序設(shè)計與分析
2.6.3 子節(jié)點程序分析
2.6.4 客戶端API設(shè)計
第3章 微軟云計算
3.1 Windows Azure計算平臺
3.1.1 Windows Azure概述
3.1.2 在Azure開發(fā)平臺并創(chuàng)建運行項目
3.1.3 Windows Azure存儲服務(wù)
3.1.4 Windows Azure存儲服務(wù)特點
3.2 微軟云計算數(shù)據(jù)庫SQL Azure
3.2.1 SQL Azure架構(gòu)
3.2.2 使用SQL Azure的理由
3.2.3 使用SQL Azure Database的好處
3.2.4 SQL Azure與SQL Server的比較
3.2.5 SQL Azure關(guān)鍵技術(shù)
3.2.6 在應(yīng)用程序中使用SQL Azure
3.3 Windows Azure AppFabric
3.3.1 服務(wù)總線
3.3.2 訪問控制(Access Control Service,ACS)
3.3.3 分布式緩存
第4章 Google云計算
4.1 Hadoop概述
4.1.1 Hadoop的功能與作用
4.1.2 Hadoop的優(yōu)點
4.1.3 Hadoop的主要子項目
4.1.4 Hadoop體系結(jié)構(gòu)
4.2 Hadoop部署與開發(fā)
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 分布式處理數(shù)據(jù)MapReduce
4.5.1 編程模型
4.5.2 MapReduce實現(xiàn)機制
4.5.3 MapReduce實例分析
4.6 分布式表HBase
4.6.1 數(shù)據(jù)模型
4.6.2 概念視圖
4.6.3 物理視圖
4.6.4 系統(tǒng)架構(gòu)
4.6.5 HBase的安裝與部署
4.6.6 HBase的實例分析
4.7 分布式服務(wù)Zookeeper
4.7.1 Zookeeper概述
4.7.2 Zookeeper工作原理
4.7.3 Zookeeper安裝與部署
4.7.4 Zookeeper API
4.7.5 Zookeeper實例分析
4.8 數(shù)據(jù)倉庫Hive
4.8.1 Hive結(jié)構(gòu)
4.8.2 Hive數(shù)據(jù)存儲
4.8.3 Hive安裝
4.8.4 Hive的擴展特性
4.8.5 Hive實例分析
4.9 數(shù)據(jù)序列化系統(tǒng)Avro
4.9.1 數(shù)據(jù)序列化
4.9.2 數(shù)據(jù)排序順序
4.9.3 Avro的安裝
4.9.4 RPC通信實現(xiàn)
4.9.5 Avro的Java實現(xiàn)
第5章 Amazon云計算
5.1 Amazon相關(guān)概念
5.2 彈性計算云EC2
5.2.1 EC2主要特性
5.2.2 EC2基本架構(gòu)
5.2.3 Amazon EC2的優(yōu)勢與特點
5.2.4 EC2實戰(zhàn)
5.3 存儲服務(wù)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 簡單隊列服務(wù)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 簡單數(shù)據(jù)庫服務(wù)Simple DB
5.5.1 SDB的基本概念
5.5.2 SDB的使用
第6章 VMware云計算
6.1 VMware云產(chǎn)品概述
6.1.1 VMware云操作系統(tǒng)
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架構(gòu)
6.2.3 云操作系統(tǒng)vSphere
6.2.4 底層架構(gòu)服務(wù)vCloud Service Director
6.2.5 虛擬桌面產(chǎn)品VMware View
……