天天看點

在私有雲和混合雲中使用OpenStack容器服務

基于容器的虛拟化會影響it的所有部分,包括雲軟體堆棧。 是以,openstack社群開發了一系列服務子產品,使得在基于openstack的私有雲或混合雲上打開運作密集打包的容器執行個體成為可能。

magnum是openstack容器箱項目,已經存在兩年了。它被認為是運作容器軟體(例如docker swarm、kubernetes和apache mesos)的一種方式,并允許機構在openstack上編排容器。magnum是一個靈活的工具,例如,允許使用swarm的os鏡像在裸機或虛拟機上運作。

openstack magnum在nova執行個體中建構容器結構。該服務通常使用輕量級的作業系統(如core os或fedora atomic)來支援docker。這個執行個體也包括适當的編排器——swarm、kubernetes或mesos。openstack magnum在heat中建立一個控制結構來識别執行個體和容器。這種方法允許管理者通過openstack項目的核心組合使用具有必要的存儲、應用程式鏡像和網絡連接配接的heat模闆。magnum還支援neutron負載均衡器。

在私有雲和混合雲中使用OpenStack容器服務

openstack容器的新進展

最新版本的openstack ocata推出了新功能來幫助部署和管理容器,包括:

kolla:一種容器化的openstack服務,允許三個主要的容器編排程式 —— docker swarm、kubernetes和apache mesos在openstack中運作,并與其他子產品進行互動。

kuryr:将容器連接配接到neutron,以便虛拟網絡與其他容器、虛拟機執行個體和外部世界的互連。 它現在支援docker swarm。

fuxi:kuryr的一個子項目,允許容器通路cinder塊存儲和manila共享存儲。

zun:一個openstack容器管理服務。openstack wiki将zun定義為magnum的原始意圖,而magnum已經管理為主持上述的三大容器編排引擎。

kuryr和fuxi提供網絡和存儲連接配接,将容器從有限的環境移動到全應用程式環境。綜上所述,前面列出的前三個子產品允許一組容器互動并共享和存儲資料。

現在kolla支援三大容器編排引擎,zun是openstack專有的建立容器和管理其生命周期的方式。這在混合雲中可能用不着,因為容器及其相關的作業系統和應用程式鏡像的可移植性對于平滑和高效的操作至關重要。

在kolla使用标準的編排環境應該有助于遷移到公有雲容器服務。murano子產品中容器支援的模闆和圖像應可以在混合雲中運作。但是,支援跨雲處理所需的api仍然存在缺陷。

有了這些新功能,與使用puppet或ansible從頭開始建構相比,magnum成為openstack容器部署的一個更簡單的方法。盡管如此,openstack magnum和diy方法更多的是devops級别的任務,而不是最終使用者、政策驅動的過程。

openstack容器服務的下一步

openstack使用的上司者之一是cern。該組織基于openstack magnum建立了一個1000節點的叢集,最近每秒的kubernetes請求數可以達到700萬個。 cern的項目反映了在openstack中擴充kubernetes的進展,而且kubernetes繼續在進步。

盡管如此,openstack容器服務仍然有待成熟。project navigator是所有官方openstack項目的指南,它提供了對項目成熟度和使用率的客觀衡量。

目前,根據project navigator,openstack magnum在八個成熟度中排名第二,被用于11%的openstack安裝。很明顯,openstack magnum還沒有涵蓋所有的基礎,例如,與認證的內建較弱。

其他關鍵整合還處于起步階段。舉例來說,與ansible和puppet的進一步整合

對這些管理環境擴充到openstack容器世界而言是必要的。此外,如果工作負載開始從中央it管理者轉移到部門使用者,容器編排的簡化控制機制是至關重要的。擴充到模闆系統和基于政策的管理是此任務的一部分。

容器技術飛速發展,openstack必須趕上。這就意味着magnum和相關的openstack容器項目的成熟度和穩定性将在2017年持續改善。

本文作者:佚名

來源:51cto