Receber informações de recursos persistentes

Nesta página, mostramos como conseguir uma lista de recursos permanentes e como conseguir informações sobre um recurso permanente específico pelo console do Google Cloud, CLI do Google Cloud, SDK da Vertex AI para Python e API REST.

Funções exigidas

Para receber as permissões necessárias a fim de acessar informações sobre de recursos permanentes, peça ao administrador para conceder a você o papel do IAM Leitor da Vertex AI (roles/aiplatform.viewer) no projeto. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esse papel predefinido contém as permissões necessárias para receber informações de recursos persistentes. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:

As seguintes permissões são necessárias para receber informações sobre recursos permanentes:

  • aiplatform.persistentResources.get
  • aiplatform.persistentResources.list

Essas permissões também podem ser concedidas com papéis personalizados ou outros papéis predefinidos.

Receber uma lista de recursos persistentes

Selecione uma das guias a seguir para instruções sobre como receber uma lista de recursos permanentes atuais.

Para ver uma lista de recursos permanentes no console do Google Cloud, acesse a página Recursos permanentes.

Acessar recursos permanentes

Antes de usar os dados do comando abaixo, faça estas substituições:

  • PROJECT_ID: o ID do projeto do Google Cloud para o qual você quer receber uma lista de recursos persistentes.
  • LOCATION: a região em que você quer criar o recurso permanente. Confira a lista de regiões com suporte em Disponibilidade do recurso.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud ai persistent-resources list \
    --project=PROJECT_ID \
    --region=LOCATION
gcloud ai persistent-resources list `
    --project=PROJECT_ID `
    --region=LOCATION
gcloud ai persistent-resources list ^
    --project=PROJECT_ID ^
    --region=LOCATION

Você receberá uma resposta semelhante a esta:

Using endpoint [https://us-central1-aiplatform.googleapis.com/]
---
createTime: '2023-09-12T20:45:33.220989Z'
displayName: test
name: projects/123456789012/locations/us-central1/persistentResources/test-persistent-resource
resourcePools:
- autoscalingSpec:
    maxReplicaCount: '4'
    minReplicaCount: '1'
  diskSpec:
    bootDiskSizeGb: 100
    bootDiskType: pd-standard
  id: n1-highmem-2-nvidia-tesla-t4-1
  machineSpec:
    acceleratorCount: 1
    acceleratorType: NVIDIA_TESLA_T4
    machineType: n1-highmem-2
  replicaCount: '1'
startTime: '2023-09-12T20:50:36.992739253Z'
state: RUNNING
updateTime: '2023-09-12T20:50:42.813723Z'
---
createTime: '2023-09-12T20:37:21.691977Z'
displayName: my-persistent-resource
name: projects/123456789012/locations/us-central1/persistentResources/my-persistent-resource
resourcePools:
- autoscalingSpec:
    maxReplicaCount: '12'
    minReplicaCount: '4'
  diskSpec:
    bootDiskSizeGb: 200
    bootDiskType: pd-standard
  id: n1-highmem-2-nvidia-tesla-t4-1
  machineSpec:
    acceleratorCount: 1
    acceleratorType: NVIDIA_TESLA_T4
    machineType: n1-highmem-2
  replicaCount: '4'
- diskSpec:
    bootDiskSizeGb: 100
    bootDiskType: pd-ssd
  id: n1-standard-4
  machineSpec:
    machineType: n1-standard-4
  replicaCount: '4'
startTime: '2023-09-12T20:42:46.495575169Z'
state: RUNNING
updateTime: '2023-09-12T20:42:51.519271Z'

Antes de testar esse exemplo, siga as instruções de configuração para Python no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.

Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

# Optional arguments:
# filter (str): An expression for filtering the results of the request. For
#   field names both snake_case and camelCase are supported.
# order_by (str): A comma-separated list of fields to order by, sorted in
#   ascending order. Use "desc" after a field name for descending. Supported
#   fields: `display_name`, `create_time`, `update_time`

# List the persistent resource on the project.
resource_list = persistent_resource.PersistentResource.list()

for i in range(len(resource_list)):
    print(resource_list[i].name)
    print(resource_list[i].state)

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud cuja lista de recursos permanentes você quer acessar.
  • LOCATION: a região em que você quer criar o recurso permanente. Para uma lista de regiões com suporte, consulte Disponibilidade do recurso.

Método HTTP e URL:

GET https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources

Para enviar a solicitação, expanda uma destas opções:

execute o seguinte comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources"

execute o seguinte comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources" | Select-Object -Expand Content

Você receberá uma resposta JSON semelhante a esta:

{
  "persistentResources": [
    {
      "name": "projects/123456789012/locations/us-central1/persistentResources/test-persistent-resource",
      "displayName": "test",
      "resourcePools": [
        {
          "id": "n1-highmem-2-nvidia-tesla-t4-1",
          "machineSpec": {
            "machineType": "n1-highmem-2",
            "acceleratorType": "NVIDIA_TESLA_T4",
            "acceleratorCount": 1
          },
          "replicaCount": "1",
          "diskSpec": {
            "bootDiskType": "pd-standard",
            "bootDiskSizeGb": 100
          },
          "autoscalingSpec": {
            "minReplicaCount": "1",
            "maxReplicaCount": "4"
          }
        }
      ],
      "state": "RUNNING",
      "createTime": "2023-09-12T20:45:33.220989Z",
      "startTime": "2023-09-12T20:50:36.992739253Z",
      "updateTime": "2023-09-12T20:50:42.813723Z"
    },
    {
      "name": "projects/123456789012/locations/us-central1/persistentResources/my-persistent-resource",
      "displayName": "my-persistent-resource",
      "resourcePools": [
        {
          "id": "n1-highmem-2-nvidia-tesla-t4-1",
          "machineSpec": {
            "machineType": "n1-highmem-2",
            "acceleratorType": "NVIDIA_TESLA_T4",
            "acceleratorCount": 1
          },
          "replicaCount": "4",
          "diskSpec": {
            "bootDiskType": "pd-standard",
            "bootDiskSizeGb": 200
          },
          "autoscalingSpec": {
            "minReplicaCount": "4",
            "maxReplicaCount": "12"
          }
        },
        {
          "id": "n1-standard-4",
          "machineSpec": {
            "machineType": "n1-standard-4"
          },
          "replicaCount": "4",
          "diskSpec": {
            "bootDiskType": "pd-ssd",
            "bootDiskSizeGb": 100
          }
        }
      ],
      "state": "RUNNING",
      "createTime": "2023-09-12T20:37:21.691977Z",
      "startTime": "2023-09-12T20:42:46.495575169Z",
      "updateTime": "2023-09-12T20:42:51.519271Z"
    },
  ]
}

Receber informações sobre um recurso permanente

Selecione uma das seguintes guias para instruções sobre como receber informações sobre um recurso persistente, incluindo o status, a configuração de hardware e as réplicas disponíveis.

Para visualizar informações sobre um recurso persistente no console do Google Cloud, faça o seguinte:

  1. No console do Google Cloud, acesse a página Recursos permanentes.

    Acessar recursos permanentes

  2. Clique no nome do recurso persistente que você quer visualizar.

Antes de usar os dados do comando abaixo, faça estas substituições:

  • PROJECT_ID: o ID do projeto do recurso permanente sobre o qual você quer receber informações.
  • LOCATION: a região do recurso permanente sobre o qual você quer receber informações.
  • PERSISTENT_RESOURCE_ID: o ID do recurso permanente sobre o qual você quer receber informações.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud ai persistent-resources describe PERSISTENT_RESOURCE_ID \
    --project=PROJECT_ID \
    --region=LOCATION
gcloud ai persistent-resources describe PERSISTENT_RESOURCE_ID `
    --project=PROJECT_ID `
    --region=LOCATION
gcloud ai persistent-resources describe PERSISTENT_RESOURCE_ID ^
    --project=PROJECT_ID ^
    --region=LOCATION

Você receberá uma resposta semelhante a esta:

Using endpoint [https://us-central1-aiplatform.googleapis.com/]
createTime: '2023-07-06T18:47:42.098296Z'
displayName: Test-Persistent-Resource
name: projects/123456789012/locations/us-central1/persistentResources/my-persistent-resource
resourcePools:
- diskSpec:
    bootDiskSizeGb: 100
    bootDiskType: pd-ssd
  machineSpec:
    machineType: n1-highmem-4
  replicaCount: '4'
- diskSpec:
    bootDiskSizeGb: 100
    bootDiskType: pd-ssd
  machineSpec:
    acceleratorCount: 1
    acceleratorType: NVIDIA_TESLA_P4
    machineType: n1-standard-4
  replicaCount: '4'
  usedReplicaCOunt: '2'
startTime: '2023-07-06T18:51:53.209127117Z'
state: RUNNING
updateTime: '2023-07-06T18:52:01.545109Z'

Antes de testar esse exemplo, siga as instruções de configuração para Python no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.

Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

resource_to_get = persistent_resource.PersistentResource(
    EXAMPLE_PERSISTENT_RESOURCE_ID
)

print(resource_to_get.display_name)
print(resource_to_get.state)
print(resource_to_get.start_time)

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do recurso permanente sobre o qual você quer receber informações.
  • LOCATION: a região do recurso permanente sobre o qual você quer receber informações.
  • PERSISTENT_RESOURCE_ID: o ID do recurso permanente sobre o qual você quer receber informações.

Método HTTP e URL:

GET https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources/PERSISTENT_RESOURCE_ID

Para enviar a solicitação, expanda uma destas opções:

execute o seguinte comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources/PERSISTENT_RESOURCE_ID"

execute o seguinte comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources/PERSISTENT_RESOURCE_ID" | Select-Object -Expand Content

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/123456789012/locations/us-central1/persistentResources/test-persistent-resource",
  "displayName": "test",
  "resourcePools": [
    {
      "id": "n1-highmem-2-nvidia-tesla-t4-1",
      "machineSpec": {
        "machineType": "n1-highmem-2",
        "acceleratorType": "NVIDIA_TESLA_T4",
        "acceleratorCount": 1
      },
      "replicaCount": "1",
      "diskSpec": {
        "bootDiskType": "pd-standard",
        "bootDiskSizeGb": 100
      },
      "autoscalingSpec": {
        "minReplicaCount": "1",
        "maxReplicaCount": "4"
      }
    }
  ],
  "state": "RUNNING",
  "createTime": "2023-09-12T20:45:33.220989Z",
  "startTime": "2023-09-12T20:50:36.992739253Z",
  "updateTime": "2023-09-12T20:50:42.813723Z"
}

A seguir