Configura i suggerimenti per le VM inattive


Questa pagina descrive come visualizzare e modificare la configurazione dei suggerimenti per le VM inattive. Ti consigliamo di modificare la configurazione per aumentare il numero di suggerimenti che ricevi o per evitare di classificare erroneamente le VM con workload intenzionalmente piccoli come 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 ai Google Cloud servizi e alle API. 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:

    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

I suggerimenti configurabili sono disponibili senza costi. L'utilizzo dei suggerimenti per ridurre l'utilizzo delle risorse può comportare un risparmio sui costi.

Configura i suggerimenti

Per configurare i suggerimenti per le VM inattive:

  1. Ottieni la configurazione attuale per acquisire il relativo file JSON.
  2. Modifica il file di configurazione in formato JSON.
  3. Per applicare le modifiche, carica il nuovo file di configurazione.

Ottieni la configurazione attuale

Puoi ottenere la configurazione attuale dei suggerimenti sulle VM inattive per il tuo progetto utilizzando Google Cloud CLI o REST.

gcloud

Per ottenere i parametri della configurazione attuale, utilizza il comando gcloud recommender recommender-config describe e inserisci google.compute.instance.IdleResourceRecommender come ID del motore per suggerimenti:

gcloud recommender recommender-config describe google.compute.instance.IdleResourceRecommender \
  --project=PROJECT_ID \
  --location=ZONE

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del tuo progetto
  • ZONE: la zona per la quale vuoi ottenere la configurazione attuale

Ad esempio:

gcloud recommender recommender-config describe google.compute.instance.IdleResourceRecommender \
  --project=my-project \
  --location=us-central1-c

Il comando restituisce la configurazione del motore per suggerimenti, incluso il campo secondario modificabile params.observation_period.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2021-02-03T04:41:15.330351Z"
}

REST

Per recuperare la configurazione corrente, utilizza il metodo recommenders.getConfig e specifica google.compute.instance.IdleResourceRecommender come ID del motore per suggerimenti:

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto per cui vuoi recuperare la configurazione del motore per suggerimenti.
  • ZONE: la zona che contiene il progetto.

Dalla riga di comando, esegui il seguente comando per ottenere la configurazione del motore per suggerimenti di un progetto:

PROJECT_ID=PROJECT_ID
ZONE=ZONE
curl -X GET -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/google.compute.instance.IdleResourceRecommender/config

Il comando restituisce la configurazione del motore per suggerimenti, incluso il campo secondario che puoi modificare: params.observation_period.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2021-02-03T04:41:15.330351Z"
}

Aggiorna la configurazione di un progetto

Per aggiornare la configurazione dei suggerimenti per le VM inattive, modifica il valore di observation_period e carica la nuova configurazione del progetto.

Puoi impostare il periodo di osservazione su un valore compreso tra 1 e 14 giorni utilizzando una stringa con il numero totale di secondi, seguito dalla lettera s.

  • Per un periodo di osservazione di 1 giorno, utilizza "86400s".
  • Per un periodo di osservazione di 14 giorni, utilizza "1209600s".

Dopo aver caricato la nuova configurazione, l'applicazione della modifica richiede circa 48 ore. Fino a quel momento, tutti i suggerimenti generati utilizzano la configurazione precedente.

gcloud

Per aggiornare i parametri di configurazione, utilizza il comando gcloud recommender recommender-config update e inserisci google.compute.instance.IdleResourceRecommender come ID del motore per suggerimenti:

gcloud recommender recommender-config update google.compute.instance.IdleResourceRecommender\
  --project=PROJECT_ID \
  --location=ZONE \
  --config-file=CONFIG_FILE_PATH \
  --etag=ETAG

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del tuo progetto
  • ZONE: la zona per la quale vuoi ottenere la configurazione attuale
  • CONFIG_FILE_PATH: il percorso del file JSON con la configurazione attuale
  • ETAG: il valore etag della configurazione attuale

Nel file di configurazione, specifica solo l'oggetto recommenderGenerationConfig con i parametri di configurazione aggiornati. Ad esempio, per specificare un periodo di osservazione di cinque giorni, utilizza il seguente file di configurazione:

{
  "params": {
    "observation_period": "432000s"
  }
}

Se il comando ha esito positivo, restituisce un corpo della risposta simile al seguente, che mostra la nuova configurazione con i parametri appena modificati.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "432000s"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2021-02-03T05:00:05Z"
}

REST

Per aggiornare la configurazione, utilizza il metodo recommenders.updateConfig e specifica google.compute.instance.IdleResourceRecommender come ID del motore per suggerimenti:

PATCH https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\""
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto per cui vuoi modificare la configurazione del motore per suggerimenti.
  • ZONE: la zona che contiene il progetto.

Salva il corpo della richiesta in un file, ad esempio config.json. Puoi quindi fare riferimento al file quando aggiorni la configurazione del motore per suggerimenti per il tuo progetto utilizzando un comando simile al seguente:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "x-goog-user-project: ${PROJECT_ID}" \
-d @config.json \
https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

Il comando POST restituisce un corpo della risposta simile al seguente, che mostra la nuova configurazione con i parametri appena modificati.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "432000s"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2021-02-03T05:00:05Z"
}

Passaggi successivi