龍芯平臺openstack服務介紹
1. Openstack簡介
雲端計算中的雲可以簡單地理解為任何可以通過網際網路訪問的服務,根據所提供的服務的型別可分為IaaS(基礎架構即服務),PaaS(平臺即服務),SaaS(軟體即服務)三種類型。
openstack就是IaaS型別的雲服務。它是由NASA和Rackspace合作研發併發起的,以Apache許可證授權的開放原始碼的雲端計算管理平臺專案,可支援幾乎所有型別的雲環境。該專案由幾個主要的元件組合起來完成具體工作,通過互補的服務提供了基礎設施即服務(IaaS)的解決方案。
本質上,openstack服務是一個使用者層的軟體系統,它包含多個服務和應用程式。這些服務和程式被部署到多臺被管理的物理主機上,這些物理主機通過網路相連從而形成一個大的分散式系統。openstack服務要解決的問題就是如何自動管理這些物理主機上虛擬出來的物理機(也有可能是直接管理物理機),包括虛擬機器建立、遷移、關閉,虛擬儲存的建立和維護,虛擬網路的管理,還包括監控計費、負載均衡、高可用性、安全等。
2. openstack體系架構
openstack由多個服務組成,基本服務架構如下圖1所示:
圖 1 openstack服務架構。
上圖涵蓋了openstack的8個主要服務,相關服務的介紹參考表格1:
服務名 | 專案名稱 | 簡介 |
---|---|---|
Dashboard | Horizon | 為所有openstack服務提供一個WEB管理介面。 |
Compute | Nova | 根據需求提供虛擬機器(或者物理機)。 |
Networking | Neutron | 提供網路連線服務。 |
Object Storage | Swift | 物件儲存服務,提供儲存和檢索物件服務。 |
Block Storage | Cinder | 塊儲存服務。 |
Identity | Keystone | 認證服務,為所有openstack服務提供身份驗證和授權。 |
Image | Glance | 映象管理服務。 |
Telemetry | Ceilometer | 監控計費服務。 |
表格 1 openstack主要服務元件
3. 龍芯平臺上openstack服務現狀
3.1 龍芯平臺虛擬化技術方案 目前龍芯平臺已支援Qemu/kvm虛擬化方案,未來將增加對docker的支援。kvm負責cpu虛擬化和記憶體虛擬化,Qemu負責模擬IO裝置(網絡卡,磁碟),kvm加上Qemu實現真正意義上伺服器虛擬化。 在龍芯平臺上採用libvirt作為kvm虛擬化技術和openstack服務之間的中間層,提供虛擬化管理介面,實現快速、便捷的虛擬機器管理操作。
3.2 openstack服務部署及測試狀況 目前,在龍芯平臺上已經成功部署並測試了工作在legacy network和neutron網路模式下的openstack服務。其中legacy network網路模式的openstack服務已經在公司雲端計算相關專案中成功通過專案驗收。neutron網路模式的openstack服務也已經成功通過內部測試。 龍芯平臺上的相關元件支援情況如下:
序號 | 元件名 | 測試狀態 | 支援狀態 |
---|---|---|---|
1 | Keystone | 已測試 | Yes |
2 | Nova | 已測試 | Yes |
3 | Glance | 已測試 | Yes |
4 | Horizon | 已測試 | Yes |
5 | neutron | 已測試 | Yes |
6 | 其他(swift etc) | 待測試 | - |
3.3 openstack服務的訪問 目前,使用者可以通過dashboard訪問openstack平臺,並進行相應操作。例如建立和管理例項、建立和管理租戶網路、雲映象的管理、VNC訪問例項控制檯、配置安全組等。 以下為一組通過dashboard介面管理和操作的截圖:
圖 2 當前openstack環境的概況
圖 3 虛擬機器管理統計資訊
圖 4 已經建立的例項ysy001
圖 5 例項的概況
圖 6 例項控制檯
4. 新的neutron環境的一些優點
相比較於工作在legacy network網路模式下的openstack服務,新的neutron網路模式openstack服務實現了以下幾個方面的優化:
穩定性:升級了host系統版本,同時解決了nova-network平臺中存在的一些潛在bug,使得新的雲平臺魯棒性更高。
安全性:優化了雲平臺防火牆規則,大大提高了新的雲平臺的安全性。
可用性:由於neutron網路環境集成了強大的網路管理能力,使得新的雲平臺在網路劃分,防火牆負載均衡等方面更加靈活。同時,在新的雲平臺定製了基於fedora21的新的雲映象,使得使用者對guest系統的可選擇性提高。