Applicazione dei suggerimenti sul tipo di macchina per i gruppi di istanze gestite

Compute Engine fornisce suggerimenti sul tipo di macchina per i gruppi di istanze gestite (MIG) al fine di migliorare le prestazioni dei carichi di lavoro e l'efficienza in termini di costi. Utilizza questi suggerimenti per determinare se devi ridimensionare il tipo di macchina delle istanze per aggiungere o rimuovere risorse vCPU e di memoria.

Per saperne di più sui tipi di macchina disponibili per le istanze VM, leggi la documentazione relativa ai tipi di macchina.

I suggerimenti sul tipo di macchina sono anche noti come consigli relativi al dimensionamento ottimale.

Prima di iniziare

  • Leggi la documentazione della console Google Cloud.
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale viene verificata l'identità per l'accesso ai servizi e alle API Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in Compute Engine nel seguente modo.

    Seleziona la scheda relativa a come intendi utilizzare gli esempi in questa pagina:

    Console

    Quando utilizzi la console Google Cloud per accedere ai servizi e alle API di Google Cloud, non devi configurare l'autenticazione.

    gcloud

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init
    2. Imposta una regione e una zona predefinite.

    REST

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

      Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init

Limitazioni

I suggerimenti sono disponibili per i gruppi di istanze gestite che si trovano in una zona singola e non hanno scalabilità automatica o bilanciamento del carico.

Prezzi

I suggerimenti sul tipo di macchina sono disponibili senza costi. Se applichi un suggerimento per ridimensionare il tipo di macchina della tua istanza, ti viene addebitato il tipo di macchina scelto.

Casi d'uso

Puoi sfruttare i suggerimenti sul tipo di macchina se hai le seguenti condizioni di carico di lavoro:

  • Carichi di lavoro con aumenti e diminuzioni periodiche del traffico, come quelli soggetti al traffico stagionale.
  • Carichi di lavoro sottoutilizzati in CPU e RAM perché sono limitati da altre limitazioni, come la velocità effettiva di lettura/scrittura.
  • Carichi di lavoro che eseguono software che richiedono singole licenze software e che non possono aggiungere altre istanze; in questo caso, puoi fare affidamento sui suggerimenti relativi ai tipo di macchina per scalare i tuoi tipi di macchina mantenendo costante il numero di istanze VM.
  • Carichi di lavoro che non sono in grado di adattarsi dinamicamente a un numero variabile di istanze, ad esempio carichi di lavoro non adatti alla scalabilità automatica.

Ti consigliamo di non utilizzare i suggerimenti sul tipo di macchina per uno dei seguenti motivi:

  • I carichi di lavoro presentano picchi di CPU molto brevi. Poiché i suggerimenti per il tipo di macchina si basano sull'utilizzo medio della CPU a intervalli di 60 secondi, potrebbero non essere generati abbastanza rapidamente per acquisire picchi più brevi. Le app con picchi di utilizzo brevi potrebbero dover essere eseguite su un tipo di macchina più grande di quello consigliato oppure puoi abilitare la scalabilità automatica per far fronte a questi picchi.
  • I picchi di carico si verificano meno spesso di una volta in 8 giorni (ad esempio mensili). I picchi rari vengono trascurati dall'algoritmo di dimensionamento ottimale, che esamina solo gli ultimi 8 giorni di cronologia.
  • Ogni istanza nel tuo gruppo di istanze gestite gestisce un carico di lavoro drasticamente diverso. In questa situazione, i suggerimenti ottimizzano le istanze VM con il carico più elevato, determinando un sovradimensionamento della maggior parte delle istanze VM del gruppo.
  • Il gruppo di istanze gestite ha VM sottoutilizzate perché non gestisce il carico in tempo reale e ha lo scopo di fornire una capacità di failover pronta per il servizio.
  • Il gruppo di istanze gestite contiene VM di dimensioni eccessive per uno dei seguenti motivi:
    • Le licenze software richiedono dimensioni minime della macchina.
    • Devi soddisfare i requisiti di IOPS di archiviazione o rete disponibili solo con un tipo di macchina minimo.

Come funzionano i suggerimenti sul tipo di macchina

Compute Engine monitora l'utilizzo di CPU e memoria delle macchine virtuali in esecuzione e fornisce suggerimenti utilizzando i dati degli ultimi 8 giorni. Per consigliare il miglior tipo di macchina singola per tutte le istanze di un gruppo di istanze gestite, Compute Engine genera un suggerimento standard sul tipo di macchina per le singole istanze e, dopo aver modificato i valori anomali, sceglie un tipo di macchina che non ridimensiona nessuna singola istanza VM. Eventuali istanze non in esecuzione, come l'arresto o il riavvio di istanze VM, non sono incluse nel calcolo.

Compute Engine potrebbe fornire suggerimenti simili ai seguenti:

  • Se il tuo gruppo di istanze ha avuto un utilizzo ridotto della CPU per la maggior parte del tempo, Compute Engine consiglia un tipo di macchina con meno CPU virtuali.
  • Se il tuo gruppo di istanze ha registrato un utilizzo elevato della CPU per la maggior parte del tempo, Compute Engine consiglia un tipo di macchina con più CPU virtuali.
  • Se il gruppo di istanze non ha utilizzato un'ampia frazione della sua memoria, Compute Engine consiglia un tipo di macchina con meno memoria.
  • Se il tuo gruppo di istanze utilizza attivamente e nella maggior parte dei casi una grande frazione della sua memoria. Compute Engine consiglia un tipo di macchina con più memoria.

Compute Engine può suggerire l'uso di un tipo di macchina standard o personalizzata. Tieni presente che ci sono alcune limitazioni alla quantità di memoria e vCPU disponibili per una macchina. In particolare, l'aumento di una risorsa potrebbe richiedere l'aumento dell'altra contemporaneamente in modo da rispettare le specifiche di un tipo di macchina valido. Inoltre, Compute Engine consiglia solo i tipi di macchina disponibili nella zona in cui è in esecuzione l'istanza.

Per maggiori informazioni, consulta Specifiche tipo di macchina personalizzate.

Se il carico di lavoro per il gruppo di istanze gestite è molto diverso da una singola istanza all'altra, alcune istanze potrebbero essere sovradimensionate in modo che le istanze completamente utilizzate abbiano risorse sufficienti in base al suggerimento. Ad esempio, Compute Engine potrebbe consigliare il seguente suggerimento per supportare il carico di lavoro dell'istanza 4, anche se le istanze 1, 2, 3 e 5 potrebbero essere sovradimensionate e sottoutilizzate:

Suggerimenti creati per un gruppo di istanze gestite
Esempio di sovradimensionamento dovuto a carichi di lavoro diversi nelle istanze gestite

Per questo motivo, i suggerimenti per un gruppo di istanze gestite funzionano meglio quando le istanze hanno un carico di lavoro distribuito ragionevolmente.

Per le stime delle differenze di costo, il costo di un gruppo di istanze si basa sull'utilizzo della settimana precedente (prima dello sconto per utilizzo sostenuto) ed viene estrapolato in 30 giorni. Questo valore viene quindi confrontato con il costo mensile consigliato per il tipo di macchina (prima dello sconto per utilizzo sostenuto). Per informazioni precise sui prezzi e sui dettagli, leggi la documentazione sui prezzi.

Visualizzazione dei suggerimenti sul tipo di macchina

Compute Engine fornisce i suggerimenti disponibili tramite la console Google Cloud. Puoi visualizzare i suggerimenti sul tipo di macchina tramite il motore per suggerimenti utilizzando gcloud CLI o REST.

Console

  1. Nella console Google Cloud, vai alla pagina Gruppi di istanze.

    Vai alla pagina Gruppi di istanze

  2. Seleziona il progetto e fai clic su Continua.
  3. Controlla la colonna Consiglio per esaminare i suggerimenti per singoli gruppi di istanze gestite. Puoi anche ordinare la colonna per quantità di risparmio stimato. Se accanto ai gruppi di istanze non sono presenti suggerimenti, Compute Engine non ha alcun suggerimento da formulare.

    Colonna Consigli.

  4. Se il gruppo di istanze ha due modelli di istanza, Compute Engine fornisce suggerimenti per ogni modello. Fai clic su un suggerimento per visualizzare quelli per il rispettivo modello di istanza.

    Consigli per più modelli

gcloud

Utilizza il comando gcloud recommender recommendations list e specifica il motore per suggerimenti per il dimensionamento gruppo di istanze gestite VM.

gcloud recommender recommendations list \
      --recommender=google.compute.instanceGroupManager.MachineTypeRecommender \
      --project [PROJECT_ID] \
      --location [ZONE] \
      --format=yaml

Ad esempio:

gcloud recommender recommendations list \
    --recommender=google.compute.instanceGroupManager.MachineTypeRecommender \
    --project my-project \
    --location us-central1-a \
    --format=yaml

La risposta include i seguenti campi per ogni suggerimento:


---
content:
  ...
  operationGroups:
  - operations:
    - action: test
      path: /properties/machineType
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/my-old-template
      resourceType: compute.googleapis.com/InstanceTemplate
      value: n1-standard-4
    - action: copy
      path: /
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      sourcePath: /
      sourceResource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/my-old-template
    - action: replace
      path: /name
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      value: $new-it-name
    - action: replace
      path: /properties/machineType
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      value: custom-2-5632
  - operations:
    - action: replace
      path: /versions/*/name
      pathValueMatchers:
        versions/*/instanceTemplate:
          matchesPattern: .*global/instanceTemplates/my-old-template
      resource: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instanceGroupManagers/example-group
      resourceType: compute.googleapis.com/InstanceGroupManager
      value: global/instanceTemplates/$new-it-name
...
description: Save cost by changing machine type from n1-standard-4 to custom-2-5120.
...
name: projects/823742397239/locations/us-central1-a/recommenders/google.compute.instanceGroupManager.MachineTypeRecommender/recommendations/c50a1c41-7e65-417d-a32e-45248a2cb318
...

Per ulteriori informazioni, consulta la documentazione relativa al motore per suggerimenti.

REST

Utilizza l'API motore per suggerimenti con l'ID motore per suggerimenti del tipo di macchina del gruppo di istanze gestite.

PROJECT_ID=my-project
LOCATION=us-central1-c
RECOMMENDER_ID=google.compute.instanceGroupManager.MachineTypeRecommender

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

La risposta include i seguenti campi per ogni suggerimento:

Per ulteriori informazioni, consulta la documentazione relativa al motore per suggerimenti.

Quando crei un nuovo gruppo di istanze gestite, i suggerimenti per il nuovo gruppo vengono visualizzati 24 ore dopo la creazione del gruppo.

In seguito, i suggerimenti vengono aggiornati a intervalli regolari durante il giorno.

Applicazione dei suggerimenti ai gruppi di istanze

Se vuoi applicare i suggerimenti di Compute Engine, puoi ridimensionare le istanze gestite direttamente dalla console. In alternativa, puoi eseguire manualmente le operazioni di ridimensionamento. L'API Recommender restituisce una serie di operazioni di ridimensionamento; consulta la pagina relativa ai gruppi operativi per saperne di più.

Quando applichi un suggerimento a un gruppo di istanze gestite, esegui le seguenti operazioni:

  1. Clona i modelli di istanza utilizzati dal gruppo di istanze gestite.
  2. Modifica i modelli di istanza clonati in base ai suggerimenti e alle eventuali modifiche che vuoi apportare.
  3. Utilizza lo strumento di aggiornamento dei gruppi di istanze gestite per applicare il nuovo modello. Se il gruppo di istanze ha due modelli di istanza:

    1. Puoi applicare i suggerimenti solo a un modello di istanza alla volta.
    2. Un gruppo di istanze gestite può mantenere al massimo due modelli di istanza alla volta, quindi non puoi applicare un suggerimento pur mantenendo altri due modelli di istanza. Tuttavia, puoi applicare un suggerimento se il gruppo di istanze ha un solo modello di istanza.

Per ridimensionare le istanze gestite direttamente dalla console:

  1. Nella console Google Cloud, vai alla pagina Gruppi di istanze.

    Vai alla pagina Gruppi di istanze

  2. Fai clic sul testo del suggerimento per il gruppo di istanze da aggiornare.

    Selezione di una colonna per i suggerimenti.

  3. Viene visualizzato un popup con ulteriori dettagli e l'opzione Annulla, Ignora il consiglio o Continua. Per esaminare e applicare il consiglio, fai clic su Continua.

  4. Nella pagina Esamina consiglio, il consiglio è spiegato dettagliatamente. Se continui a utilizzare il suggerimento, Compute Engine aggiorna tutte le istanze nel gruppo di istanze con il modello precedente al nuovo modello.

  5. (Opzione avanzata) Per personalizzare la modalità di implementazione del nuovo modello nelle tue istanze, fai clic su Personalizza deployment. Viene visualizzata la schermata Configurazione deployment.

    1. Se vuoi eliminare e creare attivamente le istanze utilizzando il nuovo modello di istanza, scegli Automatico. Se vuoi applicare l'aggiornamento solo quando l'istanza viene creata con altri mezzi, ad esempio il ridimensionamento o quando viene aggiunta una nuova istanza al gruppo, scegli Selettivo.
    2. Se selezioni gli aggiornamenti automatici, scegli se vuoi Conservare i nomi delle istanze quando sostituisci le istanze.
      • Se scegli di mantenere i nomi delle istanze, in Istanze aggiuntive temporanee, scegli il numero di istanze aggiuntive temporanee da creare al di sopra della dimensione di destinazione del gruppo di istanze gestite. Maggiore è il numero di istanze consentite, più rapido sarà l'aggiornamento, a costo di ulteriori istanze. Il valore predefinito è 1 istanza aggiuntiva.
    3. In Numero massimo di istanze non disponibili, scegli il numero di istanze che possono essere offline alla volta durante l'aggiornamento. Questo numero include anche le istanze non disponibili per altri motivi. Ad esempio, se il gruppo di istanze è in fase di ridimensionamento, le istanze al centro della creazione potrebbero non essere disponibili; queste istanze verrebbero conteggiate ai fini di questo numero. Il valore predefinito è un'istanza alla volta che può essere non disponibile.
    4. (Facoltativo) Espandi Mostra opzioni avanzate. In Tempo di attesa minimo, scegli quanti secondi attendere prima di contrassegnare una nuova istanza come aggiornata. Il tempo inizia dopo un controllo di integrità riuscito. Utilizza questa funzionalità per controllare la frequenza di applicazione del modello di istanza.
  6. Per applicare le modifiche, fai clic su Salva.

  7. Quando è tutto pronto per eseguire il deployment delle modifiche, fai clic su Esegui il deployment.

Ignorare i consigli

Quando hai finito di utilizzare un suggerimento, puoi ignorarlo dalla console. All'interno della console, l'eliminazione comporta la rimozione di un suggerimento dalla stima del risparmio totale e la riduzione al minimo dell'aspetto del suggerimento, che diventa grigio.

Ignorare un suggerimento tramite la console non influisce sull'elenco di suggerimenti restituito dall'API Recommender. Per gestire lo stato dei suggerimenti restituiti dall'API Recommender, consulta la pagina relativa all'utilizzo dell'API.

Per ignorare un singolo suggerimento dalla console:

  1. Nella console Google Cloud, vai alla pagina Gruppi di istanze.

    Vai alla pagina Gruppi di istanze

  2. Fai clic sul testo del consiglio da ignorare. Viene visualizzato un popup con ulteriori dettagli e un pulsante Ignora.

  3. Fai clic su Ignora.

Per ripristinare un suggerimento nella console:

  1. Nella pagina Gruppi di istanze, fai clic sul testo grigio dei suggerimenti da ripristinare.

    Suggerimento ignorato.

  2. Viene visualizzato un popup con ulteriori dettagli e un pulsante Ripristina.

  3. Fai clic su Ripristina.

Utilizzare l'agente Monitoring per ottenere suggerimenti più precisi

Cloud Monitoring offre un agente di monitoraggio che raccoglie metriche aggiuntive per disco, CPU, rete e processi dalle istanze VM. Puoi installare l'agente Monitoring sulle tue istanze VM in modo che possa accedere alle risorse di sistema e ai servizi delle applicazioni per raccogliere questi dati.

Se l'agente Monitoring è installato ed in esecuzione su un'istanza VM, le metriche di CPU e memoria raccolte dall'agente vengono utilizzate automaticamente per calcolare i suggerimenti sul tipo di macchina. Le metriche dell'agente fornite dall'agente Monitoring forniscono insight migliori sull'utilizzo delle risorse dell'istanza rispetto alle metriche predefinite di Compute Engine. In questo modo il motore per suggerimenti può stimare meglio i requisiti delle risorse e formulare suggerimenti più precisi.

Per installare l'agente, consulta Installazione dell'agente Cloud Monitoring.

Passaggi successivi