本頁說明如何啟用 Policy Controller 套裝組合。
如要進一步瞭解如何套用及使用政策套裝組合,請使用左側導覽選單,閱讀您想套用套裝組合的操作說明。如要進一步瞭解政策套裝組合,請參閱「Policy Controller 套裝組合」總覽。
如果您使用 Google Cloud 控制台安裝 Policy Controller,系統預設會安裝政策基本套裝組合,但您可以啟用更多套裝組合。
事前準備
套用政策套裝組合
控制台
如要使用 Google Cloud 控制台在叢集上套用一或多個政策套裝組合,請完成下列步驟:
- 在 Google Cloud 控制台中,前往「Posture Management」(狀態管理) 專區下方的 GKE Enterprise「Policy」(政策) 頁面。
在「設定」分頁的叢集表格中,選取「編輯設定」欄中的「編輯」edit。
在「新增/編輯政策套裝組合」選單中,確認範本庫已開啟。
如要啟用所有政策套裝組合,請將「新增所有政策套裝組合」切換鈕設為開啟 check_circle。
如要啟用個別政策套裝組合,請開啟要啟用的每個政策套裝組合。
選用:如要豁免命名空間,請展開「顯示進階設定」選單。在「Exempt namespaces」(豁免命名空間) 欄位中,提供有效命名空間的清單。
最佳做法: 豁免系統命名空間,避免環境發生錯誤。如要瞭解如何排除命名空間,以及查看 Google Cloud 服務建立的常見命名空間清單,請前往「排除命名空間」頁面。
選取「儲存變更」。
如要查看政策涵蓋範圍和違規情形的詳細資訊,請使用 Policy Controller 資訊主頁。
gcloud
如要套用政策組合,請完成下列步驟:
如果您要套用的任何套件使用參照限制,就必須啟用參照限制支援功能:
gcloud container fleet policycontroller update --referential-rules
針對要安裝的每個套件組合,執行下列指令:
gcloud container fleet policycontroller content bundles set BUNDLE_NAME
將
BUNDLE_NAME
替換為要安裝的套件組合名稱。名稱是套件前置字元,例如cis-k8s-v1.5.1
。您可以在「政策組合總覽」中查看名稱清單。選用:如要免除命名空間的強制執行,請執行下列指令:
gcloud container fleet policycontroller content bundles set BUNDLE_NAME \ --exempted-namespaces=NAMESPACES
將
NAMESPACES
替換為以半形逗號分隔的命名空間清單,這些命名空間不應強制執行,例如kube-system,gatekeeper-system
。如要進一步瞭解如何新增可排除的命名空間,請參閱「將命名空間排除在政策控制器之外」。
如要移除套裝組合,請執行下列指令:
gcloud container fleet policycontroller content bundles remove BUNDLE_NAME
疑難排解
您無法修改直接安裝的政策套裝組合,請按照本頁的說明操作。如果政策套裝組合有問題,需要進行編輯,請使用個別政策套裝組合頁面上的其中一種方法安裝套裝組合。這些方法會從 Git 存放區提取政策套件,方便您進行變更。舉例來說,如要編輯 CIS Kubernetes 基準 1.5,請按照「使用 CIS Kubernetes 基準 1.5.1 版政策限制」的說明操作,而非本頁的說明。