Firefox apache 编程 php 微软 Android linux 程序员 Python wordpress java google nginx Ubuntu centos 开源 Windows mysql 云计算 shell

雲計算 OpenNebula的架構

OpenNebula是一款為雲計算而打造的開源工具箱。它允許你與Xen,KVM或VMware ESX一起建立和管理私有雲,同時還提供Deltacloud適配器與Amazon EC2相配合來管理混合雲。除了像Amazon一樣的商業雲服務提供商,在不同OpenNebula實例上運行私有雲的Amazon合作夥伴也同樣可以作為遠程雲服務供應商。

目前版本,可支持XEN、KVM和VMware,以及實時存取EC2和 ElasticHosts,它也支持印象檔的傳輸、復制和虛擬網絡管理網絡。

 云计算 OpenNebula的架构

图1  OpenNebula总体架构图

OpenNebula可以構建私有雲、混合雲、公開雲。

私有雲

私有雲的目的是給本地的用戶和管理員提供了一個靈活和敏捷的私人基礎設施,以在可管理的域內運行虛擬化服務。 OpenNebula虛擬基礎設施暴露虛擬化、網絡、圖像和物理資源的配置、管理、監督和會計的功能接口。

云计算 OpenNebula的架构

图2 私有云

一個OpenNebula私有雲為平臺基礎設施的用戶提供了一個快速交付和可擴展性的平臺,以滿足最終用戶的動態需求。服務托管在虛擬機,然後提交,監視和被雲控制,通過使用OpenNebula運營中心或OpenNebula的任何接口。

云计算 OpenNebula的架构

图3 私有云内用户视图

 

混合雲

OpenNebula提供Deltacloud適配器與Amazon EC2相配合來管理混合雲。

 云计算 OpenNebula的架构

图4 混合云

 

公開雲

OpenNebula公有雲是私有雲的一個擴展,是在私有雲的基礎上對外暴露REST接口。如果你要讓合作夥伴或外部用戶能夠訪問您的基礎設施,或出售你的服務,雲接口可以被添加到您的私有或混合雲。顯然,一個本地的雲解決方案是任何公共雲自然後端。

 云计算 OpenNebula的架构

图5 公开云

OpenNebula的構架包括三個部分:驅動層、核心層、工具層。驅動層直接與操作系統打交道,負責虛擬機的創建、啟動和關閉,為虛擬機分配存儲,監控物理機和虛擬機的運行狀況。核心層負責對虛擬機、存儲設備、虛擬網絡等進行管理。工具層通過命令行界面/瀏覽器界面方式提供用戶交互接口,通過API方式提供程序調用接口。

云计算 OpenNebula的架构

图6 三层架构图

 云计算 OpenNebula的架构

OpenNebula使用共享存儲設備(例如NFS)來提供虛擬機映像服務,使得每一個計算節點都能夠訪問到相同的虛擬機映像資源。當用戶需要啟動或者是關閉某個虛擬機時,OpenNebula通過ssh登陸到計算節點,在計算節點上直接運行相對應的虛擬化管理命令。這種模式也稱為無代理模式,由於不需要在計算節點上安裝額外的軟件(或者服務),系統的復雜度也相對降低了。

 云计算 OpenNebula的架构

图7 前端节点和集群节点之间交互

 

網絡架構

OpenNebula使用橋連接來構建虛擬網絡,每個節點的ip和MAC地址在一定範圍內生成。一個網絡會連接到一個特定的橋。每一個網絡有他自己的擁有者並且可以對外公開或私有。每一個虛擬網絡之間是相互隔離的。

虛擬網絡裏使用Ebtables來過濾數據鏈路層數據包。

延伸阅读

评论