Visualizza e applica i suggerimenti per le risorse inattive


Questo documento spiega come visualizzare e applicare i suggerimenti per le risorse inattive per volumi dei dischi permanenti, indirizzi IP e immagini disco personalizzate.

Compute Engine ti aiuta a identificare volumi dei dischi permanenti, indirizzi IP e immagini disco personalizzate inutilizzati e fornisce suggerimenti per aiutarti a minimizzare gli sprechi ed evitare addebiti non necessari.

Se ti interessano i suggerimenti per le istanze di macchine virtuali (VM) inattive, consulta Visualizza e applica i suggerimenti per le VM inattive.

Prima di iniziare

  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API di 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. After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

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

        Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

          After installing the Google Cloud CLI, initialize it by running the following command:

          gcloud init

          If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

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

Prezzi

Non sono previsti costi per l'utilizzo dei suggerimenti sulle risorse inattive.

Generazione di suggerimenti

Se una risorsa non è stata collegata a una VM o a un'altra risorsa per 15 giorni, il motore per suggerimenti la classifica come inattiva. Per saperne di più sulle condizioni per classificare una risorsa come inattiva e sulle azioni consigliate, consulta la tabella seguente:

Risorsa Condizione per la classificazione della risorsa come inattiva Azione consigliata Risparmi
Persistent Disk Devono essere vere tutte le seguenti condizioni:
  • Il disco permanente è stato creato almeno 15 giorni fa.
  • Il disco permanente non è mai stato collegato a una VM.
  • Il disco permanente è vuoto.
  • Il disco permanente non è associato a pod GKE.
Elimina Risparmia il 100% del costo del disco. Per saperne di più, consulta Prezzi dei dischi e delle immagini.
Persistent Disk Devono essere vere tutte le seguenti condizioni:
  • Il disco permanente è stato scollegato per almeno 15 giorni.
  • Il disco permanente non è associato a pod GKE.
Crea uno snapshot del disco permanente, quindi eliminalo Riduci il costo di manutenzione del disco dal 35% al 92%. Per saperne di più, consulta Prezzi dei dischi e delle immagini.
Immagine personalizzata Devono essere vere tutte le seguenti condizioni:
  • L'immagine non è stata utilizzata per creare un disco per almeno 15 giorni.
  • L'immagine non viene utilizzata in nessun modello di istanza.
Elimina Risparmia il 100% del costo dell'immagine. Per saperne di più, consulta Prezzi dei dischi e delle immagini.
Indirizzo IP esterno L'indirizzo IP non è stato collegato a una risorsa per almeno 15 giorni. Elimina Risparmia il 100% del costo dell'indirizzo IP. Per saperne di più, consulta Prezzi degli indirizzi IP esterni.

Frequenza dei suggerimenti

I suggerimenti sulle risorse inattive iniziano 15 giorni dopo la creazione delle risorse e vengono aggiornati ogni 24 ore.

Visualizzazione dei suggerimenti

Per visualizzare i suggerimenti sulle risorse inattive, utilizza gcloud CLI o REST.

Console

Nella console Google Cloud , vai alla pagina Tutti i suggerimenti.

Vai a Suggerimenti

Tutte le risorse inattive sono elencate in Risorse Compute Engine non utilizzate.

gcloud

Utilizza il comando gcloud recommender recommendations list con il flag --recommender=RECOMMENDER_ID:

gcloud recommender recommendations list \
    --project=PROJECT_ID \
    --location=LOCATION \
    --recommender=RECOMMENDER_ID \
    --format=yaml

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto.
  • LOCATION: la località che contiene le risorse per le quali vuoi ricevere suggerimenti.
    • Per i volumi dei dischi permanenti, specifica una zona o una regione, ad esempio us-central1-c.
    • Per gli IP:
      • Per elencare gli IP regionali, devi specificare una regione.
      • Per elencare gli IP globali, specifica global. Per saperne di più sulle risorse di indirizzi IP regionali e globali, consulta Indirizzi IP.
    • Per le immagini personalizzate, specifica global.
  • RECOMMENDER_ID: l'ID del motore per suggerimenti
    • Per i dischi, specifica google.compute.disk.IdleResourceRecommender.
    • Per le immagini, specifica google.compute.image.IdleResourceRecommender.
    • Per gli IP, specifica google.compute.address.IdleResourceRecommender.

Ad esempio, il seguente comando elenca i suggerimenti per i dischi permanenti inattivi in us-central1-c per test-project:

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


---
content:
    operationGroups:
    - operations:
      - action: add
        resource: //compute.googleapis.com/projects/test-project/global/snapshots/$snapshot-name
        resourceType: compute.googleapis.com/Disk
        path: /
        value:
        - name: $snapshot-name
          sourceDisk: projects/test-project/locations/us-central1-c/disks/pd-name
          storageLocations: us-central1
      - action: remove
        resource: //compute.googleapis.com/projects/test-project/zones/us-central1-c/disks/pd-name
        resourceType: compute.googleapis.com/Disk
        path: /
description: Save cost by snapshotting and then deleting idle persistent disk 'pd-name'
name: projects/test-project/locations/us-central1-c/recommenders/google.compute.disk.IdleResourceRecommender/recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1
recommenderSubtype: SNAPSHOT_AND_DELETE_DISK
lastRefreshTime:
  seconds: 1543912652
primaryImpact:
  category: COST
  costProjection:
    cost:
      currencyCode: USD
      units: '-50'
    duration:
      seconds: 2592000
stateInfo: ACTIVE
etag: "cb0e6ac2cfc0b591"

Scopri di più sull'utilizzo di gcloud CLI per lavorare con i suggerimenti.

REST

Chiama il metodo recommendations.list e specifica l'ID motore per suggerimenti, ad esempio google.compute.disk.IdleResourceRecommender:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/RECOMMENDER_ID/recommendations

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto.
  • LOCATION: la località che contiene le risorse per le quali vuoi ricevere suggerimenti.
    • Per i volumi dei dischi permanenti, specifica una zona o una regione, ad esempio us-central1-c.
    • Per gli IP:
      • Per elencare gli IP regionali, devi specificare una regione.
      • Per elencare gli IP globali, specifica global. Per saperne di più sulle risorse di indirizzi IP regionali e globali, consulta Indirizzi IP.
    • Per le immagini personalizzate, specifica global.
  • RECOMMENDER_ID: l'ID del motore per suggerimenti
    • Per i dischi, specifica google.compute.disk.IdleResourceRecommender.
    • Per le immagini, specifica google.compute.image.IdleResourceRecommender.
    • Per gli IP, specifica google.compute.address.IdleResourceRecommender.

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

PROJECT_ID=test-project
LOCATION=us-central1-c
RECOMMENDER_ID=google.compute.disk.IdleResourceRecommender

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$LOCATION/recommenders/$RECOMMENDER_ID/recommendations

Esempio di risposta JSON per il suggerimento per disco permanente inattivo:

{
 "description" : "Save cost by deleting idle persistent disk 'pd-name'",
 "name": "projects/test-project/locations/us-central1-c/recommenders/"
         "google.compute.disk.IdleResourceRecommender/"
         "recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1",
 "recommenderSubtype" : "SNAPSHOT_AND_DELETE_DISK",
 "lastRefreshTime": {
   "seconds": 1543912652
 },
 "primaryImpact": {
   "category": COST,
   "costProjection": {
    "cost": {"currencyCode": "USD", "units": -50},
    "duration": { "seconds": 2592000 }
   }
 },
 "stateInfo": ACTIVE,
 "content": {
   "operationGroups" : [
    {
      "operations" : [
       {
         "action": "add",
         "resourceType": "compute.googleapis.com/Disk",
         "resource" : "//compute.googleapis.com/projects/test-project/global/snapshots/$snapshot-name",
         "value": {
           "name": "$snapshot-name",
           "sourceDisk": "projects/test-project/zones/us-central1-c/disks/pd-name",
           "storageLocations": ["us-central1"],
         }
       },
       {
         "action": "remove",
         "resourceType": "compute.googleapis/Disk",
         "resource": "//compute.googleapis.com/projects/test-project/"
                     "zones/us-central1-c/disks/pd-name"
       }
      ]
    }
   ]
 },
 "associatedInsights": [
    {
      "insight": "projects/test-project/locations/us-central1-c/insightTypes/google.compute.disk.IdleResourceInsight/insights/31326443-bcc3-4776-9b86-48879fddb656"
    }
  ],
 "etag": "cb0e6ac2cfc0b591"
}

Interpretazione della risposta del suggerimento

Ogni suggerimento che ricevi tramite gcloud CLI o REST contiene gruppi di operazioni, con operazioni che puoi eseguire in serie per applicare il suggerimento. Ad esempio, i gruppi di operazioni dei suggerimenti per i dischi permanenti inattivi includono una o due operazioni:

  • Se il disco permanente inattivo contiene dati, il suggerimento include un'operazione add per creare uno snapshot ed eseguire il backup del disco permanente. Ad esempio:

       {
         "action": "add",
         "resourceType": "compute.googleapis.com/Disk",
         "resource" : "//compute.googleapis.com/projects/test-project/global/snapshots/$snapshot-name",
         "path": "/",
         "value": {
           "name": "$snapshot-name",
           "sourceDisk": "projects/test-project/zones/us-central1-c/disks/pd-name",
           "storageLocations": ["us-central1"]
         }
       }
    
  • Un'operazione remove per eliminare definitivamente il disco permanente inattivo. Ad esempio:

       {
         "action": "remove",
         "resourceType": "compute.googleapis.com/Disk",
         "resource" : "//compute.googleapis.com/projects/test-project/zones/us-central1-c/disks/pd-name",
         "path": "/"
       }
    

Visualizzazione degli insight per i suggerimenti sulle risorse inattive

Il motore per suggerimenti genera suggerimenti in base agli insight sulle risorse. Visualizzando gli insight sulle risorse, puoi scoprire di più su queste risorse, ad esempio per quanto tempo una risorsa è stata scollegata da una VM o se un disco permanente è vuoto.

Per visualizzare l'insight che ha generato il suggerimento puoi utilizzare gcloud CLI o REST.

gcloud

Utilizza il comando insights list.

gcloud beta recommender insights list --project=PROJECT_NAME \
  --location=LOCATION --insight-type=INSIGHT_TYPE

Sostituisci quanto segue:

  • LOCATION: la località che contiene le risorse sulle quali vuoi ottenere insight.
    • Per i DP, specifica una zona o una regione, ad esempio us-central1-c.
    • Per gli IP:
      • Per elencare gli IP regionali, devi specificare una regione.
      • Per elencare gli IP globali, specifica global. Per saperne di più sulle risorse di indirizzi IP regionali e globali, consulta Indirizzi IP.
    • Per le immagini personalizzate, specifica global.
  • INSIGHT_TYPE: l'ID del tipo di insight
    • Per i dischi, specifica google.compute.disk.IdleResourceInsight.
    • Per le immagini, specifica google.compute.image.IdleResourceInsight.
    • Per gli IP, specifica google.compute.address.IdleResourceInsight.

REST

Utilizza il metodo insights.list.

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/insightTypes/INSIGHT_TYPE/insights

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto.
  • LOCATION: la località che contiene le risorse sulle quali vuoi ottenere insight.
    • Per i volumi dei dischi permanenti, specifica una zona o una regione, ad esempio us-central1-c.
    • Per gli IP:
      • Per elencare gli IP regionali, devi specificare una regione.
      • Per elencare gli IP globali, specifica global. Per saperne di più sulle risorse di indirizzi IP regionali e globali, consulta Indirizzi IP.
    • Per le immagini personalizzate, specifica global.
  • INSIGHT_TYPE: l'ID del tipo di insight
    • Per i dischi, specifica google.compute.disk.IdleResourceInsight.
    • Per le immagini, specifica google.compute.image.IdleResourceInsight.
    • Per gli IP, specifica google.compute.address.IdleResourceInsight.

Ecco un esempio di risposta di un insight su una risorsa disco permanente inattiva:

{
  "name": "projects/test-project/locations/us-central1-c/insightTypes/google.compute.disk.IdleResourceInsight/insights/0ec21a13-bb04-3121-7321-dc43a11cc3e2",
  "description": "Disk 'pd-name' in zone 'us-central1-c' was last used 17 days ago. Consider taking snapshot and delete it.",
  "targetResources": [
    "//compute.googleapis.com/projects/test-project/zones/us-central1-c/disks/pd-name"
  ],
  "insightSubtype": "IDLE_DISK",
  "content": {
    "diskLastUseTime": "2019-10-01 13:00:00",
    "isBlank": false,
  },
  "lastRefreshTime": "2019-10-10 13:00:00",
  "observationPeriod": "15 days",
  "stateInfo": {
    "state": "ACTIVE"
  },
  "category": "COST",
  "etag": "fds421j2349",
  "associatedRecommendations": [
    {
      "projects/test-project/locations/us-central1-c/recommenders/"
      "google.compute.disk.IdleResourceRecommender/"
      "recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1"
    }
  ]
}

La risposta di esempio include i seguenti campi:

  • diskLastUseTime: l'ultima volta che il disco è stato collegato a una VM. Se il disco non è mai stato collegato a una VM, questo valore viene impostato sulla data e ora di creazione del disco.
  • isBlank: questo campo è impostato su true se il disco è vuoto e non è mai stato collegato a una VM. In caso contrario, è false.

Per saperne di più sugli insight, consulta la documentazione di riferimento.

Applicazione dei suggerimenti per le risorse inattive

Se ricevi un suggerimento su una risorsa inattiva e decidi di applicarlo, segui le istruzioni riportate nelle prossime sezioni.

Eliminazione di un indirizzo IP inattivo

Consulta il metodo addresses.delete, il comando gcloud compute addresses delete o la documentazione relativa al rilascio di un indirizzo IP esterno statico.

Eliminazione di immagini personalizzate inattive

Consulta il metodo images.delete, il comando gcloud compute images delete o la documentazione relativa all'eliminazione di un'immagine.

Applicazione dei suggerimenti per i dischi permanenti inattivi

Se devi creare uno snapshot di un disco permanente prima di eliminarlo, consulta Creazione di snapshot di dischi permanenti.

Per eliminare un disco permanente inattivo, consulta il comando gcloud compute disks delete.

Per informazioni su come recuperare i dati da uno snapshot e ricreare il tuo disco permanente, consulta Ripristino di snapshot.