使用 Config Sync 資訊主頁

本頁說明如何使用 Config Sync 資訊主頁。

這個資訊主頁會全面概覽 Config Sync 管理的套件,以及這些套件中資源的狀態。

事前準備

IAM 權限

如要存取 Config Sync 資訊主頁,您必須在專案中具備下列 IAM 角色:

  • roles/container.clusterViewer
  • roles/gkehub.viewer

角色型存取權控管

使用者也必須在每個叢集中取得相關 Kubernetes 權限。如果不想授予使用者廣泛的權限 (例如叢集管理員的權限),可以建立自訂 RBAC 角色,其中包含使用 Config Sync 資訊主頁所需的最低權限。

config-sync-dashboard-reader ClusterRole 會授予使用者資訊主頁所需資源的 getlist 權限。

  1. 如要建立 config-sync-dashboard-reader ClusterRole 並套用至叢集,請執行下列指令:

    cat <<EOF > config-sync-dashboard-reader.yaml
    kind: ClusterRole
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: config-sync-dashboard-reader
    rules:
    - apiGroups: ["apiextensions.k8s.io"]
      resources: ["customresourcedefinitions"]
      verbs: ["get", "list"]
    - apiGroups: ["configmanagement.gke.io"]
      resources: ["configmanagements"]
      verbs: ["get", "list"]
    - apiGroups: ["configsync.gke.io"]
      resources: ["rootsyncs", "reposyncs"]
      verbs: ["get", "list"]
    - apiGroups: ["kpt.dev"]
      resources: ["resourcegroups"]
      verbs: ["get", "list"]
    - apiGroups: ["apps"]
      resources: ["deployments"]
      verbs: ["get", "list"]
    - apiGroups: [""]
      resources: ["pods", "services"]
      verbs: ["get", "list"]
    - apiGroups: ["anthos.cloud.google.com"]
      resources: ["canonicalservices"]
      verbs: ["get", "list"]
    - apiGroups: ["networking.istio.io"]
      resources: ["virtualservices"]
      verbs: ["get", "list"]
    
    EOF
    kubectl apply -f config-sync-dashboard-reader.yaml
    
  2. 請按照操作說明,在 Google Kubernetes Engine (GKE) Enterprise 版叢集上設定角色型存取權控管,以設定 ClusterRoleBinding

存取資訊主頁

  1. 前往 Google Cloud 控制台的「Features」(功能) 區段,然後點選「Config」(設定) 頁面。

    前往「設定」

  2. 選取要查看的專案。

查看資訊主頁

「資訊主頁」分頁會顯示 Config Sync 安裝狀態總覽:

  • 「對帳狀態」會顯示已對帳的包裹數量。如果套件中的資源表示您想要的狀態,且該狀態已實現,則套件會經過協調。

    您的套件可能處於下列協調狀態:

    • 目前:套件的實際狀態符合您想要的狀態。只要您想要的狀態或實際狀態沒有變更,調解程序就會視為完成。
    • 處理中:套件的實際狀態尚未達到您想要的狀態 (如套件中的資源所表示)。新建立的套件通常會處於這個狀態。
    • 失敗:將實際狀態與所需狀態進行比對的程序發生錯誤,或進展不足。
    • 不明:Config Sync 無法判斷套件的和解狀態。
  • 「同步處理狀態」會顯示已同步的套件數量。當來源 (例如 Git 存放區) 中套件的最新觀測狀態反映在叢集中時,套件就會同步。

    套件可能處於下列同步狀態:

    • 已同步:套件已同步至叢集。
    • 待處理:套件正在等待同步處理。
    • 協調:正在協調同步處理套件的 Deployment。
    • 已停止:同步處理套件的 Deployment 已停止。
    • 錯誤:套件在同步處理時發生錯誤。
    • 不明:Config Sync 無法判斷套件的同步狀態。
  • 「Config Sync 狀態」會顯示叢集上 Config Sync 的安裝狀態。

    叢集可能會有下列與 Config Sync 相關的狀態:

    • 已啟用:已啟用 Config Sync 的叢集。
    • 未啟用:未啟用 Config Sync 的叢集。
    • 待處理:已啟用 Config Sync 但正在進行變更的叢集。這個狀態通常會在首次設定或更新至新版本時出現。
    • 錯誤:已啟用 Config Sync 的叢集,但發生問題,導致 Config Sync 無法運作。
    • 不明:無法判斷 Config Sync 的狀態。

其他表格會顯示依套件和叢集分組的問題,並提供安裝 Config Sync 和查看設定的連結,以及入門資源。

查看包裹狀態

「套件」分頁可讓您查看個別套件和叢集的詳細資料。使用這個分頁,進一步瞭解同步錯誤和資源狀況不佳的可能原因。

編輯套件

您也可以使用「套件」分頁編輯套件設定。

如要編輯套裝組合,請完成下列步驟:

  1. 在「編輯套裝組合」欄中,選取要編輯的套裝組合名稱旁邊的
  2. 在「套件詳細資料」部分中,從「來源類型」下拉式清單選取來源類型。
  3. 在「來源」部分,完成下列步驟:

    • 如要使用 Git 存放區中託管的來源,請填寫下列欄位:

      1. 輸入做為資料來源的 Git 存放區網址做為「存放區網址」
      2. 選用:更新「修訂版本」欄位,確認您是否未使用預設的 HEAD
      3. 選用:如不想從根存放區同步處理,請更新「路徑」欄位。
      4. 選用:如果您未使用預設的 main 分支版本,請更新「分支版本」欄位。
    • 如要使用 OCI 映像檔代管的來源,請輸入下列欄位:

      1. 輸入做為可靠資料來源的 OCI 圖片網址,做為「圖片」
      2. 輸入要同步的目錄路徑 (相對於根目錄),做為「目錄」
  4. (選用):展開「進階設定」部分,完成下列步驟:

    1. 選取「驗證類型」

      • :不使用任何驗證機制。
      • SSH:使用安全殼層金鑰組。
      • Cookiefile:使用 cookiefile
      • 權杖:使用權杖。
      • Google Cloud Repository:使用 Google 服務帳戶存取 Cloud Source Repositories 存放區。只有在叢集啟用 GKE 的工作負載身分聯盟時,才選取這個選項。
      • Workload Identity:使用 Google 服務帳戶存取 Cloud Source Repositories 存放區。
    2. 輸入秒數來設定「Sync wait time」(同步等待時間),決定 Config Sync 從可靠來源同步處理資料的等待時間。

    3. 輸入 Git Proxy 網址,供 HTTPS Proxy 在與資料來源通訊時使用。

    4. 選擇「階層」即可變更「來源格式」

      在大多數情況下,建議使用預設值「非結構化」,因為這樣您就能隨意整理單一事實來源。

  5. 編輯完畢後,按一下「儲存」

    系統會將您重新導向至 Config Sync「Packages」(套件) 頁面。幾分鐘後,您應該會在所設定套件的「Sync status」(同步狀態)欄中看到「Synced」(已同步)

查看設定

「設定」分頁會顯示叢集清單,以及叢集的 Config Sync 設定和機群設定相關資訊。

您也可以使用這個分頁,升級叢集上的 Config Sync:

  • 找出要升級的叢集,選取名稱旁邊的內容選單 ,然後選取「Edit Config」

如需 Config Sync 設定的相關指引,請參閱「設定 Config Sync」。

後續步驟