將資源匯出及匯入至 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-token:做為 Google Cloud 身分的 OAUTH2 權杖。根據預設,config-connector 會使用 Google Cloud CLI 憑證
  • --iam-format:指定要匯出的 IAM 資源類型。選項包括: policy (預設值)、policymembernone
  • --filter-deleted-iam-members:指定是否要篩除已刪除的 IAM 主體。選項為 truefalse。預設值為 false
  • --verbose:啟用詳細記錄。

後續步驟