將資源匯出及匯入至 Config Connector
本頁面說明 config-connector export 指令,以及如何使用該指令將資源 Google Cloud 匯出至 YAML 檔案,然後匯入 Config Connector。如果您已可存取資源的 YAML 檔案,請按照「管理及刪除資源」一文中的步驟取得資源。
限制
並非所有資源都支援 export 指令。如要取得支援的資源清單,請執行 config-connector print-resources。
事前準備
- 安裝
config-connectorCLI 工具。 - 如要簡化指令,請執行下列指令來設定預設命名空間:
將kubectl config set-context --current --namespace NAMESPACE_NAME
NAMESPACE_NAME替換為您的命名空間名稱。 - 取得要匯出資源的完整資源名稱。如果您不知道資源的完整名稱,或許可以透過下列其中一種方法找到:
- 使用 Cloud Asset Inventory 搜尋資源。
- 使用資源的
describe或list指令,例如gcloud pubsub topics describe sample-topic --format "value(name)"。 - 請參閱資源的產品說明文件,瞭解如何取得資源 ID,例如「取得 Cloud Key Management Service 資源 ID」。
匯出資源
您可以使用 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 檔案後,請完成下列步驟:
執行下列指令,將資源傳遞至 Config Connector:
config-connector export RESOURCE_ID | kubectl apply -f - --namespace NAMESPACE將
NAMESPACE替換為 Config Connector 管理資源的命名空間。執行下列指令,確認 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(預設值)、policymember或none。--filter-deleted-iam-members:指定是否要篩除已刪除的 IAM 主體。選項為true或false。預設值為false。--verbose:啟用詳細記錄。