云計算帶來一場計算環(huán)境的變革,把傳統(tǒng)的軟件安裝、許可證的發(fā)布變成了通過Internet獲取的所需服務(wù)。比如,微軟office365就是基于云的辦公應(yīng)用軟件,用戶再也不需要直接購買和安裝;在Facebook社交網(wǎng)站,上傳視頻也是通過使用云存儲服務(wù)來實現(xiàn)的,這樣大大降低了用戶的硬件成本。IaaS(基礎(chǔ)設(shè)施即服務(wù))是云計算的一種重要的服務(wù)形式,有許多開源軟件可以提供多種私有云的構(gòu)建方案,當(dāng)前私有云平臺有OpenNebula(主要用來實現(xiàn)集群計算的一種虛擬機管理器)、CloudStack(提供公共云、私有云、混合云laaS)和Eucalyptu等方案。Eucalyptus提供基于Amazon網(wǎng)頁服務(wù)API規(guī)范標(biāo)準(zhǔn)的云接口,它提供的功能與Amazon云計算平臺服務(wù)所提供的相同,在面向服務(wù)架構(gòu)的層面上它做得較好,通過集群或工作站Eucalyptus可以實現(xiàn)具有彈性的、實用的云計算。
1、云計算提供的服務(wù)和實現(xiàn)技術(shù)
1.1云計算機提供服務(wù)
云計算是一種通過Internet以服務(wù)的方式提供動態(tài)可伸縮的虛擬化的資源的計算模式?,是一個無處不在、便利、按需的可通過網(wǎng)絡(luò)訪問的一池共享可配置的資源的一種模式,只要較少操作,就能持有者快速提供網(wǎng)絡(luò)、服務(wù)器、存儲、應(yīng)用和服務(wù)。云的類型有公有云、私有云和混合云,公有云通過互聯(lián)網(wǎng)為所有的用戶提供資源,私有云通過互聯(lián)網(wǎng)上為一個組織的內(nèi)部用戶提供資源,混合云通過互聯(lián)網(wǎng)根據(jù)不同用戶提供相應(yīng)的資源。云計算服務(wù)包括:IaaS、SaaS和PaaS,IaaS(基礎(chǔ)設(shè)施即服務(wù))通過導(dǎo)航方式向用戶提供基于云的服務(wù)包括:虛擬機、塊存儲、防火墻、負(fù)載平衡和網(wǎng)絡(luò);PaaS(平臺即服務(wù))通過互聯(lián)網(wǎng)向用戶提供操作系統(tǒng)、應(yīng)用開發(fā)平臺(如微軟的VisualStudio.net):SaaS(軟件即服務(wù))通過互聯(lián)網(wǎng)把軟件(如ERP、CRM)提供給用戶,這些由SasS提供的軟件已經(jīng)獲得了較大的收益。
1.2云計算實現(xiàn)的關(guān)鍵技術(shù)
虛擬化技術(shù)是實現(xiàn)云計算的關(guān)鍵,IaaS(基礎(chǔ)設(shè)施即服務(wù))是一個在云環(huán)境中提供虛擬化設(shè)置創(chuàng)建多個工作站的基礎(chǔ)。在計算環(huán)境中,虛擬化意味著對一個設(shè)備或一個資源創(chuàng)建一個版本,如服務(wù)器、存儲裝置、網(wǎng)絡(luò)甚至操作系統(tǒng),在這個架構(gòu)里,把這些資源分成一個或多個執(zhí)行環(huán)境管理程序,也被稱為虛擬機監(jiān)控程序(VMM),VMM是許多硬件虛擬化技術(shù)中的一種,它允許多被稱為客戶機的操作系統(tǒng)并發(fā)運行在主機上。VMM有2種模式,裸金屬模式和主機模式;裸金屬模式Hypervisor(虛擬機管理器)是提供虛擬分區(qū)方法的薄的軟件層,它直接運行在硬件上,如CitrixXenServer、VMwareESX/ESXi。主機模式Hypervisor(虛擬機管理器)是一種分區(qū)和虛擬化服務(wù)都運行在主機操作系統(tǒng)頂層的虛擬化技術(shù),如:基于核心的虛擬機KVM、VMwareplayer和VirtualBox。
目前所使用的虛擬化方式有2種:完全虛擬化及半虛擬化。完全虛擬化提供完整的相關(guān)計算機硬件模擬,軟件能夠不經(jīng)任何修改運行。由于它使計算資源最大的使用和伸縮,多個操作系統(tǒng)能夠同時運行在相同的硬件上,對于云計算來說,完全虛擬化被認(rèn)為是一個關(guān)鍵的技術(shù)。對于云計算來說,完全虛擬化能夠增加操作的有效性,因為它能優(yōu)化計算機負(fù)載和調(diào)整使用中的服務(wù)器數(shù)量來滿足需要,從而能源和信息資源。所使用的全虛擬化的仿真包有VMware Server Virtualbox。半虛擬化是Hypervisor提供一客戶操作系統(tǒng)能夠使用的接口客戶操作系統(tǒng)的一種技術(shù),它取代了通常的硬件接口。如果客戶操作系統(tǒng)能使用半虛擬化的接口,它們將提供象對硬盤和網(wǎng)絡(luò)資源顯著快速的訪問,如微軟的Hyper-V和VMware ESX Server。
2、Eucayptus組成和原理
2.1組成
Eucalyptus是“Elastic Utility Computing Architecture for Linking Your programs to Userful Systems”首字母縮寫,意思是把你的程序鏈接到有用系統(tǒng)的富有伸縮公共計算架構(gòu)上,Eucalyptus是可創(chuàng)建和管理私有云和公有云的開源軟件,有5個組件,分別是云控制器(CLC)、存儲控制器(SC)、節(jié)點控制器(NC)、集群控制器(CC)、分布式存儲控制器Warlus(W)。
2.2原理
它的CLC(云控制器)類似Amazon的EC2,是用戶和管理員的云入口,它向節(jié)點管理員查詢資源信息,做出計劃和決策,并通過向集群控制器發(fā)出請求來實現(xiàn);它的SC(存儲控制器)類似Amazon的S3云控制器,它提供了存儲、訪問虛擬機器里的鏡像和用戶數(shù)據(jù)的方法;它的NC(節(jié)點控制器)是通過Hypervisor管理執(zhí)行、檢測、結(jié)束其所運行在主機上的虛擬機實例;它的CC(集群控制)是用來收集有關(guān)節(jié)點控制器上的虛擬機運行的信息,并調(diào)度其運行計劃和管理虛擬實例的網(wǎng)絡(luò);SC(存儲控制器)與W(Walrus)互相配合完成訪問和存儲內(nèi)核映像、RAM磁盤映像、虛擬機映像及用戶數(shù)據(jù)。
3、構(gòu)建基于EucaIyptus私有云的具體實現(xiàn)
3.1構(gòu)建一個私有云條件
構(gòu)建一個私有云至少有一個前端和一個節(jié)點,為了更好闡明問題,本文就以部署最基本的系統(tǒng)為例說明一個私有云平臺的具體構(gòu)建。下文描述私有云前端系統(tǒng)(云控制器)和節(jié)點(節(jié)點控制器)建立的詳細(xì)過程。
3.2所使用的硬件和軟件
硬件:兩臺相同配置的Dell機架服務(wù)器R715(支持虛擬化技術(shù));軟件:操作系統(tǒng)Ubuntu10.04 server,Hypervisor使用KVM,云軟件使用Eucalyptus Cloud1.6.2。
3.3軟件安裝和配置
3.3.1安裝云、存儲、集群控制器和Walrus存儲服務(wù)
先選擇其中一臺Dell服務(wù)器(標(biāo)記為SERVER1)使用ubuntu 10.04 server edition安裝企業(yè)云,在安裝時選擇安裝ubuntu企業(yè)云,安裝過程中,具體配置參數(shù)如下:IP地址設(shè)置為:192.168.0.221,網(wǎng)關(guān)為:192.168.0.1,子網(wǎng)掩碼為:255.255.255.0,域名服務(wù)器:202.101.98.55(根據(jù)自己具體的DNS來填),主機名設(shè)置為:CC;云控制器地址為空,在云安裝模式中選擇云控制器,Walrus存儲服務(wù),集群控制器,存儲控制器:分區(qū)選擇中把整個磁盤設(shè)置成LVM(邏輯卷管理),設(shè)置帳號的新用戶全名和用戶名(在本文設(shè)置為:cladmin),選擇不自動更新軟件,設(shè)置Eucalyptus集群名(在本文設(shè)置為:Clusterl),設(shè)置能動態(tài)分配給虛擬機的公共IP(在本文設(shè)置為:192.168.0.70—192.168.0.80),安裝KVM以便綁定將來要安裝的系統(tǒng)鏡像。
3.3.2安裝節(jié)點控制器
使用另一臺Dell服務(wù)器(標(biāo)記為Server2),同樣使用ubuntu 10.04 server edition,在安裝時選擇安裝ubuntu企業(yè)云,這時云控制器會自動被檢測到,具體配置參數(shù)如下:IP地址設(shè)置為:192.168.0.222,網(wǎng)關(guān)為:192.168.0.221,子網(wǎng)掩碼為:255.255.255.0,域名服務(wù)器:202.101.98.55(根據(jù)自己具體的DNS來填),云安裝模式選擇節(jié)點控制器,主機名設(shè)置為:NC,分區(qū)選擇中把整個磁盤設(shè)置成LVM(邏輯卷管理),設(shè)置帳號的新用戶全名和用戶名(在本文設(shè)置為:cladmin)
3.3.3交換公共SSH密鑰,在節(jié)點控制器設(shè)置臨時口令:
$sudo passwd eucalyptus
在云控制器上輸入:
$sudo –u eucalyptus ssh-copy-id-I/var/1ib/eucalyptus/.ssh/id-rsa.pubeucalyptu@192.168.0.222
在節(jié)點控制器上刪除臨時口令:
$sudo passwd -d eucalyptus
3.3.4獲取證書
在云控制器上:安裝x.509證書和變量,在瀏覽器中鍵入:https://192.168.0.221:8443#login后單擊擊證書選擇“證書”標(biāo)簽
下載證書文件euca2-admin-x509.zip。然后把它復(fù)制到/home/cladmin中,創(chuàng)建隱藏的文件夾euca,云控制器和zip文件的解壓放在這里
$mkdir~/.euca
$cd~/.euca
$unzip/home/cladmin/euca2-admin-x509.zip
為安全起見,刪除ZIP文件
$rm~/euca2-admin-x509.zip
$chmod 0700~/.euca
$chmod0600~/.euca/*
設(shè)置環(huán)境變量,并讓它產(chǎn)生作用:
$echo.~/.euca/eucarc>>~/.bashrc
$source~/.bashrc
安裝euca2ool與UEC建立通信:
$sudoapt-getinstal1euca2ools
檢N0euca2ool工作狀態(tài):
$euca-describe-availability-zones verbose
如果在有效資源列表中,free/max vcpus是0000/0000那么意味著節(jié)點在安裝期間或在云控制器上沒檢測到云控制器,節(jié)點沒有自動注冊。在服務(wù)器SERVER1(裝有云控制器)上,使用下面的命令增力N192.168.0.222為節(jié)點控制器:
$sudo euca_conf –discover-nodes
3.3.5在SERVERl上安裝鏡像
打開瀏覽器,鍵入https://192.168.0.221:8443,在出現(xiàn)的頁面選擇“Extras”標(biāo)簽,在頁面上會列出提供的鏡像。
(1)在出現(xiàn)的頁面里,從UEC(ubuntu企業(yè)云)中下載鏡像,注冊內(nèi)核映像執(zhí)行下列命令來綁定和注冊內(nèi)核鏡像:
$euca-bundle-image-I vmlinuz-2.6.28-11-server—kernel true
$euca-upload-bundle-b mybucket—m /tmp/vmlinuz-2.6.28-11-server.manifest.xml
$euca-register mybucket/vmlinuz-2.6.28-11-server.manifest.xml IMAGE eki-68101303
(2)注冊ramdisk執(zhí)行下列命令綁定和注冊ramdisk鏡像:
$euca-bundle-image-iinitrd.img-2.6.28-11-server
$euca-upload-bundle-b mybucket –m /tmp/initrd.img-2.6.28-11-server.manifest.xml
$euca-register mybucket/initrd.img-2.6.28-11-server.manifest.xml IMAGE eri-A26613DD
(3)注冊磁盤鏡像執(zhí)行下列命令綁定和注冊磁盤鏡像:
$euca-bundle-image-icentos.5-3.x86.img—kernel eki-68101303—ramdiskeri-A26613DD
$euca-upload-bundle -b mybucket -m/tmp/centos.5-3.x86:img.manifest.xml
$euca-register mybucket/centos.5-3.x86.img.manifest.xml IMAGE emi-F62F1100
(4)已經(jīng)上傳的新鏡像可以由下列命令查看:
$euca-describe-images
3.3.6安裝密鑰對
創(chuàng)建一個新組“wiki”取代缺省組,并使用:對實例開放22號端口,:
$euca-add-group wiki –d wiki-demo-appllances
$euca-authorize wiki –P tcp –p 22 –s 0.0.0.0/0
建立用來注入實例(虛擬機)中允許通過ssh訪問的密鑰對:
$euca-add-keypair mykey>~/.euca/mykey.priv
$chmod 0600~/.euca/mykey.priv
此時,基于IaaS服務(wù)的私有云平臺建立完成并開始運行。
4、在云中運行實例
4.1啟動實例
鍵入命令:
$euca-run-instances -g wiki –k mykey –t c1.medium emi-F62F1100
4.2使用Elasticibx插件
由于Elasticfox與Amazon EC2有接口,在需要的時候,可以把所構(gòu)建的私有云遷移到公有云上。Elasticfox是運行在火狐瀏覽器2.0及以后版本幫助管理AmazonEC2的一個插件,初始設(shè)計來支持EC2,它從1.7版本開始增加了Eucalyptus的支持,因為EucalyptusAPI與EC2是兼容的。Elasticfox的特性:列出可用的機器鏡像;列出正在運行的實例:啟動一個新的AMI/EMI實例;管理安全組和規(guī)則;管理快照/EBS卷。
$euca-describe-instances
4.3運行實例時注意事項
在啟動時.實例處在掛起狀態(tài),一段時間后,處在運行狀態(tài),這個時候,客戶可以使用CentOS操作系統(tǒng)。一個實例要結(jié)束,首先進(jìn)入關(guān)閉狀態(tài),然后結(jié)束。
5、結(jié)論
本文對于使用開源軟件構(gòu)建基于Eucalyptur架構(gòu)提供IaaS服務(wù)的私有云提供了一種設(shè)計方案,并詳細(xì)描述了使用開源操作系統(tǒng)Ubuntu Server具體的實施過程。這種設(shè)計具有快速、簡單、費用少、維護(hù)簡單特點,并可在合適的時候遷移到公有云上。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:利用Eucalyptus和開源操作系統(tǒng)構(gòu)建私有云
本文網(wǎng)址:http://www.ezxoed.cn/html/support/11121512706.html