Ver relaciones de elementos

En este tema, se muestra cómo ver las relaciones de recursos de tu organización, carpeta o proyecto con el bucket de Cloud Storage o la tabla de BigQuery.

Relaciones de elementos

Muchos elementos en la nube están conectados por relaciones. Por ejemplo, un instanceGroup contiene un Instance. Las relaciones se muestran como elementos relacionados con los elementos de origen. Por ejemplo, si exportas relaciones INSTANCE_TO_INSTANCEGROUP para el tipo de elemento compute.googleapis.com/Instance, se generan los elementos Instance, cuya related_assets representa los grupos de instancias a los que pertenece.

Antes de comenzar

Antes de comenzar, completa los pasos que se indican a continuación.

  1. Habilita la API de Cloud Asset Inventory en el proyecto en el que ejecutarás los comandos de la API.
    Habilita la API de Cloud Asset Inventory

  2. Configura los permisos necesarios para llamar a la API de Cloud Asset Inventory con la herramienta de gcloud o con la API.

  3. Completa los siguientes pasos para configurar el entorno.

    gcloud

    Si deseas configurar tu entorno para usar la herramienta de gcloud a fin de llamar a la API de Cloud Asset Inventory, instala el SDK de Cloud en tu cliente local.

    API

    Para configurar tu entorno a fin de llamar a la API de Cloud Asset Inventory con el comando curl de Unix, completa los siguientes pasos.

    1. Instala oauth2l en tu máquina local para que puedas interactuar con el sistema Google OAuth.
    2. Confirma que tienes acceso al comando curl de Unix.
    3. Asegúrate de otorgar a tu cuenta una de las siguientes funciones en tu proyecto, organización o carpeta.

      • Función de visualizador de Cloud Asset (roles/cloudasset.viewer)
      • Función básica de propietario (roles/owner)
  4. Necesitas el permiso cloudasset.assets.exportResource para ver relaciones de elementos.

  5. Prepara el destino de exportación. Puedes usar un bucket de Cloud Storage o una tabla de BigQuery.

Exporta una instantánea de relación de activo

Estos comandos pueden almacenar la relación exportada en un bucket de Cloud Storage en gs://<var>YOUR_BUCKET/NEW_FILE</var> o en una tabla de BigQuery según la configuración de salida de las solicitudes. En los siguientes ejemplos, se muestra cómo exportar relaciones en un proyecto a un bucket de Cloud Storage. Para exportar las relaciones de una organización o carpeta, reemplaza la marca --project por --organization o --folder. A fin de exportar relaciones a [BigQuery], especifica una tabla de [BigQuery] para --output-path.

Exporta todas las relaciones compatibles

A fin de exportar una instantánea de una relación de elementos en una marca de tiempo determinada para todas las relaciones admitidas, ejecuta el siguiente comando.

gcloud

gcloud beta asset export \
   --content-type relationship \
   --project PROJECT_ID \
   --output-path "gs://YOUR_BUCKET/NEW_FILE"

API

gcurl -d '{"contentType":"RELATIONSHIP", "outputConfig":{"gcsDestination": \
         {"uri":"gs://YOUR_BUCKET/NEW_FILE"}}}' \
          https://cloudasset.googleapis.com/v1p7beta1/projects/PROJECT_NUMBER:exportAssets

Exporta relaciones especificadas

Para exportar relaciones especificadas en un proyecto con tipos de elementos adjuntos, ejecuta el comando siguiente.

gcloud

gcloud beta asset export \
 --content-type relationship \
 --project PROJECT_ID \
 --relationship-types INSTANCE_TO_INSTANCEGROUP \
 --output-path "gs://YOUR_BUCKET/NEW_FILE"

API

gcurl -d '{"contentType":"RELATIONSHIP", "relationshipTypes": "INSTANCE_TO_INSTANCEGROUP", "outputConfig":{"gcsDestination": \
         {"uri":"gs://YOUR_BUCKET/NEW_FILE"}}}' \
          https://cloudasset.googleapis.com/v1p7beta1/projects/PROJECT_NUMBER:exportAssets

Exporta todas las relaciones de tipos de activos específicos

Para exportar todas las relaciones compatibles en un proyecto que tienen un tipo de elemento que comienza con compute.googleapis.com, ejecuta el siguiente comando.

gcloud

gcloud beta asset export \
 --content-type relationship \
 --project PROJECT_ID \
 --asset-types compute.googleapis.com.* \
 --output-path "gs://YOUR_BUCKET/NEW_FILE"

API

gcurl -d '{"contentType":"RELATIONSHIP", "assetTypes": "compute.googleapis.com.*", "outputConfig":{"gcsDestination": \
         {"uri":"gs://YOUR_BUCKET/NEW_FILE"}}}' \
          https://cloudasset.googleapis.com/v1p7beta1/projects/PROJECT_NUMBER:exportAssets

Exporta relaciones especificadas con los tipos de activos especificados

Para exportar relaciones especificadas en un proyecto con el tipo de elemento compute.googleapis.com/Instance, ejecuta el siguiente comando.

gcloud

gcloud beta asset export \
 --content-type relationship \
 --project PROJECT_ID \
 --asset-types compute.googleapis.com/Instance
 --relationship-types INSTANCE_TO_INSTANCEGROUP \
 --output-path "gs://YOUR_BUCKET/NEW_FILE"

API

gcurl -d '{"contentType":"RELATIONSHIP", "assetTypes": "compute.googleapis.com/Instance", "relationshipTypes": "INSTANCE_TO_INSTANCEGROUP", "outputConfig":{"gcsDestination": \
         {"uri":"gs://YOUR_BUCKET/NEW_FILE"}}}' \
          https://cloudasset.googleapis.com/v1p7beta1/projects/PROJECT_NUMBER:exportAssets

Verifica el estado de una exportación

Para verificar el estado de una exportación, ejecuta los siguientes comandos.

gcloud

Para verificar el estado de la exportación, puedes ejecutar el siguiente comando. Se muestra en la herramienta de gcloud después de ejecutar el comando de exportación.

gcloud asset operations describe OPERATION_ID

API

Para ver el estado de tu exportación, ejecuta el siguiente comando con el ID de operación que se muestra en la respuesta a tu exportación.

  1. Puedes encontrar el OPERATION_ID en el campo name de la respuesta a la exportación, que tiene el siguiente formato:

    "name": "projects/PROJECT_NUMBER/operations/ExportAssets/CONTENT_TYPE/OPERATION_ID"
    
  2. Para verificar el estado de la exportación, ejecuta el siguiente comando con OPERATION_ID:

    gcurl https://cloudasset.googleapis.com/v1/projects/PROJECT_NUMBER/operations/ExportAssets/CONTENT_TYPE/OPERATION_ID
    

Visualiza una instantánea de una relación

Si exportaste tus resultados a un bucket de Cloud Storage, completa estos pasos para verlos.

Si exportaste tus resultados a una tabla de BigQuery, completa estos pasos para verlos.