新聞中心
將Kubernetes引入到裸機邊緣
譯文
作者:布加迪編譯 2019-04-01 09:17:23
云計算 Kubespray是為Kubernetes集群的部署和管理提供Ansible劇本(playbook)的社區(qū)項目,最近增加了支持裸機云Packet的功能。這使得Kubernetes集群可以部署在下一代邊緣位置,包括基于手機信號塔的微型數(shù)據(jù)中心。

【51CTO.com快譯】Kubespray是為Kubernetes集群的部署和管理提供Ansible劇本(playbook)的社區(qū)項目,最近增加了支持裸機云Packet的功能。這使得Kubernetes集群可以部署在下一代邊緣位置,包括基于手機信號塔的微型數(shù)據(jù)中心。
Packet的獨特之處在于側(cè)重裸機,它擴大了Kubespray的支持范圍,不僅僅支持平常的云:亞馬遜網(wǎng)絡服務、谷歌計算引擎、Azure、OpenStack、vSphere和Oracle云基礎設施。Kubespray使用Terraform和Ansible,借助自動化消除了安裝Kubernetes集群的復雜性。Terraform提供了基礎設施,并安裝了安裝Ansible所需的必備組件。Terraform provider插件能夠支持眾多不同的云提供商。Ansible劇本隨后部署和配置Kubernetes。
由于網(wǎng)上已有將Kubespray部署在Packet上的詳細說明(https://github.com/kubernetes-sigs/kubespray/blob/master/docs/packet.md),我將著重介紹為何裸機支持對Kubernetes來說很重要以及所需的必要條件。
為何支持裸機?
在過去,Kubernetes部署依賴公共云或完全托管版私有云的“舒適工具”(creature comforts),提供用于運行Kubernetes的虛擬機和網(wǎng)絡基礎設施。這增加了一層抽象(比如帶虛擬機的虛擬機管理程序),Kubernetes未必需要這層抽象。事實上,Kubernetes一開始就駐留在裸機上(那時叫谷歌的Borg)。
隨著我們讓工作負載更靠近最終用戶(以邊緣計算的形式),并部署到更多樣化的環(huán)境(包括不同架構和大小的混合和本地基礎設施),依賴同樣的公共云底層并非總是可行或理想。比如說,由于邊緣位置受資源限制,直接在裸機上運行Kubernetes更高效、更實際。
注意不足
如果裸機集群下面沒有功能齊全的公共云,就需要直接在Kubernetes集群中管理一些傳統(tǒng)功能,比如負載均衡和存儲編排功能。幸好有一些項目(比如MetalLB和Rook)為Kubernetes提供了這種支持。
MetalLB是第2層和第3層負載均衡系統(tǒng),集成到Kubespray中,很容易在裸機集群上安裝支持Rook的機制,Rook負責編排Ceph,為Kubernetes集群提供分布式復制存儲。除了支持全部功能外,這種“自備”的存儲和負載均衡方法還擺脫了對特定云服務的依賴,幫助你借助可在任何地方安裝的方法來避免鎖定。
Kubespray支持ARM64處理器。ARM架構(開始經(jīng)常出現(xiàn)在數(shù)據(jù)中心級硬件、SmartNIC及其他定制的加速器中)在移動和嵌入式設備有著悠久的歷史,非常適合部署在邊緣。
展望未來,我希望看到MetalLB與Rook更深入地集成,另外在眾多不同的硬件配置上對日常構建版本實行裸機持續(xù)集成(CI)。訪問Packet的自動化裸機能夠支持跨多種處理器、存儲方案和網(wǎng)絡環(huán)境來進行測試和維護。這將有助于確保可以跨公共云、裸機和邊緣環(huán)境來妥善地部署和管理基于Kubespray的Kubernetes。
需要社區(qū)
Kubespray是一個社區(qū)推動的開源項目,離不開核心開發(fā)人員和貢獻者以及協(xié)助Packet集成的人員。貢獻者包括負責初始提交和代碼審查的Maxime Guyot和Aivars Sterns、負責文檔審查的Rong Zhang和Ed Vielmetti以及維護Packet Go庫和Terraform provider的Tomá? Karásek。
文章標題:將Kubernetes引入到裸機邊緣
鏈接分享:http://www.5511xx.com/article/cdepdei.html


咨詢
建站咨詢
