Importa y exporta recursos existentes de Google Cloud por nombre

En este tema, se describe el comando config-connector export y cómo usarlo para exportar recursos de Google Cloud en archivos YAML de Config Connector, que luego puedes importar a Config Connector.

Descripción general

Con config-connector export, puedes exportar un recurso existente de Google Cloud. Cuando pasas el nombre completo de un recurso a config-connector export, config-connector genera un manifiesto YAML que puedes importar a Config Connector.

Antes de comenzar

  1. Instalar config-connector

Inicio rápido

En esta guía de inicio rápido, crearás un PubSubTopic con gcloud y, luego, lo importarás a Config Connector.

  1. Crea un tema llamado sample-topic con gcloud:

    gcloud pubsub topics create sample-topic
    

    Recibirás la confirmación de que se creó el tema.

    Created topic [projects/project-id/topics/sample-topic].
    

    En el resultado, project-id se reemplazará por el proyecto de Google Cloud.

  2. Obtén el ID de recurso de Google Cloud del tema y guárdalo en una variable de entorno con el siguiente comando:

    TOPIC_RESOURCE_ID=$(gcloud pubsub topics describe sample-topic --format "value(name)")
    
  3. Para identificar un recurso, config-connector export usa el nombre completo del recurso. Guarda el nombre del recurso del tema en una variable de entorno con el siguiente comando:

    TOPIC_RESOURCE_NAME="//pubsub.googleapis.com/${TOPIC_RESOURCE_ID}"
    
  4. Exporta el tema con config-connector export mediante la ejecución del siguiente comando:

    config-connector export ${TOPIC_RESOURCE_NAME}
    

    El resultado es un recurso Config Connector en formato YAML.

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

    En el resultado, project-id se reemplazará por el proyecto de Google Cloud.

  5. Puedes pasar este recurso a Config Connector con kubectl apply -f -. Para pasar el recurso de forma directa, ejecuta el siguiente comando:

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

    Reemplaza CC_NAMESPACE con el espacio de nombres que administra Config Connector.

    Config Connector adquiere el recurso.

  6. Confirma que Config Connector administre el recurso con kubectl describe

    kubectl describe pubsubtopic sample-topic --namespace CC_NAMESPACE
    

    Reemplaza CC_NAMESPACE con el espacio de nombres que administra Config Connector.

Opciones de línea de comandos

El comando config-connector export tiene las siguientes opciones:

config-connector [--output FILENAME] [--oauth2-token TOKEN]
    [--iam-format policy | policymember | none] --verbose
  • --iam-format: especifica el tipo de resultado de los recursos de IAM con tu exportación. Las opciones son policy (predeterminado), policymember o none.
  • --output: Una ruta de acceso opcional al archivo de salida, inhabilita el resultado estándar, si es un archivo, el resultado contendrá todos los resultados del comando, si es un directorio, el directorio contendrá un archivo nuevo para cada recurso del resultado.
  • --oauth2-token: un token OAUTH2 como la identidad de Google Cloud. De forma predeterminada, config-connector usa las credenciales predeterminadas del SDK de Cloud
  • --verbose: Habilita el registro detallado.

¿Qué sigue?