Visualiza 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 recursos de la nube están conectados por relaciones. Por ejemplo, una instanceGroup contiene una Instance. Las relaciones se muestran como activos relacionados con los activos de origen. Por ejemplo, si exportas relaciones INSTANCE_TO_INSTANCEGROUP para el tipo de recurso compute.googleapis.com/Instance, se generan los elementos Instance, cuyo 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 mediante la CLI de gcloud o la API.

  3. Completa los siguientes pasos para configurar el entorno.

    gcloud

    Si deseas configurar tu entorno para que use la CLI de gcloud a fin de llamar a la API de Cloud Asset Inventory, instala la CLI de Google 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 las relaciones de los 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 en 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. Para exportar relaciones a [BigQuery], especifica una tabla de [BigQuery] para --output-path.

Exporta todas las relaciones compatibles

Para exportar una instantánea de relación de activos en una marca de tiempo determinada para todas las relaciones compatibles, ejecuta el siguiente comando.

   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 a los que se adjuntaron, ejecuta el siguiente comando.

   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 elementos específicos

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

   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 tipos de recursos especificados

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

   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 CLI 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 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.