Vorhandene Google Cloud-Ressourcen importieren und exportieren

Auf dieser Seite werden der Befehl config-connector export und seine Verwendung beschrieben, um Google Cloud-Ressourcen in YAML-Dateien für Config Connector zu exportieren, die Sie später in Config Connector importieren können.

Mit config-connector export können Sie eine vorhandene Google Cloud-Ressource exportieren. Wenn Sie den vollständigen Namen einer Ressource an config-connector export übergeben, generiert config-connector ein YAML-Manifest, das Sie in Config Connector importieren können.

Hinweis

Installieren Sie zuerst das config-connector-Tool.

Beispiel für Export

In diesem Beispiel erstellen Sie mit dem gcloud-Befehlszeilentool ein PubSubTopic und importieren es dann in Config Connector.

  1. Erstellen Sie ein Thema mit dem Namen sample-topic:

    gcloud pubsub topics create sample-topic
    

    Sie erhalten dann eine Bestätigung, dass das Thema erstellt wurde:

    Created topic [projects/PROJECT_ID/topics/sample-topic].
    

    In der Ausgabe wird PROJECT_ID durch Ihr Google Cloud-Projekt ersetzt.

  2. Rufen Sie die Google Cloud-Ressourcen-ID des Themas ab und speichern Sie sie mit dem folgenden Befehl in einer Umgebungsvariable:

    TOPIC_RESOURCE_ID=$(gcloud pubsub topics describe sample-topic --format "value(name)")
    
  3. Zum Identifizieren einer Ressource verwendet config-connector export den vollständigen Ressourcennamen. Speichern Sie den Ressourcennamen des Themas mit dem folgenden Befehl in einer Umgebungsvariablen:

    TOPIC_RESOURCE_NAME="//pubsub.googleapis.com/${TOPIC_RESOURCE_ID}"
    
  4. Exportieren Sie das Thema mit config-connector export, indem Sie den folgenden Befehl ausführen:

    config-connector export ${TOPIC_RESOURCE_NAME}
    

    Die Ausgabe ist eine Config Connector-Ressource im YAML-Format:

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

    In der Ausgabe wird PROJECT_ID durch Ihr Google Cloud-Projekt ersetzt.

  5. Sie können diese Ressource mit kubectl apply -f - an Config Connector übergeben. Führen Sie den folgenden Befehl aus, um die Ressource direkt zu übergeben:

    config-connector export ${TOPIC_RESOURCE_NAME} | kubectl apply -f -  --namespace CC_NAMESPACE
    

    Ersetzen Sie CC_NAMESPACE durch den Namespace, über den Config Connector Ressourcen verwaltet.

    Config Connector ruft die Ressource ab.

  6. Prüfen Sie, ob Config Connector die Ressource mit kubectl describe verwaltet:

    kubectl describe pubsubtopic sample-topic --namespace CC_NAMESPACE
    

    Ersetzen Sie CC_NAMESPACE durch den Namespace, über den Config Connector Ressourcen verwaltet.

Befehlszeilenoptionen

Der Befehl config-connector export bietet folgende Optionen:

config-connector export RESOURCE_NAME \
    --output FILENAME \
    --oauth2-token TOKEN \
    --iam-format [policy | policymember | none] \
    --filter-deleted-iam-members [true | false] \
    --verbose
  • --output ist ein optionaler Ausgabedateipfad, der die Standardausgabe deaktiviert. In einer Datei enthält das Ergebnis die gesamte Befehlsausgabe. Wenn ein Verzeichnis vorhanden ist, enthält das Verzeichnis eine neue Datei für jede Ressource in der Ausgabe.
  • --oauth2-token: Ein OAUTH2-Token als Google Cloud-Identität. Standardmäßig verwendet config-connector die Standardanmeldedaten des Cloud SDK.
  • --iam-format: Gibt den Typ der IAM-Ressourcen an, die bei Ihrem Export ausgegeben werden. Verfügbare Optionen sind policy (Standard), policymember oder none.
  • --filter-deleted-iam-members: Gibt an, ob gelöschte IAM-Hauptkonten herausgefiltert werden sollen. Optionen sind true oder false. Der Standardwert ist false.
  • --verbose: Aktiviert das ausführliche Logging.

Nächste Schritte