一、什么是云計算平臺
云計算平臺也稱為云平臺。云計算平臺可以劃分為3類:以數(shù)據(jù)存儲為主的存儲型云平臺,以數(shù)據(jù)處理為主的計算型云平臺以及計算和數(shù)據(jù)存儲處理兼顧的綜合云計算平臺。
二、云計算平臺服務特征
?。?)服務無處不在--用戶只需要一臺具備基本計算能力的計算設備以及一個有效的互聯(lián)網(wǎng)連接,就可以隨時隨地使用該服務。從這個意義來講,任何聯(lián)網(wǎng)的應用,都具備成為云計算平臺的潛力。
(2)具備進入成本--用戶具備使用該服務的需求,但是并不具備獨立提供該服務的經(jīng)濟或者技術條件。譬如說某些企業(yè)需要定期地進行大規(guī)模的運算,但是并不值得專門為此購置一臺具備大規(guī)模運算能力的計算設備。超算中心通過發(fā)展客戶群讓多個用戶來分擔超級計算機的成本,使得其用戶能夠在不擁有計算設備的情況下以較小的成本完成計算任務。
?。?)用戶決定應用--云計算平臺提供計算能力(包括處理器、內存、存儲、網(wǎng)絡接口),但是并不關心用戶的應用類型。用戶利用云計算平臺所提供的計算能力,并且充分考慮云計算平臺所設定的(技術和經(jīng)濟)限制,開發(fā)出豐富多彩的應用。滿足如上幾個條件的云計算平臺,又可以按照其所提供服務之層次細分為基礎設施服務(IaaS,例如在線存儲和數(shù)據(jù)庫服務)、平臺即服務(PaaS,例如AMP虛擬主機和JavaEE應用服務器容器)和軟件即服務(SaaS,例如GoogleDocs)。很多廠商在提到云計算的時候,往往會同時提到分布式計算(DistributedComputing)、并行計算(ParalleComputing)、網(wǎng)格計算(GridComputing)、實用計算(UtilityComputing)等等概念。事實上用戶并不關心這些五花八門的新名詞,他們所關心的僅僅是某項服務是否可用以及使用該服務所需要的成本。說得難聽點,這些概念僅僅是云計算平臺提供商在創(chuàng)建云計算平臺時才需要了解的技術細節(jié),它們可以被認為是云計算的表象,但并不是云計算的本質。
三、云計算平臺的功能
云計算平臺使企業(yè)可以更有效地利用其IT硬件和軟件投資。企業(yè)可以通過該基礎結構打破相互隔離的系統(tǒng)中固有的物理障礙,對系統(tǒng)群的管理猶如對單個實體那樣自動進行。對于提供信息服務、降低IT管理復雜性、促進創(chuàng)新、以及通過實時工作負載均衡來提高響應能力而言,云計算平臺都是最好的選擇。
下面我們通過幾個場景來看看使用云計算平臺之后的情況:
1)當你需要使用服務資源的時候:
用戶可以通過一個簡單的Web界面聯(lián)機提交使用服務資源的申請。他們可以為自己的項目指定期望的開始日期和結束日期。數(shù)據(jù)中心管理員可以批準或拒絕這個申請。批準后自動化服務管理平臺就會從可用的資源池中選擇適合的服務器、存儲、操作系統(tǒng)和軟件等資源,并且根據(jù)所申請的資源配置要求對這些資源進行部署。用戶只需在等待很短的時間后就會收到平臺自動發(fā)送的信息,告知用戶所需求的資源已經(jīng)部署完畢,可以使用。
2)當服務資源出現(xiàn)緊張的時候:
虛擬世界需要大量的計算能力,當虛擬空間擴大或登錄用戶增多時尤其如此。大型多人在線網(wǎng)絡游戲(MMPOG)就是超大型虛擬世界的典范。一些商業(yè)化虛擬世界擁有多達幾百萬的注冊用戶,并且由數(shù)千臺服務器提供支持。
托管虛擬世界的企業(yè)可以通過自動化服務管理平臺中的實時監(jiān)控器,顯示當前基礎結構的使用情況,或者顯示虛擬世界的任何指定“區(qū)域”中客戶的平均響應時間。該企業(yè)發(fā)現(xiàn)A區(qū)域的用戶數(shù)量大幅增加,導致資源使用增加,響應時間正在減緩,而此時X區(qū)域和Y區(qū)域的用戶數(shù)量較少,負載較低。于是,該企業(yè)可以在自動化服務管理平臺中通過手動的方式重新平衡資源,(當然我們也可以預先在平臺中定義好資源平衡使用的策略,這樣在發(fā)生資源使用緊張的時候,管理平臺就可以按照定義好的策略自動觸發(fā)相應的操作)分別從X區(qū)域和Y區(qū)域分別撤出5臺服務器,并將這10臺服務器提供給A區(qū)域使用,用來緩解負載。幾分鐘后,這10臺服務器重新分配完成,而這個過程沒有對任何區(qū)域中的任何用戶造成影響,A區(qū)域的響應時間也恢復到可接受的水平。該企業(yè)通過重新利用未充分使用的設備,極大地節(jié)省了成本,并保持了較高的客戶滿意度、避免了用戶需要呼叫幫助中心來尋求幫助,并且在幾分鐘之內就完成了以前需要幾天或幾周時間來完成的工作。
用戶對于云計算平臺的主要需求包括:
云計算平臺最好是一個基于Web的門戶服務形式,用戶可以很方便的登錄并申請所需的資源。
平臺應該可以通過自動或者半自動的方式發(fā)現(xiàn)數(shù)據(jù)中心中的可用資源并提供給用戶選擇使用。
平臺應該可以得到流程引擎的支持,可以整合管理流程(例如ITIL),例如申請、批準、評審和審計等功能。
云計算平臺的后端應該是一系列用來進行部署、監(jiān)控、計費的系統(tǒng),滿足用戶對于申請資源的要求。
自動化供應
用戶通過基于角色的Web門戶網(wǎng)站來實現(xiàn)自動化供應。用戶在門戶網(wǎng)站填寫一張表單來定義其硬件平臺、CPU、內存、存儲、操作系統(tǒng)、中間件和團隊成員及其相關角色等信息。整個過程大約需要5分鐘。通過門戶網(wǎng)站提交請求之后,數(shù)據(jù)中心管理員會得到通知,并登錄以批準、修改和/或拒絕該請求。一旦批準,系統(tǒng)就會啟動一個定義好的自動化工作流程來完成整個部署工作。完全自動化的供應流程符合安全要求,減少了人為原因造成的錯誤,大大縮短了系統(tǒng)部署的時間。
預訂和調度
在提交服務申請時,需要用戶了解資源使用的時間情況。因為在提交申請時需要用戶填寫服務的開始和結束時間,這樣便于數(shù)據(jù)中心的管理人員對于資源使用情況有所了解。在服務到達結束時間時,系統(tǒng)會自動將資源收回,以便可以給其他需要資源的服務來使用。當然用戶可以變更服務的結束時間,這也是管理平臺的重要功能之一,我們將在下面的部分說明。
變更管理
在某些項目中可以能會面臨開發(fā)延期或者新需求等有關的一些未知因素。這些未知因素有時會使遵守合同規(guī)定的結束日期變得困難,當結束日期在項目延期之前幾個月便得到確認時,這種情況尤其明顯。因此,系統(tǒng)允許用戶請求延長其原定的合同結束日期。
經(jīng)過授權的項目成員可以登錄到平臺門戶網(wǎng)站,請求延長合同結束日期。數(shù)據(jù)中心管理員從資源能力和業(yè)務合理性兩方面對該請求進行評估。管理員可以登錄到Web界面來查看該請求,并進行審批操作。新的日期一經(jīng)批準,將會執(zhí)行相應的任務,也會對合同進行更新以反映新的結束日期。
更改合同
云計算平臺還提供對于服務申請資源的變更功能。對于采用新技術或未經(jīng)測試技術的高風險項目而言,經(jīng)常需要變更服務器的操作系統(tǒng)、軟件等資源。
云計算平臺的合同變更功能非常靈活,用戶可以在原有的系統(tǒng)中添加或刪除軟件組件或者連同操作系統(tǒng)完全重新部署。用戶也可以向現(xiàn)有合同中添加服務器或者去除服務器,或者在符合要求的硬件系統(tǒng)上,也可以選擇增加或減少分配給一個或多個虛擬機的資源數(shù)量。當變更申請?zhí)峤缓?,整個系統(tǒng)的變更操作都是自動進行的,無需人工介入,系統(tǒng)可以在很短的時間內完成變更申請,提供給用戶使用。
四、云計算平臺搭建方法
目前開源的云計算平臺的搭建都要依托Linux系統(tǒng),因此我們有2種辦法搭建云計算平臺:安裝Linux系統(tǒng)和在其他操作系統(tǒng)下安裝Linux虛擬機后搭建云平臺。目前主流的虛擬機有:
VirtualBox
Vmware
有了Linux系統(tǒng)環(huán)境后就能搭建云計算平臺了,幾大開源云平臺系統(tǒng)有:
Hadoop系統(tǒng)
OpenStack
云計算平臺的搭建=Linux系統(tǒng)+開源云平臺+SSH框架。
五、云計算平臺原理
1.Hadoop系統(tǒng)原理
Hadoop是一個開源的可運行于大規(guī)模集群上的分布式并行編程框架,其最核心的設計包括:Map Reduce和HDFS?;?Hadoop,你可以輕松地編寫可處理海量數(shù)據(jù)的分布式并行程序,并將其運行于由成百上千個結點組成的大規(guī)模計算機集群上。
簡單的說:Map Reduce框架的核心步驟主要分兩部分:Map和Reduce。當你向Map Reduce框架提交一個計算作業(yè)時,它會首先把計算作業(yè)拆分成若干個Map任務,然后分配到不同的節(jié)點上去執(zhí)行,每一個Map任務處理輸入數(shù)據(jù)中的一部分,當Map任務完成后,它會生成一些中間文件,這些中間文件將會作為Reduce任務的輸入數(shù)據(jù)。Reduce對數(shù)據(jù)做進一步處理之后,輸出最終結果。
Map Reduce是Hadoop的核心技術之一,為分布式計算的程序設計提供了良好的編程接口,并且屏蔽了底層通信原理,使得程序員只需關心業(yè)務邏輯本事,就可輕易的編寫出基于集群的分布式并行程序。從它名字上來看,大致可以看出個兩個動詞Map和Reduce,“Map(展開)”就是將一個任務分解成為多個子任務并行的執(zhí)行,“Reduce”就是將分解后多任務處理的結果匯總起來,得出最后的分析結果并輸出。
適合用 Map Reduce來處理的數(shù)據(jù)集(或任務)有一個基本要求:待處理的數(shù)據(jù)集可以分解成許多小的數(shù)據(jù)集,而且每一個小數(shù)據(jù)集都可以完全并行地進行處理。
想要徹底了解Hadoop系統(tǒng)的原理是十分困難的,由于篇幅有限,知識水平也不高,我只能描寫其大概面貌,本次課程設計的核心是學習搭建與運用云計算平臺,沒有足夠的時間與精力去完全了解Hadoop的原理,在這里我們不妨就理解為:
Hadoop系統(tǒng)=HDFS分布式文件系統(tǒng)+Map Reduce運算機制。
這樣就能很好的明白它們的大致關系,有助于對后面實驗的理解。

2.Ubuntu系統(tǒng)
本次課程設計所使用的Linux系統(tǒng)是ubuntu14。
Ubuntu(烏班圖)是一個以桌面應用為主的Linux操作系統(tǒng),其名稱來自非洲南部祖魯語或豪薩語的“Ubuntu”一詞,意思是“人性”、“我的存在是因為大家的存在”,是非洲傳統(tǒng)的一種價值觀,類似華人社會的“仁愛”思想。Ubuntu基于Debian發(fā)行版和GNOME桌面環(huán)境,而從11.04版起,Ubuntu發(fā)行版放棄了Gnome桌面環(huán)境,改為Unity,與Debian的不同在于它每6個月會發(fā)布一個新版本。Ubuntu的目標在于為一般用戶提供一個最新的、同時又相當穩(wěn)定的主要由自由軟件構建而成的操作系統(tǒng)。
LTS 是 Ubuntu 的長期支持版,因此 Ubuntu 14.04 支持周期長達 3-5 年。因此 Ubuntu 14.04 是追求穩(wěn)定的用戶和企業(yè)的最佳選擇。所以本次課程設計選擇ubuntu14.04LTS版本完全能夠應付云平臺搭建與相關實驗的任務。
六、云計算平臺搭建過程
1.Ubuntu系統(tǒng)的安裝
去Ubuntu官網(wǎng)下載好對應版本的系統(tǒng)鏡像,并用虛擬光驅軟件加載鏡像,選擇安裝Ubuntu系統(tǒng),一路點擊繼續(xù)后大約10來分鐘就可以安裝好Ubuntu系統(tǒng)了。
2.Hadopp系統(tǒng)部署
修改機器名:
打開/etc/hostname文件,將/etc/hostname文件中的Ubuntu改為你想取的機器名。這里我取“s15“。重啟系統(tǒng)后才會生效。
安裝ssh服務:
在terminal窗口中輸入:Sudoaapt-getinstallopenssh-server
建立ssh無密碼登錄本機
在terminal窗口中輸入:
ssh-keygen-tdsa-P‘’-f~/.ssh/id_dsa
cat~/.ssh/id_dsa.pub》》~/.ssh/authorized_keys
登錄localhost:
在terminal窗口中輸入:bin/start-all.sh
安裝Hadoop:
下載Hadoop安裝包并解壓,打開Hadoop/conf/Hadoop.sh文件,配置conf/Hadoop.sh:找到#exportJAVA_HOME=。。。一行,去掉#,然后加上本機JDK的路徑。
打開conf/core-site.XML文件,加入如下代碼:
《configuration》
《property》
《name》fs.default.name《/name》
《value》hdfs://localhost:9000《/value》
《/property》
《/configuration》
打開conf/mapred-site.XML文件,編輯如下:
《configuration》
《property》
《name》mapred.job.tracker《/name》
《value》localhost:9001《/value》
《/property》
《/configuration》
打開conf/masters文件和conf/slaves文件,添加secondary的主機名,作為單機版環(huán)境,這里只需填寫localhost就Ok了。
到這里Hadoop系統(tǒng)就部署完畢了。調用bin/start-all.sh命令即可以啟動Hadoop,用JSP命令查看系統(tǒng)狀態(tài),出現(xiàn)如下信息說明系統(tǒng)部署成功:

電子發(fā)燒友App
















評論