Conferir e aplicar recomendações de reserva subutilizadas


Esta página descreve como usar as recomendações de reserva para identificar e excluir reservas sob demanda subutilizadas e evitar cobranças por recursos que você não usa.

  • Para mais informações sobre como configurar o Recomendador de reserva inativas para receber mais ou menos recomendações, consulte Configurar recomendações de reserva subutilizadas ou Configurar recomendações de reserva inativas.

    Antes de começar

    • Analise as limitações para verificar se sua reserva é compatível com recomendações de reserva inativa.
    • Configure a autenticação, caso ainda não tenha feito isso. A autenticação é o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud. Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no Compute Engine selecionando uma das seguintes opções:

      Select the tab for how you plan to use the samples on this page:

      Console

      When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

      gcloud

      1. Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init
      2. Set a default region and zone.
      3. REST

        Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.

          Install the Google Cloud CLI, then initialize it by running the following command:

          gcloud init

        Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.

    Conferir recomendações de reserva pouco utilizada

    Para ver recomendações sobre reservas inativas, use uma destas opções.

    Conclua esta tarefa usando um dos métodos a seguir.

    Console

    1. No console do Google Cloud, acesse o hub de FinOps.

      Acessar o hub do FinOps

      Na seção Top recommendations, você pode conferir recomendações de reserva pouco utilizadas.

      Visualização da lista "Principais recomendações"

    2. Na seção Recomendações principais, clique na recomendação vinculada às reservas subutilizadas.

      Quando você clica na recomendação, ela mostra o nível de subutilização na seção Insight.

      A página com os detalhes da recomendação é aberta. Na seção Insight, é possível conferir a extensão da subutilização.

    3. Para conferir os detalhes da reserva, clique em Conferir reservas.

      Clicar em View Reservation Details mostra a seção Utilization, que mostra o tamanho da reserva e sua utilização real.

      Clicar em Edit ativa a seção Configuration, em que você pode definir um novo valor para o número de VMs que melhor corresponde ao uso pretendido.

      Se você não precisar mais da reserva, exclua-a.

    gcloud

    Para ver recomendações sobre reservas subutilizadas, use o Comando gcloud recommender recommendations list com a flag --recommender=google.compute.RightSizeResourceRecommender:

    gcloud recommender recommendations list \
      --location=ZONE \
      --recommender=google.compute.RightSizeResourceRecommender \
      --format=yaml \
      --project=PROJECT_ID
    

    Substitua:

    • ZONE pela zona que contém reservas. para listar as recomendações.
    • PROJECT_ID pelo código do projeto;

    Por exemplo:

    gcloud recommender recommendations list \
      --location=us-central1-c \
      --recommender=google.compute.RightSizeResourceRecommender \
      --format=yaml \
      --project=my-project
    

    Se não houver reservas subutilizadas no local, a resposta será vazia. Caso contrário, a resposta incluirá os seguintes campos para cada recomendação:

    
    ---
    associatedInsights:
    - insight: projects/953727763714/locations/us-central1-f/insightTypes/google.compute.RightSizeResourceRecommender/insights/ecf77776-4a2a-4e6e-aad2-b7f9c632e5f9
    content:
    operationGroups:
    - operations:
      - action: remove
        path: /
        resource: //compute.googleapis.com/projects/committed-use-discount-test/zones/us-central1-f/reservations/test-reservation
        resourceType: compute.googleapis.com/Reservation
    overview:
      currentReservation:
        machineType: n1-standard-1
        reservationName: test-reservation
        reservedMachineCount: '1'
        zone: us-central1-f
    description: Save cost by deleting the underutilized reservation test-reservation
    etag: '"aff724ab8e40e1ef"'
    lastRefreshTime: '2024-06-10T07:00:00Z'
    name: projects/953727763714/locations/us-central1-f/recommenders/google.compute.RightSizeResourceRecommender/recommendations/56f8ac5d-8380-4cb8-a76f-bbc270fb4b8e
    primaryImpact:
    category: COST
    costProjection:
      cost:
        currencyCode: USD
        nanos: -199820000
        units: '-1072'
      costInLocalCurrency:
        currencyCode: USD
        nanos: -199820000
        units: '-1072'
      duration: 2592000s
    priority: P2
    recommenderSubtype: DELETE_RESERVATION
    stateInfo:
    state: ACTIVE
    targetResources:
    - //compute.googleapis.com/projects/committed-use-discount-test/zones/us-central1-f/reservations/test-reservation
    

    Saiba mais sobre como trabalhar com recomendações usando a CLI do Google Cloud em Exemplos da gcloud.

    REST

    Para acessar recomendações sobre reservas subutilizadas, faça uma solicitação GET para o Método recommendations.list e use o seguinte tipo de recomendação:

    • google.compute.RightSizeResourceRecommender

    A chamada da API tem esta aparência:

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.RightSizeResourceRecommender/recommendations
    

    Faça as seguintes substituições: - PROJECT_ID: o ID do projeto. - ZONE: a zona que contém as instâncias que receberão a lista de recomendações.

    O exemplo a seguir mostra o envio de uma solicitação com curl e a amostra de resposta associada.

    PROJECT_ID=my-project
    ZONE=us-central1-c
    RECOMMENDER_ID=google.compute.RightSizeResourceRecommender
    
    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "x-goog-user-project: $PROJECT_ID" \
      https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/$RECOMMENDER_ID/recommendations
    

    Exemplo de resposta JSON para uma recomendação de reserva subtulizadas:

    {
      "associatedInsights": [
        {
          "insight": "projects/9531234763714/locations/us-central1-f/insightTypes/google.compute.RightSizeResourceRecommender/insights/ecf77776-4a2a-4e6e-aad2-b7f9c632e5f9"
        }
      ],
      "content": {
        "operationGroups": [
          {
            "operations": [
              {
                "action": "remove",
                "path": "/",
                "resource": "//compute.googleapis.com/projects/committed-use-discount-test/zones/us-central1-f/reservations/test-reservation",
                "resourceType": "compute.googleapis.com/Reservation"
              }
            ]
          }
        ],
        "overview": {
          "currentReservation": {
            "machineType": "n1-standard-1",
            "reservationName": "test-reservation",
            "reservedMachineCount": "1",
            "zone": "us-central1-f"
          }
        }
      },
      "description": "Save cost by deleting the underutilized reservation test-reservation",
      "etag": "\"8d5603cac8fa9342\"",
      "lastRefreshTime": "2024-06-11T07:00:00Z",
      "name": "projects/9531234763714/locations/us-central1-f/recommenders/google.compute.RightSizeResourceRecommender/recommendations/56f8ac5d-8380-4cb8-a76f-bbc270fb4b8e",
      "primaryImpact": {
        "category": "COST",
        "costProjection": {
          "cost": {
            "currencyCode": "USD",
            "nanos": -199820000,
            "units": "-1072"
          },
          "costInLocalCurrency": {
            "currencyCode": "USD",
            "nanos": -199820000,
            "units": "-1072"
          },
          "duration": "2592000s"
        }
      },
      "priority": "P2",
      "recommenderSubtype": "DELETE_RESERVATION",
      "stateInfo": {
        "state": "ACTIVE"
      },
      "targetResources": [
        "//compute.googleapis.com/projects/committed-use-discount-test/zones/us-central1-f/reservations/test-reservation"
      ]
    }
    

    Encontre mais detalhes sobre cada campo na documentação da API Recommender.

    Como interpretar a resposta da recomendação

    Cada recomendação recebida por meio da CLI gcloud ou da REST contém um grupo de operações, com operações que podem ser executadas em série para aplicar a recomendação. Para reservas subutilizadas, o grupos de operações incluem uma operação remove para excluir a reserva:

    {
      "action": "remove",
      "path": "/",
      "resource": "//compute.googleapis.com/projects/committed-use-discount-test/zones/us-central1-f/reservations/test-reservation",
      "resourceType": "compute.googleapis.com/Reservation"
    }
    

    Aplicar recomendações de reserva subutilizada

    Com base nas recomendações de reserva subutilizadas, ajuste o tamanho da reserva ou exclua a reserva se você não precisar mais dela.

    A seguir