OpenStack Magnum 專案簡介

2021-07-03 01:22:23 字數 1044 閱讀 9748

magnum 專案是 2014 年 11 月加入 openstack 的年輕專案,由 rackspace主導發起,其定位是提供容器即服務(container as a service)的 api 框架,計畫在 2015 年 10 月推出的liberty版本時成熟。

我們知道,目前 openstack 中 nova 專案已經通過 nova-docker 的形式支援了 docker 容器(把容器當虛機管)。但在實際使用中,會發現有不少的問題。畢竟,nova 設計的初衷是管理虛擬機器,而容器跟虛擬機器在行為和特性上存在較大的不同,無論是管理層還是底層的虛擬化支援層都完全不同。而且,讓 nova 支援各種各樣的容器機制(docker、openvz、rocket、lxc 等)要進行修改的地方著實不少,可能跟現有框架形成衝突。

此外,heat 專案也支援 docker 官方外掛程式,來直接通過 docker 的 rest api 來管理容器,並且支援容器的高階特性。然而,不支援資源的排程和網路功能。

社群之所以接收 magnum 專案,一方面是容器技術現在著實火熱,另一方面,也是往更高一層發展提供更好的支援。

magnum 在設計上,希望呼叫其它的容器管理平台的 api 來實現功能,自身作為一套 api 框架,目前支援 docker、kubernetes、swarm 等。主要優勢包括多租戶、多後端框架、完善的容器功能、支援資源排程等。

如果說 nova 是一套支援不同 hypervisor (kvm、vmware 等虛擬機器平台)的 api 框架,那麼 magnum 則是支援不同容器機制的 api 框架。

從小往大的順序:

下面幾個是來自 kubernetes 中的概念。

主要服務有兩個,magnum api 和 magnum conductor。

前者提供呼叫的介面,接收 python-magnumclient 的請求。可以同時執行乙個或者多個例項。這些請求最終扔給 amqp 訊息佇列,傳送到 magnum-conductor 服務。

後者執行在控制節點上,具體負責將 client 的請求**到具體的後端機制(kubernetes api 或者 docker api),目前限制只能存在乙個例項。

JS簡簡簡易時鐘

簡易時鐘 1 搭建html css部分 插入時鐘背景,使用子絕父相。把時針和分針 秒針的樣式放在時鐘的中心位置 2 js邏輯部分 1 獲取時針 分針 秒針 var hour document.getelementbyid hour var min document.getelementbyid mi...

react簡書專案學習筆記21redux使用的原則

1.store是唯一的 2.只用store可以該變state裡的內容 reducer不能直接更新state,只是返回乙個新的state給store,讓store去改變 3.reducer必須是乙個純函式 純函式 給定固定的輸入就一定有固定的輸出,而且不會有 當函式中有非同步操作或和日期相關的操作的時...

專案經理極簡主義神器 一頁紙專案管理

為什麼要一頁紙專案管理 人人都是產品經理社群推薦了 美 克拉克著的 一頁紙專案管理 雖然是小 一張,但麻雀雖小五臟俱全。製作一頁紙的專案管理表 圖1位製作一頁紙的專案管理表,包含了幾個重要的要素,專案的領導 專案名稱 專案目標 專案的結束時間 專案的主要任務 專案的負責人 優先順序等,這些表頭部分比...