Gestore della scalabilità automatica gestito

Questa pagina descrive il funzionamento del gestore della scalabilità automatica gestito e descrive i costi e quando utilizzi il gestore della scalabilità automatica gestito. Fornisce inoltre informazioni per capire come configurare il gestore della scalabilità automatica gestito.

Come funziona il gestore della scalabilità automatica gestito

Quando abiliti il gestore della scalabilità automatica gestito, Spanner regola automaticamente dimensione dell'istanza. La funzionalità del gestore della scalabilità automatica gestita reagisce alle modifiche del carico di lavoro o delle esigenze di archiviazione dell'istanza, man mano che il carico aumenta o diminuisce. La scalabilità automatica gestita effettua lo scale up, aggiungendo capacità di calcolo all'istanza, oppure fare lo scale down, rimuovendo la capacità di calcolo dall'istanza.

Quando configuri il gestore della scalabilità automatica gestito, puoi utilizzare entrambe le unità di elaborazione piccole istanze o nodi per istanze di grandi dimensioni. In questo documento, utilizziamo il termine capacità di calcolo per indicare nodi o unità di elaborazione.

Il gestore della scalabilità automatica gestito di Spanner determina la quantità di calcolo è richiesta la capacità massima in base a quanto segue:

  • Target di utilizzo ad alta priorità della CPU
  • Target di utilizzo dello spazio di archiviazione
  • Limite minimo
  • Limite massimo

Ogni dimensione di scalabilità genera una dimensione consigliata dell'istanza e Spanner utilizza automaticamente quello più alto. Ciò significa che, Ad esempio, se l'istanza ha bisogno di 10 nodi per soddisfare l'utilizzo dello spazio di archiviazione ma 12 nodi per soddisfare il target di utilizzo della CPU, Spanner l'istanza viene scalata fino a 12 nodi.

Man mano che la quantità di capacità di calcolo cambia, Spanner continua a e ottimizzare l'archiviazione. Ribilancia i dati tra tutti i server per garantire che il traffico sia distribuito uniformemente e nessun singolo server sia sovraccarico. Consulta la sezione Limitazioni per ulteriori informazioni.

Se il gestore della scalabilità automatica gestito scala un'istanza fino al limite massimo, ma il carico di lavoro continua a causare un utilizzo maggiore della CPU rispetto del target, le richieste dei carichi di lavoro potrebbero avere latenza o errore. Se un'istanza fa lo scale up fino alla destinazione massima di capacità di calcolo ma il carico di lavoro ha bisogno di più spazio di archiviazione del limite massimo, delle richieste possono non andare a buon fine. Per scoprire se viene raggiunto il target massimo, puoi visualizzare i log eventi di sistema del gestore della scalabilità automatica gestiti nella console Google Cloud nella Pagina Approfondimenti sul sistema. Per ulteriori informazioni, vedi limiti di archiviazione.

Quando Spanner fa lo scale down di un'istanza, rimuove la capacità di calcolo a una velocità inferiore rispetto allo scale up, per ridurre l'impatto sulla latenza.

Costi

I costi totali di Spanner potrebbero essere inferiori o superiori a seconda configurato l'istanza Spanner prima di abilitare gestore della scalabilità automatica gestito e i limiti impostati per il gestore della scalabilità automatica gestito.

Ad esempio, se prima configuravi manualmente Spanner di avere una capacità di calcolo sufficiente per gestire picchi di carichi di lavoro in qualsiasi momento, i tuoi costi con il gestore della scalabilità automatica gestito potrebbero essere più bassi e la capacità di calcolo quando l'istanza è inattiva.

Se prima configuravi manualmente l'istanza Spanner in modo da avere capacità di calcolo sufficiente per carichi di lavoro medi e peggiora le prestazioni complessive Quando il traffico del carico di lavoro aumenta, i costi relativi al gestore della scalabilità automatica gestito potrebbe essere superiore perché il gestore della scalabilità automatica gestito potrebbe aumentare la capacità di calcolo quando l'istanza è occupata. In questo modo, però, gli utenti avranno più prestazioni costanti.

Puoi limitare il costo massimo della tua istanza Spanner impostando il limite massimo di nodi o unità di elaborazione al livello desiderato di Google Cloud.

Limitazioni

Le seguenti limitazioni si applicano quando attivi o modifichi le impostazioni di scalabilità automatica su un'istanza:

  • Non puoi spostare un'istanza quando sia abilitata la funzionalità di scalabilità automatica gestita. Devi prima disattivare l'impostazione del gestore della scalabilità automatica e poi spostare l'istanza. Dopo aver spostato l'istanza, puoi e riattivare il gestore della scalabilità automatica gestito.
  • Devi impostare il limite minimo per l'istanza di scalabilità automatica su 1000 o superiore, oppure 1 nodo o superiore.
  • Quando abiliti la scalabilità automatica su un'istanza esistente, quest'ultima la capacità può essere inferiore al valore limite minimo configurare il gestore della scalabilità automatica gestito. Tuttavia, lo scale up dell'istanza viene eseguito automaticamente fino al valore minimo configurato quando lo avvii. Ad esempio, se la tua istanza ha un nodo ma imposta il valore minimo a due nodi. Quando avvii l'istanza, fa automaticamente lo scale up fino a 2 nodi.

Parametri gestore della scalabilità automatica gestito

Quando crei o modifichi un'istanza e scegli di abilitare il gestore della scalabilità automatica gestito, devi definire i valori mostrati nella seguente tabella.

Parametro Descrizione
Target di utilizzo ad alta priorità della CPU Una percentuale della capacità della CPU ad alta priorità dell'istanza. Questo valore deve essere compreso tra 10% e 90%. Quando l'utilizzo della CPU da parte di un'istanza supera della destinazione impostata, Spanner aggiunge immediatamente e la capacità di archiviazione dell'istanza all'istanza. Quando l'utilizzo della CPU è notevolmente inferiore a del target, Spanner rimuove la capacità di calcolo. Come guida, vedi Determina il target di utilizzo della CPU.
Target di utilizzo dello spazio di archiviazione La percentuale di spazio di archiviazione su un nodo che puoi utilizzare prima Spanner fa lo scale up. Questo target garantisce che tu abbia sempre capacità di calcolo sufficiente per gestire le fluttuazioni della quantità di dati archiviati. Questo valore deve essere compreso tra 10 e 99%. Per indicazioni, vedi Determina il target di utilizzo dello spazio di archiviazione.
Limite minimo La quantità minima di capacità di calcolo Spanner scala l'istanza verso il basso. Il valore minimo non può essere inferiore al 10% del valore impostato per il limite massimo. Ad esempio: se il limite massimo è di 40 nodi, il limite minimo deve essere almeno 4 nodi. Il requisito del 10% è un limite fisso. Per consulta Determinazione del limite minimo.
Limite massimo La massima quantità di capacità di calcolo scalabile di Spanner dell'istanza fino a. Per i nodi, questo valore deve essere maggiore di 1 nodo (oppure 1000 unità di elaborazione) e uguale o superiore al numero minimo di nodi o unità di elaborazione. Il valore non può essere superiore a 10 volte il valore numero scelto per la quantità minima di capacità di calcolo. Questo 10 di tempo è un limite fisso. Per indicazioni, vedi Determina il limite massimo.

Configura il gestore della scalabilità automatica gestito

Questa sezione descrive come determinare quali numeri scegliere per l'account gestito del gestore della scalabilità automatica. Dopo aver impostato i valori iniziali, monitorare l'istanza e modificare i numeri se necessario.

Determina il target di utilizzo della CPU

Il target ottimale per l'istanza dipende dalla latenza e dalla velocità effettiva i requisiti del tuo carico di lavoro. Per visualizzare i nostri suggerimenti per il massimo utilizzo della CPU per configurazioni di istanze a singola regione, a due e più regioni, consulta Avvisi di utilizzo elevato della CPU.

In generale, se noti una latenza inaccettabile, devi abbassare le di utilizzo del modello.

Determina il target di utilizzo dello spazio di archiviazione

Per la scalabilità automatica, il target di utilizzo dello spazio di archiviazione è espresso in percentuale per nodo. Per le istanze a 1 nodo (1000 unità di elaborazione) e più grandi, a una dimensione massima di 4 TB per nodo.

Determinare il limite massimo

Il valore che scegli come quantità massima di capacità di calcolo è uguale a la quantità di capacità di calcolo necessaria all'istanza per gestire il traffico più intenso, anche se non prevedi di raggiungere quel volume. nel tempo. Spanner non esegue mai lo scale up per aumentare la capacità di calcolo e alle esigenze aziendali. Puoi anche pensare a questo numero come alla più alta quantità di per la capacità che si è disposti a pagare. Consulta Parametri del gestore della scalabilità automatica per i dettagli sui valori accettati.

Il limite massimo deve consentire sia il target di utilizzo della CPU sia il target di utilizzo dello spazio di archiviazione impostato per la scalabilità automatica.

  • Se stai modificando un'istanza da allocazione manuale a gestita la scalabilità automatica, trova la massima quantità di capacità di calcolo degli ultimi 1-2 mesi. Numero massimo del gestore della scalabilità automatica gestito dovrebbe essere almeno così alto.

  • Se stai abilitando il gestore della scalabilità automatica gestito per una nuova istanza, consulta di altre istanze e utilizzarle come guida quando imposti limite massimo.

  • Se hai un nuovo carico di lavoro e non sai come crescerà, può stimare la quantità di capacità di calcolo necessaria per soddisfare il target di utilizzo dello spazio di archiviazione integrato e regolarlo in un secondo momento.

Devi anche conoscere la quota rimanente sul tuo nodo perché il gestore della scalabilità automatica gestito non può configurare la tua istanza per avere maggiore capacità di calcolo della tua quota. Per ulteriori informazioni, vedi Limiti dei nodi.

Quando l'istanza è attiva e in esecuzione con la scalabilità automatica abilitata, monitora l'istanza e assicurati che il valore scelto il limite massimo è almeno pari a quello consigliato per la CPU target e il limite consigliato per il target di archiviazione.

Determinare il limite minimo

Imposta un limite minimo per il gestore della scalabilità automatica gestito per garantire Fare lo scale down dell'istanza Spanner può essere eseguito economicamente convenienti. Spanner impedisce automaticamente al nodo il conteggio non scenderà al di sotto del minimo necessario per mantenere CPU e spazio di archiviazione i target di utilizzo.

Il valore minimo minimo consentito dal gestore della scalabilità automatica gestito è 1 nodo o 1000 le unità di elaborazione. Quando abiliti la scalabilità automatica per un'istanza esistente che di capacità inferiore al valore minimo configurato per il gestore della scalabilità automatica gestito, fa automaticamente lo scale up fino a questo minimo all'avvio.

Dopo aver avviato l'istanza con scalabilità automatica gestita, devi eseguire test iniziale per verificare che funzioni con le dimensioni minime impostate. Dovresti verificare periodicamente per garantire che continui a funzionare come previsto.

Per ulteriori informazioni sui valori accettati, consulta Parametri del gestore della scalabilità automatica gestiti in questo documento.

In molti casi è consigliabile impostare il valore minimo su più di uno. Scegli un'opzione numero maggiore o aumenta il limite minimo per le seguenti situazioni:

  • C'è un evento di picco imminente quando prevedi che il traffico aumentare temporaneamente e assicurarti di avere risorse di calcolo sufficienti e la capacità di archiviazione.
  • La tua applicazione invia traffico picchi. Quando aggiungi nuova capacità di calcolo, Spanner viene ribilanciato automaticamente per utilizzare i nuovi nodi le unità di elaborazione. Poiché questo processo può richiedere diversi minuti, puoi prendere in considerazione un approccio conservativo e scegliere un livello superiore minimo. In questo modo, l'istanza supporta perfettamente i picchi.
  • Aumenta la capacità di calcolo massima. Il minimo deve sempre essere dieci della capacità massima di calcolo target. Ad esempio, se un numero massimo di nodi impostato su 30, devi impostare il numero minimo di nodi nodi almeno fino a 3.

Se aumenti il valore della capacità di calcolo minima su un'istanza, Spanner prova immediatamente a scalare l'istanza al nuovo minimo. I vincoli standard . Quando hai esaurito la quota, richiedi di modificare il gestore della scalabilità automatica gestito non va a buon fine e la configurazione non viene aggiornata.

Flag e limitazioni dei parametri di Google Cloud CLI

Quando utilizzi Google Cloud CLI per configurare il gestore della scalabilità automatica gestito, sono disponibili e i flag obbligatori che devi impostare. Sono presenti flag facoltativi che puoi utilizzare per indicare dai nodi o dalle unità di elaborazione. Per ulteriori informazioni creando una nuova istanza con il gestore della scalabilità automatica gestito o abilitando di scalabilità automatica su un'istanza esistente, consulta quanto segue:

I seguenti flag sono obbligatori quando attivi il gestore della scalabilità automatica gestito sul tuo istanza:

  • autoscaling-high-priority-cpu-percent
  • autoscaling-storage-percent

Se scegli di utilizzare i nodi, devi utilizzare entrambi i seguenti flag anche quando puoi abilitare il gestore della scalabilità automatica gestito:

  • autoscaling-min-nodes
  • autoscaling-max-nodes

Se scegli di utilizzare le unità di elaborazione, devi utilizzare anche entrambi i seguenti vengono segnalati quando attivi il gestore della scalabilità automatica gestito:

  • autoscaling-min-processing-units
  • autoscaling-max-processing-units

Quando aggiungi il gestore della scalabilità automatica gestito a un con Google Cloud CLI:

  • Non puoi utilizzare il flag --nodes con --autoscaling-min-nodes o --autoscaling-max-nodes flag perché l'uso di --nodes imposta una specifica di nodi al posto di un intervallo di scalabilità. Allo stesso modo, non puoi utilizzare Flag --processing-units con autoscaling-min-processing-units o autoscaling-max-processing-units flag perché hai utilizzato --processing-units imposta un numero specifico di unità di elaborazione rispetto a un intervallo di scalabilità.
  • Non puoi combinare i flag per i nodi e le unità di elaborazione. Per Ad esempio, non puoi utilizzare --autoscaling-max-nodes con autoscaling-min-processing-units.

Ottimizzazione delle impostazioni

Tieni d'occhio l'utilizzo della capacità di calcolo e regola le impostazioni, se necessario, soprattutto dopo aver abilitato il gestore della scalabilità automatica gestito. I nostri suggerimenti utilizzando la pagina Approfondimenti sul sistema nella nella console Google Cloud.

Controllo degli accessi

Per configurare il gestore della scalabilità automatica gestito, devi essere un'entità in un ruolo con creazione e aggiornamento delle autorizzazioni per l'istanza che stai configurando.

Monitoraggio

Spanner fornisce diverse metriche per aiutarti a comprendere in che modo Il gestore della scalabilità automatica gestisce lo scale up e lo scale down requisiti dei carichi di lavoro. Le metriche possono anche aiutarti a valutare se le tue impostazioni sono ottimali per soddisfare i requisiti di costo e il carico di lavoro della tua azienda. Ad esempio: se noti che il numero di nodi per un'istanza è spesso vicino al numero massimo di nodi, valuta la possibilità di aumentare il numero massimo. Per scoprire di più su il monitoraggio delle risorse Spanner, Monitora le istanze con Cloud Monitoring.

Le seguenti metriche sono visualizzati nei grafici nella sezione Approfondimenti sul sistema nella console Google Cloud. Puoi visualizzare queste metriche anche utilizzando Cloud Monitoring.

  • spanner.googleapis.com/instance/autoscaling/min_node_count
  • spanner.googleapis.com/instance/autoscaling/max_node_count
  • spanner.googleapis.com/instance/autoscaling/min_processing_units
  • spanner.googleapis.com/instance/autoscaling/max_processing_units
  • spanner.googleapis.com/instance/autoscaling/high_priority_cpu_target_utilization
  • spanner.googleapis.com/instance/autoscaling/storage_target_utilization

Logging

Spanner crea un audit log degli eventi di sistema ogni volta che scala una in esecuzione in un'istanza Compute Engine.

Puoi visualizzare i log eventi di sistema del gestore della scalabilità automatica gestiti in Console Google Cloud nella pagina Approfondimenti sul sistema.

Puoi anche visualizzare i log utilizzando Esplora log:

  1. Nella console Google Cloud, apri Esplora log:

    Vai a Esplora log

  2. Seleziona il progetto Google Cloud appropriato.

  3. Nel campo Query, inserisci quanto segue:

     protoPayload.methodName="AutoscaleInstance"
    

    Puoi aggiungere la seguente query per filtrare ulteriormente i log:

    resource.type="spanner_instance"
    resource.labels.instance_id=INSTANCE_ID
    resource.labels.project_id=PROJECT_ID
    logName="projects/span-cloud-testing/logs/cloudaudit.googleapis.com%2Fsystem_event"
    protoPayload.methodName="AutoscaleInstance"
  4. Fai clic su Esegui query.

Il riquadro Risultati delle query mostra i log dell'ultima ora.

Per scoprire di più sulla visualizzazione dei log, consulta Cloud Logging. Puoi configurare avvisi basati su log nella pagina Esplora log in Google Cloud oppure utilizzando API Cloud Monitoring.

Passaggi successivi