控管新式應用程式平臺解決方案

雲端採用架構提供一種方法 ,以有系統且累加的方式改善雲端組合的治理。 本文示範如何將治理方法延伸至部署至 Azure 或其他公用或私人雲端的 Kubernetes 叢集。

初始治理基礎

治理從 初始治理基礎開始,通常稱為治理 MVP 。 此基礎會部署在雲端環境中傳遞治理所需的基本 Azure 產品。

初始治理基礎著重于治理的下列層面:

  • 基本混合式網路和連線能力。
  • 身分識別和存取控制的 Azure 角色型存取控制 (RBAC)。
  • 為資源進行一致的識別命名和標記標準。
  • 使用資源群組、訂用帳戶和管理群組來組織資源。
  • Azure 原則和 Azure 藍圖以強制執行治理原則。

初始治理基礎的這些功能可用來控管新式應用程式平臺解決方案實例。 但首先,您必須將一些元件新增至初始基礎,以將Azure 原則套用 至您的容器 。 設定之後,您可以使用Azure 原則和初始治理基礎來管理下列類型的容器:

擴充治理專業領域

初始治理基礎可用來擴充各種治理專業領域,以確保所有 Kubernetes 實例的一致且穩定部署方法。

您可以使用五個不同的觀點來查看 Kubernetes 叢集的治理。

Azure 資源治理

第一個是 Azure 資源觀點。 確保所有叢集都遵守貴組織的需求。 這包括網路拓撲、私人叢集、SRE 小組的 Azure RBAC 角色、診斷設定、區域可用性、節點集區考慮、Azure Container Registry 治理、Azure Load Balancer 選項、AKS 附加元件、診斷設定等概念。 此治理可確保組織中叢集的「外觀與風格」和「拓撲」一致性。 這也應該延伸至叢集部署啟動載入後,例如必須安裝哪些安全性代理程式,以及其設定方式。

雪花叢集在任何中央容量中都很難管理。 將叢集之間的差異降到最低,讓原則可以統一套用,且不建議偵測到異常叢集。 這也可能包含用來部署叢集的技術,例如 ARM、Bicep 或 Terraform。

Azure 原則套用至管理群組/訂用帳戶層級,有助於提供許多這些考慮,但並非全部。

Kubernetes 工作負載治理

由於 Kubernetes 本身是平臺,第二個是治理叢集內發生的情況。 這包括命名空間指引、網路原則、Kubernetes RBAC、限制和配額等專案。 這會套用至工作負載,而較少套用至叢集。 每個工作負載都是獨一無二的,因為它們都解決了不同的商務問題,而且會以各種技術以各種方式實作。 可能沒有許多「一個大小適合」的治理做法,但您應該考慮治理 OCI 成品建立/耗用量、供應鏈需求、公用容器登錄使用方式、映射隔離程式、部署管線治理。

如果可行的話,也請考慮將一般工具和模式標準化。 針對 Helm、服務網格、輸入控制器、GitOps 操作員、永續性磁片區等技術提出建議。 這裡也包含關於 Pod 受控識別的使用方式,以及從金鑰保存庫採購秘密的控管。

推動對遙測存取的強烈期望,以確保工作負載擁有者能夠適當存取改善其產品所需的計量和資料,同時確保叢集操作員能夠存取系統遙測來改善其服務供應專案。 資料通常需要在這兩者之間相互關聯,確保治理原則已就緒,以確保在必要時進行適當的存取。

在叢集層級套用的 AKS Azure 原則有助於提供其中一些,但並非全部。

叢集操作員角色(DevOps、SRE)

第三個是叢集操作員角色的治理。 如何 SRE 小組與叢集互動? 該小組與工作負載小組之間的關係為何。 它們相同嗎? 叢集操作員應該有明確定義的叢集分級活動的劇本,例如他們如何存取叢集、從何處存取叢集,以及他們在叢集上擁有的許可權,以及指派這些許可權的時機。 請確定在治理檔、原則和訓練材料中,在此內容中,工作負載操作員與叢集操作員之間的任何區別。 視您的組織而定,它們可能相同。

每個工作負載的叢集或每個叢集的許多工作負載

第四個是多租使用者治理。 也就是說,叢集應該包含由相同工作負載小組所擁有之應用程式的「類似群組」,並代表一 相關的工作負載元件。 或者,根據設計,叢集本質上應該具有多個不同的工作負載和工作負載擁有者;執行並控管,就像組織內的受控服務供應專案一樣。 每個治理策略都明顯不同,因此您應該控管已強制執行所選策略。 如果您必須支援這兩種模型,請確定您的治理計畫已清楚定義哪些原則會套用至哪種類型的叢集。

這個選擇應在策略階段 進行 ,因為它對人員配置、預算和創新有重大影響。

保持目前的投入

第五個是作業,例如節點映射新鮮度(修補)和 Kubernetes 版本控制。 神秘負責節點映射升級、追蹤套用的修補程式、追蹤和組合 Kubernetes 和 AKS 常見弱點和暴露的補救計畫? 工作負載小組 必須 參與驗證其解決方案在叢集升級上運作,而且如果您的叢集不是最新的,它們將會脫離 Azure 支援。 在 AKS 中,在「保持最新狀態」的努力方面具有強大的治理能力 ,對 AKS 至關重要 ,因此 Azure 中大部分的其他平臺都更為重要。 這需要與應用程式小組建立非常密切的工作關係,並讓應用程式小組至少每月擁有專用時間,才能進行工作負載驗證,以確保叢集保持最新狀態。 請確定所有相依于 Kubernetes 的團隊都瞭解這項持續工作的需求和成本,只要他們在平臺上,就會持續。

安全性基準

您可以將下列最佳做法新增至安全性基準,以考慮 AKS 叢集的安全性:

身分識別

您可以套用至身分識別基準的許多最佳做法,以確保 Kubernetes 叢集的身分識別和存取管理一致:

下一個步驟:管理新式應用程式平臺解決方案

下列文章會帶您前往雲端採用旅程中特定點的指引,以協助您在雲端採用案例中取得成功。