云原生集成開發(fā)環(huán)境——TitanIDE
通過網(wǎng)頁在任何地方更安全、更高效地編碼2022-06-29
648
原文作者:Kendall Miller
原文譯自:CNCF(云原生基金會)
Kubernetes 作為一種技術(shù),使企業(yè)能夠跨不同的云基礎(chǔ)設(shè)施和分布大規(guī)模地運(yùn)行容器化應(yīng)用程序,它暫時不能做的是以合規(guī)和可靠的方式集中管理大量現(xiàn)成的集群。這一事實(shí)使得在不同集群之間實(shí)現(xiàn)治理和標(biāo)準(zhǔn)化變得困難,更不用說它扼殺了創(chuàng)新。但隨著新集群規(guī)模的不斷擴(kuò)大,尋找簡化多集群管理的新方法將成為云計算成功的關(guān)鍵。
多集群管理
有效的多集群管理意味著將減少兩處成本——重復(fù)性工作和運(yùn)營開銷。此外,有效多集群管理還涉及建立正確的框架來發(fā)展現(xiàn)有的治理模型,以減少跨集群生命周期管理中的成本和重復(fù)性工作。但是,如果在集群數(shù)量不斷增加的企業(yè)環(huán)境中運(yùn)行,并且所有集群都獨(dú)立管理且?guī)缀鯖]有統(tǒng)一性,那么簡化此管理流程的復(fù)雜性可能會成為業(yè)務(wù)成功的巨大障礙。
隨著 Kubernetes 集群數(shù)量的增長,企業(yè)被迫花費(fèi)越來越多的時間進(jìn)行管理,于是用于業(yè)務(wù)生產(chǎn)的時間便越少。他們需要的是一種在發(fā)現(xiàn)不同集群時集中查看、管理和整合它們的方法,以便在不浪費(fèi)寶貴時間的情況下正確優(yōu)化資源和處理問題。
精簡集群的步驟
如果您的團(tuán)隊正在為多集群 Kubernetes 苦苦掙扎,請不要驚慌。推薦采取以下三個基本步驟來減少一次管理多個集群所花費(fèi)的時間和資源。
1、采用零信任方式。此安全模型假定網(wǎng)絡(luò)中和網(wǎng)絡(luò)之間的所有系統(tǒng)、服務(wù)和用戶都不會自動被信任和授予訪問權(quán)限。Kubernetes 包括實(shí)現(xiàn)對每個集群的這種級別的控制訪問所需的所有聯(lián)動,利用了身份驗證、授權(quán)、加密和配置驗證等技術(shù)。將零信任原則應(yīng)用于您的 Kubernetes 環(huán)境意味著控制對 API 服務(wù)器的訪問,這是每個集群的 Kubernetes 控制平面的核心。由于 API 調(diào)用用于查詢命名空間、Pod 和配置映射等對象,因此控制對 API 使用的訪問是保護(hù)工作負(fù)載和實(shí)現(xiàn) Kubernetes 零信任的關(guān)鍵。
零信任最佳實(shí)踐允許組織創(chuàng)建一個安全的環(huán)境,一個所有單個元素都正確配置和對齊的環(huán)境。當(dāng)在多集群環(huán)境中實(shí)施此安全模型時,可以大規(guī)模運(yùn)行多個集群,而且風(fēng)險更低。
2、啟用多集群部署。在多云、多集群的 Kubernetes 環(huán)境中,頻繁的應(yīng)用程序和基礎(chǔ)架構(gòu)更新是常態(tài)。團(tuán)隊經(jīng)常需要同時部署到多個 Kubernetes 集群,幾乎不可能避免漂移,漂移是集群之間的不一致和錯誤配置導(dǎo)致的,通常會導(dǎo)致停機(jī)或更糟的情況發(fā)生。
因為 GitOps 可以通過將熟悉的工具引入基礎(chǔ)架構(gòu)管理和持續(xù)部署 (CD) 來幫助解決這些問題,所以它經(jīng)常被尋求更好的整體標(biāo)準(zhǔn)化、安全性和生產(chǎn)力的企業(yè)來使用。當(dāng)對存儲庫進(jìn)行更改時,代碼會從您的集群中回滾,以快速可靠地自動化部署。盡管 GitOps 工作流可以使用標(biāo)準(zhǔn) Git 工具來實(shí)現(xiàn),但仍需要額外的工具來享受全部好處,包括確認(rèn)所需狀態(tài)的維護(hù)能力。
反應(yīng)性或短期調(diào)整可能會迷失在集群的海洋中。這里有一些工具可以幫助您發(fā)現(xiàn)團(tuán)隊中的意外偏差。
3、簡化生命周期管理。眾所周知,Kubernetes 環(huán)境隨著時間的推移而增長,許多云服務(wù)(例如 Amazon EKS 和 Azure AKS)提供了有用的覆蓋范圍。盡管核心相似,但所有這些類型的 Kubernetes 都有不同的管理工具,這意味著在每個環(huán)境中部署和更新集群可能看起來完全不同。
這里最好的解決方案是圍繞單一類型的 Kubernetes 對組織進(jìn)行標(biāo)準(zhǔn)化,這種 Kubernetes 可以對整個機(jī)隊執(zhí)行生命周期管理。也就是說,這個目標(biāo)很難實(shí)現(xiàn),因為涵蓋流行的 Kubernetes 發(fā)行版和云服務(wù)的現(xiàn)有工具非常少。簡化生命周期管理的最佳實(shí)踐是找到一家 SaaS 服務(wù)提供商,該服務(wù)提供商允許用戶從單一管理平臺部署、管理和升級所有集群,該管理平臺可提高可見性、可靠性和一致性。
第一種服務(wù),是Kubernetes 治理平臺,例如Fairwinds Insights。
今天的組織需要跨集群安裝和配置多個工具,以確保安全、資源優(yōu)化和可靠性檢查。如果沒有對正在發(fā)生的事情的集中可見性,就會浪費(fèi)時間和資源。這就是我們創(chuàng)建 Kubernetes 治理平臺Fairwinds Insights的原因。Insights 將優(yōu)秀的開源工具(包括此處描述的工具)的結(jié)果匯總到一個視圖中,使您可以跨多個集群評估和執(zhí)行您的標(biāo)準(zhǔn)。Insights 使用 Polaris 和 Open Policy Agent 為您的部分或全部集群提供中央策略管理。
第二種服務(wù),是一個標(biāo)準(zhǔn)化、輕量級、低維護(hù)成本、模塊式的K8S多集群管理平臺,boots?;贐oots,您可以管理或者導(dǎo)入任何已經(jīng)存在的 Kubernetes 集群;打通和簡化Kubernetes多集群的系統(tǒng)管理及多租戶管理。