面向虛擬基礎設施的雲服務Eucalyptus

來源:互聯網
上載者:User
關鍵字 運行 安裝 可以 這些

Eucalyptus

 

Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) 是一種開源的軟體基礎結構,用來通過計算集群或工作站群 實現彈性的、實用的雲計算。 它最初是美國加利福尼亞大學 Santa Barbara 電腦科學學院的一個研究專案,現在已經商業化,發展成為了 Eucalyptus Systems Inc。 不過,Eucalyptus 仍然按開源專案那樣維護和開發。 Eucalyptus Systems 還在基於開源的 Eucalyptus 構建額外的產品;它還提供支援服務。

不管是原始程式碼還是包安裝,Eucalyptus 很容易安裝在現今大多數 Linux® 發佈版上。 它提供了如下這些高級特性:

與 EC2 和 S3 的介面相容性(SOAP 介面和 REST 介面)。 使用這些介面的幾乎所有現有工具都將可以與基於 Eucalyptus 的雲協作。 支援運行在 Xen hypervisor 或 KVM 之上的 VM 的運行。 未來版本還有望支援其他類型的 VM,比如 VMware。 用來進行系統管理和使用者結算的雲管理工具。 能夠將多個分別具有各自私有的內部網路位址的集群配置到一個雲內。

架構

Eucalyptus 包含五個主要元件,它們能相互協作共同提供所需的雲服務。 這些元件使用具有 WS-Security 的 SOAP 訊息傳遞安全地相互通信。

Cloud Controller (CLC) 在 Eucalyptus 雲內,這是主要的控制器元件,負責管理整個系統。 它是所有使用者和管理員進入 Eucalyptus 雲的主要入口。 所有客戶機通過基於 SOAP 或 REST 的 API 只與 CLC 通信。 由 CLC 負責將請求傳遞給正確的元件、收集它們並將來自這些元件的回應發送回至該客戶機。 這是 Eucalyptus 雲的對外 「視窗」。 Cluster Controller (CC) Eucalyptus 內的這個控制器元件負責管理整個虛擬實例網路。 請求通過基於 SOAP 或 REST 的介面被送至 CC。 CC 維護有關運行在系統內的 Node Controller 的全部資訊,並負責控制這些實例的生命週期。 它將開啟虛擬實例的請求路由到具有可用資源的 Node Controller。 Node Controller (NC) 它控制主機作業系統及相應的 hypervisor(Xen 或最近的 KVM,很快就會支援 VMWare)。 必須在託管了實際的虛擬實例(根據來自 CC 的請求具現化)的每個機器上運行 NC 的一個實例。 Walrus (W) 這個控制器元件管理對 Eucalyptus 內的存儲服務的訪問。 請求通過基於 SOAP 或 REST 的介面傳遞至 Walrus。 Storage Controller (SC) Eucalyptus 內的這個存儲服務實現 Amazon 的 S3 介面。 SC 與 Walrus 聯合工作,用於存儲和訪問虛擬機器映射、內核映射、RAM 磁碟映射和使用者資料。 其中,VM 映射可以是公共的,也可以是私有的,並最初以壓縮和加密的格式存儲。 這些映射只有在某個節點需要啟動一個新的實例並請求訪問此映射時才會被解密。

一個 Eucalyptus 雲安裝可以聚合和管理來自一個或多個集群的資源。 一個集群 是連接到相同 LAN 的一組機器。 在一個集群中,可以有一個或多個 NC 實例,每個實例管理虛擬實例的具現化和終止。

在一個單一集群的安裝中,如圖 3 所示,將至少包含兩個機器:一個機器運行 CC、SC 和 CLC;另一個機器運行 NC。 這種配置主要適合於試驗的目的以及快速配置的目的。 通過將所有東西都組合到一個機器內,還可以進一步簡化,但這個機器需要非常健壯才能這樣做。

圖 3. 一個單集群 Eucalyptus 安裝的拓撲

在多集群安裝中,可以將各個元件(CC、SC、 NC 和 CLC)放置在單獨的機器上。 如果想要用它來執行重大的任務,那麼這麼做就是一種配置 Eucalyptus 雲的理想方式。 多集群安裝還能通過選擇與其上運行的控制器類型相適應的機器來顯著提高性能。 比如,可以選擇一個具有超快 CPU 的機器來運行 CLC。 多集群的結果是可用性的提高、負載和資源的跨集群分佈。 集群的概念類似于 Amazon EC2 內的可用性區域的概念。 資源可以跨多個可用性區域分配,這樣一來,一個區域內的故障不會影響到整個應用程式。 圖 4 給出了一個例子。

圖 4. 一個多集群 Eucalyptus 安裝的拓撲

在將 Eucalyptus 安裝並應用到您的基礎設施上之前,需要考慮硬體要求。 雖然出於試驗目的,可以在一個筆記本電腦上運行全部內容,但是對於一個實際的部署場景,多集群無疑是一個更好的選擇。 如下所列的是 Ubuntu 管理員對硬體設定方面的一些指導。 這些指導可廣泛應用於任何的 Linux 發佈版(不只是 Ubuntu)。

下面的指標是對用來運行 CC、CLC、Walrus 或 SC 的機器的建議配置。

硬體最低建議CPU1 GHz2 x 2GHz記憶體512 MB2 GB硬碟5400rpm IDE7200rpm SATA磁碟空間40 GB200 GB聯網100 Mbps1000 Mbps

運行 NC 的機器需要更為強大,因為這些機器將會運行每個虛擬實例。 它們還需要充足的磁碟空間來存儲啟動實例所需的映射。 運行 NC 的這些機器最好是多核的、記憶體至少 4 GB、使用高速磁片磁碟機。 如下是一些建議指標。

硬體最低建議CPUVT 擴展VT,64-位,多核記憶體1 GB4 GB磁片5400rpm IDE7200rpm SATA 或 SCSI磁碟空間40 GB100 GB聯網100 Mbps1000 Mbps

可用性和安裝

在我寫作本文之時,Eucalyptus 的最新版本是 1.6。 您可以通過使用由該專案託管的免費公共實例 ucalyptus Public Cloud (EPC) 立即體驗 Eucalyptus。 EPC 具有有限的資源,所以對能夠啟用的實例的數量以及能夠使用的存儲量都是有限制的。 但是,它仍然是一個很好的體驗 Eucalyptus 和瞭解該環境的途徑。

Eucalyptus 可以從原始程式碼安裝,也可以從面向特定 Linux 發佈版的包安裝。 從原始程式碼安裝雖然複雜一些,但可工作于幾乎所有的 Linux 最新版本。 包安裝雖然簡便,但只適用于 Redhat 和基於 Debian 的發佈版。 更詳細的安裝指導,請參考 Eucalyptus 管理員指南。 安裝 Eucalyptus 最為簡單的方法是安裝 Ubuntu Linux 發佈版的最新版本 Karmic Koalad,並充分利用 Ubuntu Enterprise Cloud,它能提供對運行基於 Eucalyptus 的雲的完整支援。

Eucalyptus 和 Ubuntu Enterprise Cloud

Ubuntu Enterprise Cloud (UEC) 是一個由 Ubuntu 提出的新的開源計畫,旨在進一步簡化基於 Eucalyptus 的雲基礎設施的部署、配置和使用。 UEC 簡化了如下內容:

創建能夠在 Amazon 的 EC2 基礎設施上運行 Eucalyptus 的公共雲 創建能夠在位於防火牆之後的資料中心內部的基礎設施之上運行的私有雲

這是到目前為止最為簡單的安裝和嘗試使用 Eucalyptus 的方式。 只需下載 CD 伺服器版並將其安裝在任何想要的地方。 UEC 也是第一個允許在本地環境輕鬆創建雲服務並進而利用雲計算強大功能的開源專案。

Eucalyptus 的益處

Eucalyptus 是一個具有優良架構的雲服務環境,可用來在 Amazon 的 EC2 基礎設施上創建一個公共雲,或者在您的資料中心(甚至是筆記本電腦)內創建私有雲。 如果您正在考量在您的團隊或組織內使用雲計算,那麼 Eucalyptus 非常值得您考慮用作雲服務平臺。 它提供了如下一些好處。

開源和開發 Eucalyptus 的創建是為了促進雲計算平臺方面的交流和研究。 它以原始程式碼的形式提供免費使用,這就使得您很容易透過其表面看到它的實質,或是針對自己的需求創建該平臺的擴展。 開發的步調很快。 特性以及改進不斷被添加到 Eucalyptus。 傑出社區 Eucalyptus 具有一個由願意與他人免費共用自己見地的熱情而博學的使用者組成的傑出社區。 他們的論壇是您獲得支援並與其他 Eucalyptus 使用者交互的一個很好的途徑。 公共雲 Eucalyptus 可很容易地作為一個公共雲安裝和運行在 Amazon 的 EC2 框架上。 私有雲 Eucalyptus 可被作為運行在您的基礎設施之上的私有雲安裝于防火牆後的資料中心內。 這樣,您就獲得了對安全性和環境的全面控制。 可攜性 得益于 Eucalyptus 與 Amazon 的 EC2 API 的相容性以及 Eucalyptus 的靈活性,可以很容易地將應用程式從一個雲遷移到另一個雲。 甚至可以創建混合雲來同時使用公共和私有雲。 經過了良好的測試 Eucalyptus 現在是 Ubuntu Enterprise Cloud 的一部分,並且是全球數千個 Ubuntu 伺服器的一個元件。 這種測試規模將會很快鞏固 Eucalyptus 平臺的穩定性。 商業支援 如果您需要超出論壇所能提供的更快的支援,對於基於 Eucalyptus 的雲還有商業支援可用。

結束語

在本文中,您瞭解了 Infrastructure as a Service (IaaS) 雲計算環境。 您還探究了可用來創建公共或私有雲基礎設施的開源 Eucalyptus 專案。

本系列的第 2 部分將著眼于 Platform as a Service (PaaS) 雲環境以及 Appscale,一個用來運行 Google App Engine 應用程式的開源專案。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.