使用預設設定安裝 Config Sync

Config Sync 會將 Kubernetes 設定與叢集同步。本文說明如何使用預設設定啟用及設定 Config Sync。這項功能著重於從非結構化 Git 存放區同步處理設定。

本頁內容適用於想導入 GitOps 工具的營運人員,以便集中管理團隊的設定。如要進一步瞭解我們在內容中提及的常見角色和範例工作,請參閱「常見的 GKE 使用者角色和工作」。 Google Cloud

如要瞭解如何使用進階設定安裝 Config Sync,請參閱「自訂 Config Sync 安裝作業」。

事前準備

安裝 Config Sync 前,請先準備好 Git 存放區和 GKE 叢集。

建立 Git 存放區並授予 Config Sync 存取權

如要將 Git 存放區中的設定同步至叢集,Config Sync 必須具備存放區的唯讀權限。如要授權 Config Sync 讀取設定,請完成下列步驟:

  • 建立或存取 Git 存放區,其中包含您要 Config Sync 同步處理至叢集的設定檔。

  • 如果 Git 存放區是公開的,則無須採取任何行動。 Config Sync 不需要額外權限。

  • 如果 Git 存放區是私人的,請按照「授予 Config Sync Git 存取權」一文中的操作說明進行。

建立叢集

如果您已準備好叢集 (例如已按照步驟授予 Config Sync 對 Git 的存取權),請繼續安裝 Config Sync

如要使用 Config Sync,叢集必須註冊至機群。如要註冊叢集,請完成下列步驟:

主控台

您無須採取任何行動,安裝 Config Sync 時,系統會自動將叢集註冊至機群。

gcloud

  • 如要建立已註冊至機群的 Autopilot 叢集,請執行下列指令:

    gcloud container clusters create-auto CLUSTER_NAME --enable-fleet
    
  • 如要建立已向機群註冊的標準叢集,請執行下列指令:

    gcloud container clusters create CLUSTER_NAME --enable-fleet \
        --workload-pool=PROJECT_ID.svc.id.goog
    

更改下列內容:

  • CLUSTER_NAME:叢集名稱。
  • PROJECT_ID:您的專案 ID。

如要進一步瞭解如何註冊叢集,請參閱「將叢集註冊至機群」。

安裝 Config Sync

如要啟用及設定 Config Sync,將 Git 存放區中的設定同步至已註冊的叢集,請完成下列步驟:

主控台

如果您使用 Google Cloud 控制台,請先在叢集上安裝 Config Sync,然後設定套件,讓 Config Sync 從 Git 存放區同步。

安裝 Config Sync

  1. 前往 Google Cloud 控制台的「Config Sync」頁面。

    前往「設定」

  2. 按一下「Install Config Sync」(安裝 Config Sync)

  3. 選取「在機群中的所有叢集上安裝」

  4. 其餘設定則保留預設狀態。

  5. 按一下「Install Config Sync」(安裝 Config Sync)

在「設定」分頁中,幾分鐘後,機群中叢集的「狀態」欄會顯示「已啟用」

部署套件

  1. 按一下「Deploy cluster package」(部署叢集套件)

  2. 在「Select clusters」(選取叢集) 分頁中,選取要部署套件的叢集,然後按一下「Continue」(繼續)

  3. 按一下「設定套件」分頁標籤,然後輸入套件名稱。

  4. 在「來源」部分,完成下列步驟:

    1. 在「Repository URL」(存放區網址) 欄位中,輸入 Git 存放區的網址。

    2. 選用:查看並更新其他欄位設定。視存放區結構而定,您可能不需要更新這些設定。

  5. 選用:如果存放區是私人的,請展開「Advanced settings」(進階設定) 區段,設定驗證方法。 Google Cloud 控制台提供內嵌的操作說明,協助您設定驗證設定。

  6. 其餘設定則保留預設狀態。

  7. 按一下「Deploy package」(部署套件)

系統會將您重新導向至 Config Sync「Packages」(套件) 頁面。幾分鐘後,您設定的叢集「同步處理狀態」欄會顯示「已同步處理」

gcloud

如果您使用 gcloud CLI,請建立含有 Config Sync 設定的資訊清單,然後將這些設定套用至叢集,即可安裝 Config Sync。

  1. 啟用 ConfigManagement 車隊功能:

    gcloud beta container fleet config-management enable
    
  2. 建立名為 apply-spec.yaml 的資訊清單。這個範例資訊清單包含建議的預設設定:

    applySpecVersion: 1
    spec:
      configSync:
        enabled: true
        sourceFormat: unstructured
        syncRepo: REPO_URL
        # syncRev: REVISION
        secretType: none
        preventDrift: false
    

    更改下列內容:

    • REPO_URL:Git 存放區的網址,例如 https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    • (選用) REVISION:要從中同步處理的 Git 修訂版本 (標記或雜湊) 或分支版本。如要從 HEAD 以外的位置同步,請取消註解並取代這個欄位。

      如果是私人存放區,您可以將 secretType 欄位變更為支援的驗證方法。 一般建議使用具備 Secure Source Manager 的 Google 服務帳戶 (gcpserviceaccount)。或者,使用 ssh,因為它適用於大多數 Git 供應商。如需支援的驗證方法詳細操作說明,請參閱「授予 Git 存取權」。

  3. 將資訊清單套用至叢集:

    gcloud beta container fleet config-management apply \
        --membership=MEMBERSHIP_NAME \
        --config=apply-spec.yaml \
        --project=PROJECT_ID
    

    更改下列內容:

    • MEMBERSHIP_NAME:您在註冊叢集時選擇的機群成員名稱。使用 gcloud container fleet memberships list 指令取得名稱。
    • PROJECT_ID:您的專案 ID。

驗證安裝

安裝及設定 Config Sync 後,請確認安裝作業是否成功完成。

主控台

  1. 前往 Google Cloud 控制台的「Config Sync」頁面。

    前往 Config Sync

  2. 在「套件」分頁中,檢查叢集表格中的「同步狀態」欄。成功安裝 Config Sync 後,狀態會顯示「已安裝」。設定成功的 Git 存放區會顯示「已同步」狀態。

gcloud

執行下列指令:

nomos status

安裝成功後,狀態會顯示為 SYNCEDPENDING

如要進一步瞭解 nomos status 指令提供的資訊 (包括回報的錯誤),請參閱 nomos 指令列工具說明文件中的「檢查 Config Sync 狀態」。

後續步驟