邱元陽
編者按:新的一年,“高手論技”繼續(xù)伴隨大家前行,身處一線的你,就那些技術(shù)上最常遇到的故障、最需要解決的難題、最成熟的應(yīng)用……都可以在此暢所欲言,各抒己見。是繼續(xù)圍觀還是現(xiàn)身說法,新浪微群http://q.t.sina.com.cn/264976,期待您的共同參與。
關(guān)于云計(jì)算的討論早已經(jīng)沸沸揚(yáng)揚(yáng),各種互聯(lián)網(wǎng)服務(wù)都在向“云”靠攏,云平臺、云服務(wù)、云查殺、云端……各種大“云”小“云”雨后春筍般露出頭角,似乎與云不沾邊就已經(jīng)落伍于時(shí)代。本刊也開辟過多期云計(jì)算輔助教學(xué)的專欄,但“云”的技術(shù)實(shí)現(xiàn)尤其是在校園網(wǎng)上的技術(shù)實(shí)現(xiàn)還未曾涉及?!陡呤终摷肌穼⒎謨善冢瑏韺λ接性圃谛@網(wǎng)上的技術(shù)實(shí)現(xiàn)問題展開討論。
在InfoWorld網(wǎng)站公布的可能影響未來十年的十項(xiàng)新技術(shù)中,HTML5排在第十位,而私有云卻排在第一位。在云計(jì)算大行其道的今天,私有云技術(shù)快速成長并迅速崛起,在企業(yè)應(yīng)用和Web部署中開始為眾多網(wǎng)絡(luò)管理人員所矚目。
在校園環(huán)境中,我們從說云,用云,到建云,一步步地接近云計(jì)算,似乎云計(jì)算已是觸手可及,私有云技術(shù)的桌面實(shí)現(xiàn)也指日可待。
云計(jì)算的教育應(yīng)用開展得如火如荼,但是其技術(shù)實(shí)現(xiàn)卻諱莫如深。校園網(wǎng)中如何實(shí)現(xiàn)基于虛擬化的私有云技術(shù),有無必要在教育應(yīng)用的網(wǎng)絡(luò)環(huán)境中構(gòu)建自己的私有云,對于網(wǎng)絡(luò)管理人員來說,還是一種彷徨和觀望。
● 撥開迷霧——什么是私有云
我們回顧一下計(jì)算模式的重大變化:首先是大型機(jī)計(jì)算模式,隨后是客戶機(jī)/服務(wù)器計(jì)算模式,最后又有了一種新的計(jì)算模式,就是“云計(jì)算”。它是第三代IT應(yīng)用模式,也是分布式計(jì)算和數(shù)據(jù)中心發(fā)展道路上的新階段。
云計(jì)算的出現(xiàn)給IT的發(fā)展趨勢帶來了一抹亮麗的曙光,在短短的幾年內(nèi),其應(yīng)用范圍已經(jīng)滲透到從企業(yè)到學(xué)校、從網(wǎng)絡(luò)服務(wù)到安全工具的各個(gè)方面,從軟件即服務(wù)(SaaS)、平臺即服務(wù) (PaaS)到基礎(chǔ)結(jié)構(gòu)即服務(wù)(IaaS),云計(jì)算已將硬件(服務(wù)器、存儲和網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu))抽象處理為一組計(jì)算、存儲和連接功能。為使云計(jì)算能更適合小范圍的Web部署和應(yīng)用,微軟提出了私有云技術(shù)解決方案,實(shí)現(xiàn)現(xiàn)有信息基礎(chǔ)架構(gòu)上的高性能應(yīng)用。
隨著集群、網(wǎng)格等分布式計(jì)算架構(gòu)的出現(xiàn)和成熟,它們開始直接用于云計(jì)算模式。事實(shí)上,云計(jì)算就是集群、網(wǎng)格計(jì)算的一種自然延伸,它幫助我們更方便、靈活地管理和使用計(jì)算資源。
從服務(wù)的角度來看,云計(jì)算也是提供IT服務(wù)的一種方式而非產(chǎn)品。云計(jì)算的應(yīng)用類型,大致可以分為公共云、私有云、混合云三種形式(如圖1)。
公共云(Public Cloud):服務(wù)提供商通過互聯(lián)網(wǎng)向客戶提供計(jì)算、存儲及其他IT資源,個(gè)人和組織機(jī)構(gòu)都可以獲得云服務(wù)。典型的公共云有亞馬遜的彈性計(jì)算云(EC2)、IBM的藍(lán)云(Blue Cloud)和谷歌的應(yīng)用程序引擎(App Engine)等。
私有云(Private Cloud):指一個(gè)單位運(yùn)用虛擬化等云計(jì)算技術(shù)來構(gòu)建一個(gè)數(shù)據(jù)中心的模型,它部署在防火墻后面的專有網(wǎng)絡(luò)或數(shù)據(jù)中心內(nèi)。
混合云(Hybrid Cloud):多種云服務(wù)和云資源形式的組合、整合,由內(nèi)部和外部兩個(gè)提供方維護(hù)。
公共云基于標(biāo)準(zhǔn)云計(jì)算服務(wù)模式,在公共云中,服務(wù)供應(yīng)商創(chuàng)造資源,如應(yīng)用和存儲,公眾可以通過網(wǎng)絡(luò)獲取這些資源。
私有云被用來池化內(nèi)部IT資源以便共享,同時(shí)還可以有效管理對外部資源的訪問。在私有云中,資源為自己所調(diào)度和使用。
私有云是虛擬技術(shù)的全方位應(yīng)用。設(shè)計(jì)為私有云的數(shù)據(jù)中心在應(yīng)用和服務(wù)方面與公共云很相似。所有計(jì)算資源都集中在一個(gè)“池”中,以此向外按需提供應(yīng)用和服務(wù)。它們的唯一區(qū)別是計(jì)算資源池只能通過這個(gè)單位的內(nèi)部數(shù)據(jù)中心訪問,而不是公共的Internet。這意味著計(jì)算資源必須是虛擬化和可遷移的,它們可以在網(wǎng)絡(luò)中實(shí)時(shí)移動。
私有云通過共享提高了IT資源的利用率,減少了所需的服務(wù)器數(shù)量及數(shù)據(jù)中心的占地面積,也降低了電力、運(yùn)營和管理成本。
很多公司都提出了自己的私有云解決方案,從硬件到應(yīng)用程序的各個(gè)傳統(tǒng)層級都可以提供相應(yīng)服務(wù),歸納起來,有下列幾種基本類型。
軟件即服務(wù)(SaaS):特色是根據(jù)需要作為服務(wù)提供的一整套應(yīng)用程序。軟件的單個(gè)實(shí)例運(yùn)行在云上,為多個(gè)最終用戶或機(jī)構(gòu)提供服務(wù),如salesforce.com、Google Apps等。
平臺即服務(wù)(PaaS):把軟件層平臺作為服務(wù)提供,可用來構(gòu)建更高水平的服務(wù),如谷歌的App Engine。
基礎(chǔ)架構(gòu)即服務(wù)(IaaS):通過網(wǎng)絡(luò)作為標(biāo)準(zhǔn)化服務(wù)提供基本存儲和計(jì)算能力。服務(wù)器、存儲系統(tǒng)、交換機(jī)、路由器和各種系統(tǒng)都是合用,可用來處理從應(yīng)用程序組件到高性能計(jì)算應(yīng)用程序的工作負(fù)荷,如Joyent。
私有云是為單個(gè)用戶構(gòu)建和使用的,因而能夠提供對數(shù)據(jù)、安全性和服務(wù)的最有效控制。通常,可用一個(gè)6層模型來描述私有云的參考架構(gòu)(如圖2)。
● 亦真亦幻——再談虛擬化
虛擬化是云計(jì)算的基石。
在校園網(wǎng)環(huán)境中,常常有多臺服務(wù)器,運(yùn)行著多種應(yīng)用,然而服務(wù)器常常是很有限的,還是遠(yuǎn)遠(yuǎn)滿足不了更多應(yīng)用需求。在高可靠性和大并發(fā)訪問的需求下,我們不得不采用網(wǎng)絡(luò)存儲和集群來解決應(yīng)用需求,這又不得不增加服務(wù)器開銷。目前的服務(wù)器配置,CPU的處理能力和內(nèi)存容量已經(jīng)不是問題,甚至還有節(jié)余,4核甚至8核的CPU都很常見,48G的內(nèi)存也不為過,數(shù)十TB的存儲系統(tǒng)也足夠使用,如何充分利用校園網(wǎng)現(xiàn)有的服務(wù)器資源,充分發(fā)揮硬件的作用和軟件的性能?將服務(wù)器虛擬化,利用集群實(shí)現(xiàn)數(shù)據(jù)中心的虛擬化,私有云技術(shù)也許是一個(gè)很好的解決方案。
服務(wù)器虛擬化能夠避免采購過多的服務(wù)器,從而節(jié)省大量的支出。實(shí)際情況中占用率極低的服務(wù)器為數(shù)眾多,虛擬化技術(shù)可以使一臺物理服務(wù)器完成多臺服務(wù)器的工作。隨著虛擬化技術(shù)的普及,IT部門不再滿足于這種節(jié)省成本的戰(zhàn)術(shù)性手段,開始采用更具戰(zhàn)略意義的方式來實(shí)現(xiàn)虛擬化,這就是私有云技術(shù)。
以一個(gè)普通的校園網(wǎng)為例,我們給出一個(gè)私有云的框架示意。圖3所示,每臺服務(wù)器上運(yùn)行著多個(gè)虛擬機(jī),分別用來跑教學(xué)平臺、教學(xué)管理系統(tǒng)、學(xué)校辦公系統(tǒng)等,然后將每個(gè)服務(wù)器中運(yùn)行相同應(yīng)用的虛擬機(jī)進(jìn)行集群,既不會增加服務(wù)器數(shù)量,又保證了服務(wù)能力,當(dāng)一臺服務(wù)器宕機(jī)時(shí),不會造成某個(gè)應(yīng)用停止。如果采用傳統(tǒng)的方式,每臺服務(wù)器上運(yùn)行一個(gè)應(yīng)用,不僅需要多臺服務(wù)器,還容易在服務(wù)器宕機(jī)時(shí)使相應(yīng)服務(wù)停止,若用多臺物理機(jī)集群,又增加了服務(wù)器數(shù)量。可見,以虛擬化為基礎(chǔ),結(jié)合集群技術(shù),可以在現(xiàn)有基礎(chǔ)設(shè)施上實(shí)現(xiàn)更多更安全的應(yīng)用,降低了成本,提高了性能。
要實(shí)現(xiàn)這樣的框架,虛擬化是最開始就需要解決的。服務(wù)器虛擬化常常是構(gòu)建私有云的第一步。
構(gòu)建私有云時(shí),所使用到的一些基本組件,就是服務(wù)器、存儲和虛擬化軟件,然后才可構(gòu)建集群。集群運(yùn)轉(zhuǎn)后便可以預(yù)配置虛擬服務(wù)器了,形成一種包含服務(wù)器層、網(wǎng)絡(luò)層和虛擬化層的分層架構(gòu),在每一層都需要有相應(yīng)的管理工具來實(shí)現(xiàn)自動化(如圖4)。比如選擇VMware作為虛擬化軟件,CA的Service Assurance套件作為監(jiān)控工具,IBM的Tivoli、BMC的BladeLogic作為自動化管理工具。
新的CPU生產(chǎn)技術(shù)都已經(jīng)支持CPU的硬件虛擬化,這種支持也為在服務(wù)器上運(yùn)行裸機(jī)虛擬機(jī)提供了可能。當(dāng)然,在萬不得已的情況,也可以在操作系統(tǒng)上運(yùn)行虛擬機(jī),不過性能肯定會大打折扣。
談到虛擬化,我們都會想到VMware。VMware的虛擬機(jī)軟件產(chǎn)品眾多,在私有云架設(shè)中常用到的有VMware ESX和VMware vSphere等。我們做網(wǎng)絡(luò)實(shí)驗(yàn)時(shí)用的VMware Workstation最好不要用到這里的虛擬化上,這里涉及虛擬化的三種架構(gòu)類型。
為了不間斷地支持多工作負(fù)載遷移的能力,需要Hypervisor來支撐并實(shí)現(xiàn)這個(gè)基本功能。Hypervisor是一種在虛擬環(huán)境中的“元”操作系統(tǒng),也可叫做VMM(虛擬機(jī)監(jiān)視器)。Hypervisor運(yùn)行在基礎(chǔ)物理服務(wù)器和操作系統(tǒng)之間的中間軟件層,可允許多個(gè)操作系統(tǒng)和應(yīng)用共享硬件,是所有虛擬化技術(shù)的核心。各種Hypervisor的架構(gòu)存在一些差異,主要架構(gòu)類別有:
Type I(裸機(jī)虛擬化Bare-metal):虛擬機(jī)直接運(yùn)行在系統(tǒng)硬件上,創(chuàng)建硬件全仿真實(shí)例,即“裸機(jī)”型。其代表有VMware ESX Server、微軟Hyper-V、Citrix Xen Server、Linux KVM等。
Type II(主機(jī)虛擬化Hosted):虛擬機(jī)運(yùn)行在傳統(tǒng)操作系統(tǒng)上,同樣創(chuàng)建的是硬件全仿真實(shí)例,即“托管(宿主)”型。其代表有VMware Server(GSX)、VMware Workstation、微軟Virtual PC、Virtual Server等。
Type Ⅲ(操作系統(tǒng)虛擬化OS-Level):虛擬機(jī)運(yùn)行在傳統(tǒng)操作系統(tǒng)上,創(chuàng)建一個(gè)獨(dú)立的虛擬化實(shí)例(容器),指向底層托管操作系統(tǒng),如Parallels的Virtuozzo和OpenVZ等。
三種類型中,操作系統(tǒng)虛擬化所有虛擬機(jī)共享內(nèi)核空間,性能最好,耗費(fèi)資源最少,但會造成操作系統(tǒng)唯一。主機(jī)虛擬化VM(虛擬機(jī))的應(yīng)用程序調(diào)用硬件資源時(shí)需要經(jīng)過VM內(nèi)核→Hypervisor→主機(jī)內(nèi)核,導(dǎo)致性能是最差的。這就是前面提到的不要在操作系統(tǒng)上用VMware Workstation創(chuàng)建虛擬機(jī)的原因。
在私有云中,Hypervisor一般是裸機(jī)型和宿主型的,以裸機(jī)型最為常見,直接安裝在硬件服務(wù)器上,操作系統(tǒng)安裝并且運(yùn)行在Hypervisor之上。
可用的虛擬化軟件還有VMware vSphere、IBM PowerVM、Red Hat Enterprise Virtulization、VirtualBSD等。為了方便對Hypervisor管理,常常需要操作系統(tǒng)級的集成工具,如微軟的System Center等。
Eucalyptus則是著名的開源云計(jì)算軟件,用Xen和KVM作為虛擬化的管理程序。Eucalyptus的Enterprise版已經(jīng)對vSphere ESX/ESXi提供了支持。
Eucalyptus的組件包括云控制器(CLC)、集群控制器(CC)、節(jié)點(diǎn)控制器(NC)、存儲控制器(SC)等,Eucalyptus可以從源代碼安裝,也可以從面向特定Linux發(fā)布版的包安裝。
● 舍我其誰——向私有云遷移
有多種途徑可以實(shí)現(xiàn)從現(xiàn)有的C/S基礎(chǔ)架構(gòu)轉(zhuǎn)向云計(jì)算,其中三種途徑是最主要和最有效的。
從虛擬機(jī)遷移到云:對于已經(jīng)在虛擬機(jī)上部署了應(yīng)用程序的用戶來說,可以將虛擬服務(wù)器結(jié)合起來,形成可管理的虛擬機(jī)集群,部署虛擬化管理平臺來自動調(diào)配虛擬機(jī)和跨虛擬機(jī)集群的計(jì)算資源,從而形成內(nèi)部運(yùn)營的私有云。
從網(wǎng)格遷移到云:通過部署云管理軟件,采用虛擬化技術(shù)和資源配置工具可以將網(wǎng)格變成私有云。
從桌面遷移到云:應(yīng)用程序可以從專用服務(wù)器遷移到共享基礎(chǔ)架構(gòu)上,并從客戶端設(shè)備進(jìn)行訪問。
然而,私有云的技術(shù)實(shí)現(xiàn)卻并非輕而易舉。在沒有足夠技術(shù)支持的條件下,往往需要采用一些大型云服務(wù)公司的既定解決方案。這些方案常常是包含硬件設(shè)施、軟件基礎(chǔ)和服務(wù)在內(nèi)的成套技術(shù)。目前較有市場的主流私有云“套餐”主要有四類。
IBM CloudBurst:IBM在2009年提出來的云基礎(chǔ)架構(gòu),一般認(rèn)為它是由“藍(lán)云”架構(gòu)衍生出來的企業(yè)私有云解決方案,可以看作是“藍(lán)云”架構(gòu)在“企業(yè)云”場景中的實(shí)例。
最新的CloudBurst 2.1基于4~28個(gè)HS22V刀片服務(wù)器(每個(gè)刀片配置72GB主存),1~2個(gè)BladeCenter機(jī)箱,可運(yùn)行100~960個(gè)虛擬機(jī)。管理軟件使用的是Tivilo Provising Manager V7.1,Monitoring V6.2.1和System Director6.1.1,而VMware ESXi 3.5管理程序則直接內(nèi)置在每個(gè)HS22刀片主板的閃存中。
VCE Vblock:它是虛擬計(jì)算環(huán)境聯(lián)盟的簡稱,也是VMware、Cisco和EMC的縮寫。Vblock于2009年推出,是三家公司聯(lián)手打造的基礎(chǔ)架構(gòu)包,集合了三者的核心技術(shù),是一款用于打造企業(yè)私有云的尖端產(chǎn)品。
Vblock有三種配置,包含了思科統(tǒng)一計(jì)算系統(tǒng)、EMC Celerra unified storage(或EMC CLARiiON CX4、Symmetrix VMAX)和VMware vSphere 4,可以支持300~6000個(gè)虛擬機(jī)。
HP CloudStart:CloudStart是惠普在2010年推出的私有云解決方案,號稱可以在30天內(nèi)幫助企業(yè)建立自己的私有云。
CloudStart基于HP的刀片矩陣系統(tǒng)(BladeSystem Matrix),是將BladeSystem Matrix和一些預(yù)定義的服務(wù)打包到一起形成的一個(gè)私有云套餐,形成一個(gè)結(jié)合了服務(wù)器、存儲、網(wǎng)絡(luò)和軟件的平臺,為用戶提供了VMware、微軟Hyper-V和思杰HyperVisor的支持選項(xiàng)。
Oracle Exalogic Elastic Cloud:它于2010推出,瞄準(zhǔn)企業(yè)級的數(shù)據(jù)中心整合與私有云建設(shè),被戲稱作是“盒子里的云”(Cloud-in-a-box),在標(biāo)準(zhǔn)的19英寸寬、42U高的機(jī)柜里,集成了服務(wù)器、存儲、網(wǎng)絡(luò)、VM、操作系統(tǒng)和中件間等軟硬件資源。其特色是使用InfiniBand中間件互連,讓所有配置在一起可以形成一個(gè)獨(dú)立高效的大型計(jì)算機(jī)。
Exalogic的計(jì)算節(jié)點(diǎn)使用的是1U雙路12核機(jī)架服務(wù)器,配置64位 X86處理器,基于InfiniBand的I/O架構(gòu),96GB的內(nèi)存,2個(gè)16GB的名為FlashFire的SSD 固態(tài)磁盤和40TB的磁盤存儲。1/4機(jī)架設(shè)置的Exalogic有8個(gè)計(jì)算節(jié)點(diǎn)。
上面這些主流的私有云解決方案,可以非常方便地構(gòu)建私有云。然而采用以上這些“套餐”的成本,常常在幾百萬元以上,不是一般的校園網(wǎng)能夠承受得起的。因此,利用虛擬化和集群技術(shù),自己部署校園網(wǎng)的私有云,才是可行的方法。
● 不折不扣——校園網(wǎng)上實(shí)現(xiàn)私有云
云計(jì)算的觀念早已深入人心,自2010年度VMworld大會之后,私有云更是為眾多企業(yè)所青睞。然而,在部署私有云的實(shí)施過程中,幾乎每一步都是一個(gè)技術(shù)壁壘,這也使得眾多網(wǎng)絡(luò)技術(shù)人員不得要領(lǐng),望而生畏。
對于稍大一些的校園網(wǎng),已經(jīng)具備了搭建私有云的資源基礎(chǔ),無論是作為實(shí)際應(yīng)用還是平臺試驗(yàn),都可以進(jìn)行一下技術(shù)嘗試。私有云的實(shí)現(xiàn)涉及很多的前沿技術(shù),頭緒較多,由于篇幅所限,無法給出詳細(xì)的實(shí)施過程,這里僅對私有云在校園網(wǎng)上的技術(shù)實(shí)現(xiàn)作一簡單闡述,勾勒出一個(gè)明晰的框架,期望在大家著手實(shí)施時(shí)會有所幫助。
考慮到簡便性和可操作性,這里給出基于Eucalyptus的私有云實(shí)現(xiàn)過程。
Eucalyptus隨著Linux發(fā)行版Ubuntu的高度集成迅速竄紅,在Ubuntu 9.10版中,就已經(jīng)成了安裝菜單的一個(gè)選項(xiàng),讓云的架設(shè)更加貼近普通用戶。這個(gè)開源并且免費(fèi)的云平臺正是我們所需要的。
這里以Ubuntu 10.04為例子,簡述基于UEC的私有云搭建過程。因?yàn)槠?,省去了過程中的截圖,實(shí)現(xiàn)過程參考了Ubuntu官方網(wǎng)站中的英文幫助文檔,更詳細(xì)的資料和截圖可以訪問網(wǎng)址https://help.ubuntu.com/community/UEC/CDInstall(英文)獲取。
1.準(zhǔn)備工作
①一個(gè)前端,用于運(yùn)行云控制器(CLC)、集群控制器(CC)、Walrus(類似于S3的存儲服務(wù))、存儲控制器(SC);一個(gè)或多個(gè)節(jié)點(diǎn),用于運(yùn)行節(jié)點(diǎn)控制器(NC)。二者最好都有較快的CPU、較大的內(nèi)存和硬盤以及較高的網(wǎng)絡(luò)帶寬支持。
②從網(wǎng)上下載Ubuntu 10.04 Server光盤(鏡像)。
2.安裝前端服務(wù)器(云/集群/存儲/Walrus)
①用Ubuntu 10.04 Server光盤(鏡像)啟動,選擇第二項(xiàng)——“Install Ubuntu Enterprise Cloud”。
②安裝程序?qū)z測是否存在其他Eucalyptus組件。
③根據(jù)你選擇的拓?fù)浣Y(jié)構(gòu)選擇要安裝的組件。
④給集群起個(gè)名字,如cluster1。
⑤填寫局域網(wǎng)上公用的IP地址范圍,云可以將其分配給運(yùn)行的實(shí)例,例如 192.168.1.200-192.168.1.249。
3.安裝節(jié)點(diǎn)控制器
①首先要確保節(jié)點(diǎn)機(jī)器所在的網(wǎng)絡(luò)上,云/群集控制器已在運(yùn)行。
②在節(jié)點(diǎn)機(jī)器上用同一個(gè)光盤(鏡像)引導(dǎo)啟動。
③同樣選擇“Install Ubuntu Enterprise Cloud”。
④系統(tǒng)會自動檢測集群環(huán)境并會預(yù)先為你選擇“節(jié)點(diǎn)安裝”方式。
⑤確認(rèn)分區(qū)方案。
⑥安裝的剩余部分將自動進(jìn)行,節(jié)點(diǎn)安裝完成后重新啟動。
4.注冊節(jié)點(diǎn)
如果是按照UEC/CDInstall方法安裝的,對于Ubuntu 10.04 LTS來說,所有組件的注冊都是自動的,包括:正確交換公共SSH密鑰、正確配置服務(wù)、服務(wù)廣播它們的存在、合適的UEC組件監(jiān)聽器在運(yùn)行、驗(yàn)證注冊;如果是使用UEC/PackageInstall方法安裝,這些步驟就需要手工進(jìn)行(因?yàn)榉爆嵍鴱?fù)雜,此處略去)。因?yàn)榍懊嫖覀円呀?jīng)選擇了光盤啟動安裝,這些步驟將會自動完成。
5.獲取證書
在安裝和啟動云控制器之后,云的用戶需要獲取他們的證書。這個(gè)可以通過瀏覽器或命令行來完成。
①通過瀏覽器進(jìn)行。
在瀏覽器(遠(yuǎn)程機(jī)器的瀏覽器或者在Ubuntu服務(wù)器上的瀏覽器均可)訪問URL“https://
默認(rèn)的用戶名和密碼都是“admin”,用它登錄上去,然后按照屏幕上的提示更改管理員密碼和郵件地址。
第一次配置過程結(jié)束后,點(diǎn)擊屏幕左上方的“credentials”標(biāo)簽,再點(diǎn)擊“Download Credentials”按鈕來獲取證書,將證書保存到“~/.euca”。
將下載的zip文件解壓并保存到一個(gè)安全的位置(~/.euca):
unzip -d ~/.euca mycreds.zip
②通過命令行進(jìn)行。
如果是在云控制器的命令行下,可以運(yùn)行下列命令提取和使用你的證書:
mkdir -p ~/.euca
chmod 700 ~/.euca
cd ~/.euca
sudo euca_conf --get-credentials mycreds.zip
unzip mycreds.zip
ln -s ~/.euca/eucarc ~/.eucarc
cd –
取得證書后,需要在服務(wù)器上使用X.509證書來設(shè)置EC2 API和AMI工具。
還需要安裝必要的云用戶工具:
sudo apt-get install euca2ools
為了驗(yàn)證這一切都正常工作,可以查看一下本地集群可用性的詳細(xì)信息:
6.安裝鏡像
將鏡像添加到UEC的最簡單的方法是通過UEC web界面的Image Store來安裝。
通過如下URL來訪問web界面(確認(rèn)你是使用 https):
https://
輸入你的登錄名和密碼,點(diǎn)擊“Store”標(biāo)簽。
瀏覽可用的鏡像,在想要安裝的鏡像上點(diǎn)擊“Install”。
鏡像被下載并安裝完成后,可以點(diǎn)擊顯示在映射按鈕下的“How to run?”來查看用來實(shí)例化(啟動)該鏡像的命令。該鏡像也將顯示在Image標(biāo)簽上給出的列表里。
7.運(yùn)行鏡像
有多種方法來實(shí)例化UEC里的一個(gè)鏡像,如使用命令行、使用一個(gè)和UEC兼容的管理工具(如Landscape)、使用Firefox瀏覽器的ElasticFox插件等。
這里以命令行方法為例進(jìn)行講解。
①在運(yùn)行鏡像的一個(gè)實(shí)例之前,應(yīng)該首先創(chuàng)建一個(gè)當(dāng)實(shí)例啟動后可以用來以root用戶登錄到你的鏡像的密鑰對(ssh密鑰)。密鑰會被存儲起來,只需要創(chuàng)建一次即可。運(yùn)行下面的命令:
if [ ! -e ~/.euca/mykey.priv ]; then
mkdir -p -m 700 ~/.euca
touch ~/.euca/mykey.priv
chmod 0600 ~/.euca/mykey.priv
euca-add-keypair mykey > ~/.euca/mykey.priv
這里密鑰的名字是“mykey”,如果不小心忘記了,可以運(yùn)行“euca-describe-keypairs”來獲取存儲在系統(tǒng)里的已經(jīng)創(chuàng)建的密鑰的列表。
②必須確保在運(yùn)行任何eucatools工具之前運(yùn)行命令“source ~/.euca/eucarc”,可能最后的辦法是將這條命令加入到.bashrc腳本文件的底部。
③必須開放實(shí)例的22端口:
euca-authorize default -P tcp -p 22 -
s 0.0.0.0/0
④接下來,可以創(chuàng)建已經(jīng)注冊的鏡像的實(shí)例:
euca-run-instances $EMI -k mykey -t m1.small
注意:如果遇到有關(guān)image_id的一個(gè)錯(cuò)誤,可以通過查看Images頁面找到它,或者在Store頁面上點(diǎn)擊“How to Run”查看示例命令。
⑤第一次運(yùn)行某個(gè)實(shí)例時(shí),系統(tǒng)會從將要創(chuàng)建該實(shí)例的機(jī)器上為這個(gè)鏡像設(shè)置緩存。VM鏡像通常相當(dāng)大,在第一次運(yùn)行某個(gè)實(shí)例時(shí),這個(gè)過程通常需要一段時(shí)間。要監(jiān)測你的實(shí)例的狀態(tài),可以運(yùn)行命令:
watch -n5 euca-describe-instances
在輸出中,可以看到有關(guān)該實(shí)例的信息,包括它的狀態(tài)。當(dāng)?shù)谝淮尉彺嬲谶M(jìn)行的時(shí)候,實(shí)例的狀態(tài)是“pending”。
⑥當(dāng)實(shí)例已經(jīng)完全啟動,上述狀態(tài)將變?yōu)椤皉unning”。在輸出里看到分配給你的實(shí)例的IP地址,然后連接到它:
IPADDR=$(euca-describe-instances | grep $EMI | grep running | tail -n1 | awk '{print $4}')
ssh -i ~/.euca/mykey.priv ubuntu@$IPADDR
⑦最后,在實(shí)例上的工作完成后,退出SSH連接,然后關(guān)閉實(shí)例:
INSTANCEID=$(euca-describe-instances | grep $EMI | grep running | tail -n1 | awk '{print $2}')
euca-terminate-instances $INSTANCEID
至此,基于UEC的私有云創(chuàng)建完成,但也僅僅是云的基礎(chǔ)設(shè)施而已,具體到各種應(yīng)用的部署和優(yōu)化,還有非常多的工作要做。
創(chuàng)建和實(shí)現(xiàn)私有云的方法很多,可選擇的類型和云系統(tǒng)軟件及虛擬化軟件也很多,以上只是其中的一種具體方法,尚不是完整的過程,實(shí)施細(xì)節(jié)還需要在實(shí)際部署過程中摸索。雖然如此,我們也已經(jīng)開始在從“說云”、“用云”到自己“建云”的道路上邁步前進(jìn)了。但愿在不長的時(shí)間內(nèi),我們可以看到眾多的私有云在校園里綻放并為教育服務(wù)。
(下期應(yīng)用沙龍,更精彩)