Visualizzare e applicare i consigli per le prenotazioni inattive


Questa pagina descrive come utilizzare i consigli per le prenotazioni per identificare ed eliminare le prenotazioni on demand inattive, in modo da evitare gli addebiti per le risorse che non utilizzi.

Prima di iniziare

  • Esamina le limitazioni per verificare se la tua prenotazione supporta i consigli per le prenotazioni inattive.
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    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

      Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

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

        gcloud init

      Per saperne di più, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Visualizzare i consigli per le prenotazioni inattive

Per visualizzare i consigli sulle prenotazioni inattive, utilizza una delle seguenti opzioni.

Completa questa operazione utilizzando uno dei seguenti metodi.

Console

Nella console Google Cloud, vai a FinOps Hub.

Vai all'hub FinOps

gcloud

Per visualizzare i consigli sulle prenotazioni inattive, utilizza il comando gcloud recommender recommendations list con il flag --recommender=google.compute.IdleResourceRecommender:

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

Sostituisci quanto segue:

  • ZONE con la zona contenente le prenotazioni per le quali elencare i consigli.
  • PROJECT_ID con l'ID del tuo progetto.

Ad esempio:

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

Se non sono presenti prenotazioni inutilizzate nella località, la risposta è vuota. In caso contrario, la risposta include i seguenti campi per ogni consiglio:


---
associatedInsights:
- insight: projects/953727763714/locations/us-central1-f/insightTypes/google.compute.IdleResourceInsight/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 idle reservation test-reservation
etag: '"aff724ab8e40e1ef"'
lastRefreshTime: '2024-06-10T07:00:00Z'
name: projects/953727763714/locations/us-central1-f/recommenders/google.compute.IdleResourceRecommender/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

Scopri di più sull'utilizzo dei consigli con Google Cloud CLI negli esempi gcloud.

REST

Per visualizzare i consigli sulle prenotazioni inattive, invia una richiesta GET al metodo recommendations.list e utilizza il seguente tipo di consiglio:

  • google.compute.IdleResourceRecommender

La chiamata API ha il seguente aspetto:

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

Sostituisci quanto segue: - PROJECT_ID: l'ID del tuo progetto. - ZONE: la zona contenente le istanze per le quali elencare i consigli.

L'esempio seguente mostra come inviare una richiesta con curl e la risposta di esempio associata.

PROJECT_ID=my-project
ZONE=us-central1-c
RECOMMENDER_ID=google.compute.IdleResourceRecommender

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

Esempio di risposta JSON per un consiglio per una prenotazione inutilizzata:

{
  "associatedInsights": [
    {
      "insight": "projects/9531234763714/locations/us-central1-f/insightTypes/google.compute.IdleResourceInsight/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 idle reservation test-reservation",
  "etag": "\"8d5603cac8fa9342\"",
  "lastRefreshTime": "2024-06-11T07:00:00Z",
  "name": "projects/9531234763714/locations/us-central1-f/recommenders/google.compute.IdleResourceRecommender/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"
  ]
}

Puoi trovare ulteriori dettagli su ogni campo nella documentazione dell'API Recommender.

Interpretazione della risposta al consiglio

Ogni consiglio che ricevi tramite la gcloud CLI o REST contiene un gruppo di operazioni, con operazioni che puoi eseguire in serie per applicare il consiglio. Per le prenotazioni inutilizzate, i gruppi di operazioni includono un'operazione remove per eliminare la prenotazione:

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

Applicare i suggerimenti per le prenotazioni inattive

In base ai consigli per le prenotazioni inutilizzate, modifica le dimensioni della prenotazione o elimina la prenotazione se non ne hai più bisogno.

Passaggi successivi