使用 Azure 原則 和 Azure 監視器管理已啟用 Azure Arc 的 Kubernetes
Azure Arc 透過啟用 Azure 原則和 Azure 監視器等各種 Azure 服務來集中和簡化管理工作。
在本單元中,您會了解如何使用這些服務來管理和監視已啟用 Azure Arc 的 Kubernetes 叢集。
Azure 原則
Azure 原則使用以目標資源類型的屬性為基礎的宣告式規則,包括 Kubernetes 及其元件。 這些規則會形成原則定義,而系統管理員可以透過將原則指派至資源群組、訂用帳戶或管理群組以套用這些定義。
適用於 Kubernetes 的 Azure 原則
透過適用於 Kubernetes 的 Azure 原則,公司可以在其所有已啟用 Azure Arc 的 Kubernetes 資產中強制執行統一的治理規則,以偵測任何不符合組織標準的情形。
已啟用 Arc 的 Kubernetes 的 Azure 原則延伸模組會採取下列動作:
- 定期檢查是否有以裝載許可控制器 Pod 的 Kubernetes 叢集為目標的 Azure 原則指派。
- 將原則定義部署至作為自訂資源的叢集,此叢集會套用條件約束,而許可控制器 Pod 會強制執行。
- 將稽核和合規性資料報告至 Azure 原則,以便您可以和其他 Azure 或已啟用 Azure Arc 的資源一樣,透過 Azure 入口網站檢閱狀態。
已啟用 Arc 的 Kubernetes 的內建原則定義
Azure 原則為已啟用 Azure Arc 的 Kubernetes 提供許多內建定義,包括下列常用的原則定義:
原則名稱 | 原則描述 |
---|---|
在 Kubernetes 叢集內不應允許具有特殊權限的容器 | 防止在叢集中建立具特殊權限的容器。 |
Kubernetes 叢集應只能經由 HTTPS 存取 | 確保輸入連線會使用 HTTPS。 |
Kubernetes 叢集服務只可使用允許的外部 IP | 確保只使用允許的外部 IP 位址。 |
容器 CPU 及記憶體資源限制不應超過 Kubernetes 叢集內指定的限制 | 強制執行容器 CPU 和記憶體資源限制。 |
確保服務只會接聽 Kubernetes 叢集內允許的連接埠 | 限制服務只能在允許的連接埠上接聽。 |
Kubernetes 叢集容器應該只使用允許的映像檔 | 將可用於部署容器的映像限制為只能是來自受信任登錄的映像。 |
Kubernetes 叢集中的容器只能使用允許的功能 | 限制減少容器受攻擊面的功能。 |
Kubernetes 叢集中的 Pod 只能使用核准的主機網路及連接埠範圍 | 限制 Pod 存取主機網路和叢集中允許的主機連接埠範圍。 |
還有許多內建的原則定義可供使用。 若要檢視所有原則定義,請在 Azure 入口網站中搜尋並選取 [原則],選取左側功能表中的 [定義],然後在 [類別] 下拉式清單中選取 [Kubernetes]。
實作適用於 Kubernetes 的 Azure 原則
若要在連線的叢集上實作適用於 Kubernetes 的 Azure 原則,您需要安裝Azure 原則延伸模組。 針對已啟用 Azure Arc 的 Kubernetes,此流程包含下列高階步驟。
- 使用有權限管理已啟用 Arc 的 Kube 資源的帳戶登入 Microsoft Entra 租用戶。
- 在叢集上建立 Azure 原則延伸模組執行個體。
- 使用其中一個 Kubernetes 特定原則定義來建立原則指派。
原則指派建立完成後,Azure 原則會開始檢查合規性。
Azure 監視器
Azure 監視器會將完整的雲端式管理功能延伸至 Azure 以外的內部部署資料中心及非 Microsoft 雲端提供者。 監視器會收集和監視計量、活動與診斷記錄,以及來自 Azure 服務、已啟用 Arc 的資源和內部部署資料中心與第三方雲端資源的事件。
Azure 監視器介面的功能包括:
- 儀表板和活頁簿。
- 使用計量瀏覽器或 Power BI 等工具的計量分析。
- 指定警示觸發動作和警示收件者的常用動作群組。
Azure 監視器容器深入解析
Azure 監視器容器深入解析會提供 Kubernetes 環境狀態的完整深入解析,以協助維護作業穩定性和商務持續性。 系統會在包括已啟用 Azure Arc 的 Kubernetes 在內的 Kubernetes 環境中,於控制器、節點和容器上收集計量。
容器深入解析會提供下列功能:
- 識別在每個叢集節點上執行的容器及其平均處理器和記憶體使用率,以協助偵測資源瓶頸。
- 識別在個別 Pod 中執行的容器,以協助您追蹤 Pod 的整體效能。
- 評估在主機上執行、且與支援 Pod 的標準程序無關的工作負載的資源使用率。
- 比較叢集在平均負載和最重負載下的行為,以協助評估容量需求,並估計叢集可承受的最大負載。
- 設定警示,以在資源使用率超過可接受的閾值時,或在叢集中的健全狀態變更時,讓系統主動通知您。
監視已啟用 Azure Arc 的 Kubernetes 叢集
Azure 監視器容器深入解析依賴適用於 Linux 的 Azure 監視器代理程式的容器化版本。 此代理程式會在受監視的叢集中執行,以從叢集節點和容器中收集效能計量和記錄。 代理程式會直接與 Kubernetes 計量 API 互動,並將收集到的資料上傳至 Azure。
用來針對已啟用 Azure Arc 的 Kubernetes 部署實作 Azure 監視器容器深入解析的流程包含下列高階步驟。
- 使用有權限管理已啟用 Arc 的 Kube 資源的帳戶登入 Microsoft Entra 租用戶。
- 識別您想要使用的 Log Analytics 工作區所具有的工作區識別碼。
- 使用 Log Analytics 工作區識別碼,在叢集上建立 Azure 監視器容器深入解析延伸模組執行個體。