openstack的服務定義比起openstack的實際組件構成簡單的多,而所有的openstack服務彼此依賴,帶來了服務生命周期管理的復雜性和低效。(計算機網絡維護)
比如openstack的鑒權服務keystone,在已有環境上部署一個新的keystone是否會對其他服務帶來兼容性問題 是很難判斷的。用現在的工具,也是難以進行回退的。 事實上,并非只有openstack是這樣的,很多基礎設施平臺或者應用平臺都有類似的問題。
openstack生命周期管理的方式
主要分為兩類:基于包、基于image
基于包
通常使用PXE,并搭配puppet、chef、Ansilbe這樣的配置工具。基于包的方式是低效的,原因如下:
操作系統、物理節點的差異性
合布時服務間的沖突(ports,文件系統等)
安裝速度(大規模部署時,通過網絡下載包安裝)
也許有人會提虛擬機+包的方式,但是:
虛擬機比較重(內存、CPU、磁盤占用。啟動速度)
虛擬機缺乏metadata注入手段(或者需要額外的組件和代理完成這個事情)
基于image
解決了安裝速度慢的問題,通常會有倉庫存放image,直接下載到物理硬件上。
但是,由于image很大,基于image的方式,增量更新仍然很緩慢。
另外,基于iamge的方式并未解決opesntack服務間的復雜性問題。只是將問題提前到構建鏡像時。
除此之外,運維人員還會希望這個openstack生命周期管理系統,能夠跨bare metal、IaaS、甚至PaaS。(網管外包)
Atomic、Docker、Kubernetes帶來了什么
如果有一個openstack服務的生命周期管理方案能帶來以下優點:
隔離、輕量、便攜、可分離
運行態的服務關系易于描述
易于運行、易于更新
獨立于openstack之外管理服務的生命周期
這正是docker、atomic、kubernetes組合方案所能提供的。(IT外包)
Docker提供了對linux容器的抽象,并提供了一種鏡像格式。通過這種鏡像格式,可以方便的分享并提供鏡像間的層次關系。另外docker還提供了docker倉庫來分享docker鏡像。 這種方式很重要,因為開發者可以發布便攜的容器鏡像,維護人員將之部署在不同的平臺。
kubernetes是開源的容器集群管理平臺。它使用master/minion結構提供給了容器的調度能力。開發者可以使用聲明式語法描述容器間關系,并讓集群管理進行調度。
Atomic項目提供給了一個安全、穩定、高性能的容器運行環境。Atomic包含了kubernetes和docker,并運行用戶使用新的軟件更新機制ostree。
將以上三者結合起來的方案就像上圖。openstack開發者使用自己熟悉的環境進行開發(linux/vagrant/libvirt),然后向倉庫提交服務鏡像。運維人員將kubernetes配置導入生命周期管理工具,然后啟動pods和services。容器鏡像會被下載到本地并部署這些 openstack服務。由于服務是隔離的,我們可以在單臺機器上最大化密度地部署openstack服務。除此之外還有其他優點,比如回滾、部署、更新的速度等。
艾銻無限是中國領先IT外包服務商,專業為企業提供IT運維外包、電腦維護、網絡維護、網絡布線、辦公設備維護、服務器維護、數據備份恢復、門禁監控、網站建設等多項IT服務外包,服務熱線:400-650-7820 聯系電話:010-62684652 咨詢QQ1548853602 地址:北京市海淀區北京科技會展2號樓16D,用心服務每一天,為企業的發展提升更高的效率,創造更大的價值。
更多的IT外包信息盡在艾銻無限http://www.dyfgwiyq.cn
相關文章