開源云計算平臺CloudStack架構(gòu)淺析
什么是CloudStack
CloudStack是一個開源的具有高可用性及擴展性的云計算平臺。目前CloudStack支持管理大部分主流的hypervisors,如 KVM,XenServer,VMware,Oracle VM,Xen等。同時CloudStack是一個開源云計算解決方案??梢约铀俑呱炜s性的公共和私有云(IaaS)的部署、管理、配置。使用 CloudStack作為基礎(chǔ),數(shù)據(jù)中心操作者可以快速方便的通過現(xiàn)存基礎(chǔ)架構(gòu)創(chuàng)建云服務(wù)。
CloudStack概念架構(gòu)
用戶:通過網(wǎng)絡(luò)訪問屬于我的虛擬機、存儲空間、管理我的個人模板。
管理員:部署配置,管理賬戶,監(jiān)控資源,安排作業(yè),排除故障
開發(fā)人員:開發(fā)計費、監(jiān)控、統(tǒng)計報表等功能模塊,定制圖形界面、工作流
CloudStack部署架構(gòu)
Zone:Zone 對應(yīng)于現(xiàn)實中的一個數(shù)據(jù)中心,它是 CloudStack 中***的一個單元。
Pod:Pod 對應(yīng)著一個機架。同一個 pod 中的機器在同一個子網(wǎng)(網(wǎng)段)中。
Cluster:Cluster 是多個主機組成的一個集群。同一個 cluster 中的主機有相同的硬件,相同的 Hypervisor,和共用同樣的存儲。同一個 cluster 中的虛擬機,可以實現(xiàn)無中斷服務(wù)地從一個主機遷移到另外一個上。
Host:Host 就是運行虛擬機(VM)的主機。
即從包含關(guān)系上來說,一個 zone 包含多個 pod,一個 pod 包含多個 cluster,一個 cluster 包含多個 host。
Primary storage:一級存儲與 cluster 關(guān)聯(lián),它為該 cluster 中的主機的全部虛擬機提供磁盤卷。一個 cluster 至少有一個一級存儲,且在部署時位置要臨近主機以提供高性能。
Secondary storage:二級存儲與 zone 關(guān)聯(lián),它存儲模板文件,ISO 鏡像和磁盤卷快照。
模板:可以啟動虛擬機的操作系統(tǒng)鏡像,也包括了諸如已安裝應(yīng)用的其余配置信息。
ISO 鏡像:包含操作系統(tǒng)數(shù)據(jù)或啟動媒質(zhì)的磁盤鏡像。
磁盤卷快照:虛擬機數(shù)據(jù)的已儲存副本,能用于數(shù)據(jù)恢復(fù)或者創(chuàng)建新模板。
CloudStack的軟件架構(gòu)
下圖是CloudStack的軟件架構(gòu):
#p#
CloudStack跟KVM一起部署的架構(gòu)
下圖是CloudStack跟kvm一起部署的架構(gòu):
在每個kvm的宿主機上都需要部署agent程序。
CloudStack跟vsphere一起部署的架構(gòu)
下圖是CloudStack跟vsphere一起部署的架構(gòu):
如果部署vmware的產(chǎn)品就必須部署vcenter server。
CloudStack支持的存儲類型
下圖是CloudStack所支持的存儲類型:
CloudStack的API
- Web Services
- REST架構(gòu)
- 支持POST / GET請求
- 返回XML或JSON響應(yīng)格式
- root管理員、域管理員和用戶
CloudStack和OpenStack的比較
下面我們就來看一來兩大云平臺的比較: