將資源匯出及匯入 Config Connector


本頁面說明 config-connector export 指令,以及如何使用該指令將 Google Cloud 資源匯出至 YAML 檔案,以便您日後匯入 Config Connector。如果您已具備資源的 YAML 檔案存取權,請改為按照「管理及刪除資源」中的步驟取得資源。

限制

並非所有資源都支援 export 指令。如要取得支援的資源清單,請執行 config-connector print-resources

事前準備

  1. 安裝 config-connector CLI 工具
  2. 如要簡化指令,請執行下列指令,設定預設命名空間:
    kubectl config set-context --current --namespace NAMESPACE_NAME
    請將 NAMESPACE_NAME 替換為命名空間名稱。
  3. 取得要匯出的資源的完整資源名稱。如果不知道資源的完整名稱,可以使用下列任一方法尋找:

匯出資源

您可以使用 config-connector CLI 工具,將現有資源匯出至 YAML 檔案。

如要將資源匯出至 YAML 檔案,請執行下列指令:

config-connector export RESOURCE_ID

RESOURCE_ID 替換為您要匯出的資源完整名稱。

這個指令會以 YAML 格式輸出資源,可供 Config Connector 使用。輸出內容應如下列範例所示:

apiVersion: pubsub.cnrm.cloud.google.com/v1beta1
kind: PubSubTopic
metadata:
  annotations:
    cnrm.cloud.google.com/project-id: my-example-project
  name: sample-topic

將資源匯入 Config Connector

取得要讓 Config Connector 取得的資源 YAML 檔案後,請完成下列步驟:

  1. 執行下列指令,將資源傳遞至 Config Connector:

    config-connector export RESOURCE_ID | kubectl apply -f -  --namespace NAMESPACE
    

    NAMESPACE 替換為 Config Connector 管理資源的命名空間。

  2. 執行下列指令,確認 Config Connector 是否正在管理資源:

    kubectl describe RESOURCE_TYPE RESOURCE_NAME
    

    更改下列內容:

    • RESOURCE_TYPE:資源類型,例如 pubsubtopic
    • RESOURCE_NAME:資源名稱。這不一定是完整資源名稱。

Config Connector 取得資源後,您可以按照「管理及刪除資源」一文中的步驟管理該資源。

config-connector CLI 工具選用欄位

執行 config-connector export 指令時,您可以傳遞下列選填欄位:

config-connector export RESOURCE_NAME \
    --output FILENAME \
    --oauth2-token TOKEN \
    --iam-format [policy | policymember | none] \
    --filter-deleted-iam-members [true | false] \
    --verbose
  • --output:停用標準輸出的選用輸出路徑。如果是檔案,結果會包含所有指令輸出內容;如果是目錄,則目錄會為輸出內容中的每項資源建立新檔案。
  • --oauth2-tokenOAUTH2 權杖,做為 Google Cloud 身分。根據預設,config-connector 會使用 Google Cloud CLI 預設憑證
  • --iam-format:指定匯出作業產生的 IAM 資源類型。選項包括 policy (預設)、policymembernone
  • --filter-deleted-iam-members:指定是否要篩除已刪除的 IAM 主體。選項為 truefalse。預設值為 false
  • --verbose:啟用詳細記錄。

後續步驟