Como ver os relacionamentos de recursos

Neste tópico, mostramos como visualizar os relacionamentos de recursos em sua organização, pasta ou projeto para um bucket do Cloud Storage ou uma tabela do BigQuery.

Relacionamentos de ativos

Muitos recursos da nuvem estão conectados por relacionamentos. Por exemplo, um instanceGroup contém uma Instance. Os relacionamentos são exibidos como recursos relacionados aos recursos de origem. Por exemplo, se você exportar relacionamentos INSTANCE_TO_INSTANCEGROUP para o tipo de recurso compute.googleapis.com/Instance, vão ser gerados recursos Instance, em que related_assets representa os grupos de instâncias aos quais pertence.

Antes de começar

Antes de começar, conclua as etapas a seguir.

  1. Ative a API Cloud Asset Inventory no projeto em que você executará os comandos da API.
    Ativar a API Cloud Asset Inventory

  2. Configure as permissões necessárias para chamar a API Cloud Asset Inventory usando a ferramenta gcloud ou a API.

  3. Conclua as etapas a seguir para configurar seu ambiente.

    gcloud

    Para configurar seu ambiente para usar a ferramenta gcloud para chamar a API Cloud Asset Inventory, instale o SDK do Cloud no cliente local.

    API

    Para configurar seu ambiente para chamar a API Cloud Asset Inventory com o comando curl do Unix, conclua as etapas a seguir.

    1. Instale o oauth2l na sua máquina local para interagir com o sistema do Google OAuth.
    2. Confirme se você tem acesso ao comando curl do Unix.
    3. Certifique-se de conceder à conta um dos papéis a seguir no projeto, na pasta ou na organização.

      • Papel Leitor de recursos do Cloud (roles/cloudasset.viewer)
      • Papel básico do proprietário (roles/owner)
  4. Você precisa da permissão cloudasset.assets.exportResource para ver os relacionamentos de recursos.

  5. Prepare o destino da exportação. É possível usar um bucket do Cloud Storage ou uma tabela do BigQuery.

Como exportar um snapshot de relacionamento de recurso

Esses comandos podem armazenar o relacionamento exportado em um bucket do Cloud Storage em gs://<var>YOUR_BUCKET/NEW_FILE</var> ou em uma tabela do BigQuery de acordo com a configuração de saída nas solicitações. Os exemplos a seguir mostram como exportar relacionamentos em um projeto para um bucket do Cloud Storage. Para exportar os relacionamentos de uma organização ou pasta, substitua a sinalização --project por --organization ou --folder. Para exportar relacionamentos para o [BigQuery], especifique uma tabela do [BigQuery] para --output-path.

Como exportar todos os relacionamentos aceitos

Para exportar um snapshot de relacionamento de recursos em um determinado carimbo de data/hora para todos os relacionamentos aceitos, execute o seguinte 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

Como exportar relacionamentos específicos

Para exportar relacionamentos específicos em um projeto com tipos de recursos aos quais estão anexados, execute o seguinte comando.

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

Exportar todos os relacionamentos de tipos de recursos específicos

Para exportar todos os relacionamentos aceitos em um projeto com um tipo de recurso que começa com compute.googleapis.com, execute o seguinte 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

Como exportar relações específicas com tipos de recursos específicos

Para exportar relacionamentos específicos em um projeto com um tipo de recurso compute.googleapis.com/Instance, execute o seguinte 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

Como verificar o status de uma exportação

Para verificar o status de uma exportação, execute os comandos a seguir.

gcloud

Para verificar o status da exportação, execute o comando a seguir. Ele é exibido na ferramenta gcloud depois de executar o comando de exportação.

gcloud asset operations describe OPERATION_ID

API

Para ver o status da exportação, execute o comando a seguir com o ID da operação retornado na resposta à exportação.

  1. Encontre o OPERATION_ID no campo name da resposta à exportação, que tem a seguinte formatação:

    "name": "projects/PROJECT_NUMBER/operations/ExportAssets/CONTENT_TYPE/OPERATION_ID"
    
  2. Para verificar o status da exportação, execute o seguinte comando com OPERATION_ID:

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

Como visualizar um snapshot de relacionamento

Se você exportou os resultados para um bucket do Cloud Storage, conclua estas etapas para visualizá-los.

Se você exportou os resultados para uma tabela do BigQuery, conclua estas etapas para visualizá-los.