簡化Kubernetes多集群管理的三個(gè)步驟
譯文Kubernetes的足跡正在各個(gè)行業(yè)迅速擴(kuò)展。許多企業(yè)已經(jīng)在多個(gè)區(qū)域運(yùn)行多個(gè)Kubernetes集群,以滿足在全球各地運(yùn)營的需求,并為全球客戶減少應(yīng)用程序延遲。企業(yè)可能已經(jīng)在內(nèi)部部署數(shù)據(jù)中心和許多公有云中擁有大量Kubernetes集群,并使用多個(gè)云提供商提供的云計(jì)算來避免鎖定。
不幸的是,操作分布式、多集群、多云環(huán)境并不是一項(xiàng)簡單的任務(wù)。Kubernetes是一項(xiàng)相對較新的技術(shù)。企業(yè)目前難以找到具有Kubernetes技能的員工,也很難找到用于多云Kubernetes管理的最佳工具。
如果企業(yè)的團(tuán)隊(duì)在多集群Kubernetes方面遇到困難,這樣的事例并不少見。本文介紹了企業(yè)現(xiàn)在可以采取的三個(gè)步驟,以減少花在Kubernetes多集群管理上的時(shí)間和精力:
步驟1:對Kubernetes訪問采用零信任。Kubernetes零信任可以提高企業(yè)的多集群、多云Kubernetes環(huán)境的安全性。
步驟2:啟用持續(xù)部署。GitOps可幫助企業(yè)確??缍鄠€(gè)Kubernetes集群的集群和應(yīng)用程序的一致部署。
步驟3:簡化多集群生命周期管理。Kubernetes變化很快。正確的多集群管理工具將幫助企業(yè)跟上部署和升級的步伐。
步驟1:對Kubernetes訪問采用零信任
鑒于多云Kubernetes管理的復(fù)雜性,發(fā)生許多嚴(yán)重的安全錯(cuò)誤也就不足為奇了。預(yù)計(jì)2022年網(wǎng)絡(luò)犯罪和數(shù)據(jù)泄露事件將增加,企業(yè)必須盡一切可能確保Kubernetes集群和應(yīng)用程序的安全性。
確保多集群Kubernetes管理訪問安全的最佳方法是采用零信任方法。零信任是一種安全模型,它假設(shè)在網(wǎng)絡(luò)中和網(wǎng)絡(luò)之間運(yùn)行的所有參與者、系統(tǒng)和服務(wù)都不可信。
Kubernetes包含所有的要素來實(shí)現(xiàn)零信任以控制對企業(yè)中每個(gè)Kubernetes集群的訪問。這些要素分為四個(gè)關(guān)鍵領(lǐng)域:身份驗(yàn)證、授權(quán)、許可控制、日志記錄和審計(jì),如下圖所示。
步驟2:啟用多集群持續(xù)部署
頻繁的應(yīng)用程序和基礎(chǔ)架構(gòu)更新是多云、多集群Kubernetes環(huán)境中的常態(tài)。在許多情況下,企業(yè)的團(tuán)隊(duì)需要同時(shí)部署到多個(gè)Kubernetes集群。對于數(shù)十個(gè)集群和數(shù)百個(gè)應(yīng)用程序?qū)嵗?,幾乎不可能避免漂移:集群之間的配置不一致和配置錯(cuò)誤會導(dǎo)致長時(shí)間的故障排除、停機(jī)或更糟的情況。
為了解決這些挑戰(zhàn),許多企業(yè)正在轉(zhuǎn)向GitOps,將Git工具的熟悉功能引入基礎(chǔ)設(shè)施管理和持續(xù)部署(CD)。GitOps使用Git作為基礎(chǔ)設(shè)施和應(yīng)用程序的單一事實(shí)來源。因?yàn)镚itOps是聲明性的,所以它提供了更好的標(biāo)準(zhǔn)化、增強(qiáng)的安全性和更高的生產(chǎn)力。
Git存儲庫存儲用于定義、創(chuàng)建和更新應(yīng)用程序和基礎(chǔ)設(shè)施的所有必要信息。當(dāng)對存儲庫進(jìn)行更改時(shí),代碼會被推送到企業(yè)的集群(或從集群回滾),從而快速可靠地自動化部署。
雖然可以使用標(biāo)準(zhǔn)Git工具實(shí)施GitOps方法和GitOps工作流程,但需要一些額外的工具才能獲得全部好處,尤其是確保保持所需狀態(tài)的能力。
步驟3:簡化多集群生命周期管理
在許多企業(yè)中,Kubernetes環(huán)境隨著時(shí)間的推移而有機(jī)地增長,具有多個(gè)Kubernetes發(fā)行版和云服務(wù),例如Amazon EKS和Azure AKS,以提供跨多個(gè)區(qū)域的必要覆蓋。Kubernetes的所有這些“風(fēng)格”可能在核心上是相同的,但流行的云計(jì)算環(huán)境以及Red Hat Open Shift、Rancher和VMware Tanzu等發(fā)行版具有不同的管理工具。這意味著在每個(gè)環(huán)境中部署和更新集群可能會有很大的不同。
除非企業(yè)已經(jīng)在單一風(fēng)格的Kubernetes上實(shí)現(xiàn)了標(biāo)準(zhǔn)化,否則最好的解決方案是找到一種可以為企業(yè)執(zhí)行生命周期管理的工具。不幸的是,這仍然是一個(gè)挑戰(zhàn),因?yàn)閹缀鯖]有可用的工具同時(shí)涵蓋流行的Kubernetes發(fā)行版和云Kubernetes服務(wù)。許多供應(yīng)商工具(例如用于多集群工作負(fù)載的Rancher)僅適用于他們自己的發(fā)行版或有其他限制。
原文標(biāo)題:??3 Steps To Streamline Kubernetes Multi-Cluster Management??,作者:Kyle Hunter