輪替服務帳戶金鑰

如要在 Google Distributed Cloud 中輪替服務帳戶金鑰,請使用 bmctl 指令更新現有叢集憑證。您可能需要定期更新憑證,或是因金鑰可能外洩而輪替服務帳戶金鑰。更新叢集憑證時,系統會將新資訊傳遞至管理員或混合式叢集,或自動將資訊傳送至受管理員叢集影響的使用者叢集。

可更新的叢集憑證

建立 Google Distributed Cloud 叢集時,需要多項憑證。建立管理、獨立或混合式叢集時,您可以在叢集設定中設定憑證。如先前所述,使用者叢集是由管理員叢集 (或做為管理員的混合式叢集) 管理,並會重複使用管理員叢集的相同憑證。

如要進一步瞭解如何建立叢集和不同叢集類型,請參閱「安裝總覽:選擇部署模型」。

您可以使用 bmctl 指令,在 Google Distributed Cloud 叢集中更新下列憑證和對應的密鑰:

  • SSH 私密金鑰:用於節點存取。
  • Artifact Registry 金鑰 (anthos-baremetal-gcr):用於向 Artifact Registry 驗證身分,以提取映像檔的服務帳戶金鑰。
  • 連結代理程式服務帳戶金鑰 (anthos-baremetal-connect):Connect 代理程式 Pod 使用的服務帳戶金鑰。
  • 連結登錄服務帳戶金鑰 (anthos-baremetal-register):註冊或取消註冊叢集時,用於向 Hub 驗證的服務帳戶金鑰。
  • 雲端作業服務帳戶金鑰 (anthos-baremetal-cloud-ops): 用於向 Google Cloud Observability (記錄和監控) API 進行驗證的服務帳戶金鑰。

透過「bmctl」更新憑證

建立叢集時,Google Distributed Cloud 會根據憑證金鑰建立 Kubernetes Secret。如果您產生新金鑰,請務必按照下列步驟更新對應的密鑰。如果金鑰的名稱或路徑有所變更,您也必須更新對應的叢集設定檔。

  1. 準備要更新的憑證新值:

    • 您可以透過 Google Cloud CLI 或 Google Cloud 控制台產生新的 Google 服務帳戶金鑰

    • 在管理員工作站上產生新的安全殼層私密金鑰,並確認叢集節點機器具有對應的公開金鑰。

  2. 使用新金鑰的路徑,更新叢集設定檔的憑證部分。

  3. 使用 bmctl update credentials 指令更新對應的叢集密鑰,並新增適當的標記。

    以下範例會更新新 SSH 私密金鑰的憑證:

    bmctl update credentials --kubeconfig ADMIN_KUBECONFIG \
        --cluster CLUSTER_NAME \
        --ssh-private-key-path SSH_KEY_PATH
    

    更改下列內容:

    • ADMIN_KUBECONFIG:管理員或自我管理叢集的 kubeconfig 檔案路徑。

    • CLUSTER_NAME:您要更新安全殼層金鑰的叢集名稱。

    • SSH_KEY_PATH:安全殼層金鑰檔案的路徑。根據預設,bmctl 會檢查叢集設定檔中指定的 SSH 和服務帳戶金鑰檔案。如果 bmctl 找到過期的金鑰檔案,指令就會失敗。如果新的有效金鑰檔案位於設定檔指定的位置以外,請加入 --ignore-validation-errors 旗標,以免發生這類失敗情況。

    如需搭配 bmctl update credentials 指令使用的完整旗標清單,請參閱 bmctl 指令參考資料中的「更新憑證」