Questo documento è rivolto agli amministratori di piattaforma che eseguono macchine virtuali (VM) nei cluster Anthos su Bare Metal. Questo documento illustra come configurare il criterio di rimozione che controlla il modo in cui le VM che utilizzano il runtime VM VM di Anthos possono eseguire automaticamente la migrazione ad altri host durante gli eventi di manutenzione. Queste impostazioni di configurazione consentono di continuare a eseguire le VM su altri host quando esegui l'upgrade di un cluster o esegui la manutenzione su un host.
Prima di iniziare
Per completare questo documento, devi accedere ai cluster Anthos su Bare Metal versione 1.12.0 (anthosBareMetalVersion: 1.12.0
) o superiore. Puoi utilizzare qualsiasi tipo di cluster in grado di eseguire carichi di lavoro. Se necessario, prova i cluster Anthos su Bare Metal su Compute Engine o consulta la panoramica per la creazione dei cluster.
Impostazioni criteri di rimozione
I cluster Anthos su Bare Metal consentono di configurare il comportamento dei nodi quando esegui upgrade dei cluster o quando i nodi vengono inseriti in modalità di manutenzione. Il runtime VM VM di Anthos utilizza un criterio di rimozione che controlla il modo in cui il cluster gestisce le VM eseguite durante questi eventi.
Se abilitato, Anthos VM Runtime utilizza la migrazione live per spostare i carichi di lavoro delle VM in un altro host per impostazione predefinita. Questo comportamento riduce al minimo le potenziali interruzioni ai carichi di lavoro delle VM. Con la migrazione live, le VM migrabili passano da un host all'altro senza interruzioni del sistema operativo guest.
È possibile configurare le seguenti impostazioni dei criteri di rimozione:
Proprietà | Impostazione predefinita | Valori validi |
---|---|---|
evictionStrategy |
LiveMigrate |
LiveMigrate , Restart |
maxMigrationAttemptsPerVM |
3 |
Numero intero nell'intervallo [1 ,5 ] |
migrationTargetInitializationTimeout |
30s |
Qualsiasi stringa di durata valida, come 1m , 2h o 1h30m |
evictionStrategy
Se questo valore è impostato su LiveMigrate
, Anthos VM Runtime tenta di
eseguire la migrazione di qualsiasi VM migrabile da un nodo per rimuoverlo. La VM viene posizionata su un altro nodo del cluster e continua a essere eseguita.
Se questo valore è impostato su Restart
, Anthos VM Runtime non tenta di
eseguire la migrazione delle VM. Le VM vengono arrestate quando il nodo viene messo in modalità di manutenzione e le VM si riavviano quando il nodo esce dalla modalità di manutenzione.
La VM non è disponibile durante l'evento di manutenzione dell'host.
Quando scegli la strategia LiveMigrate
, il runtime Runtime VM di Anthos torna alla strategia Restart
per le VM non migrabili.
maxMigrationAttemptsPerVM
Questa impostazione controlla il numero massimo di tentativi di migrazione che possono verificarsi per una determinata VM prima che venga applicata la strategia Restart
.
Questa impostazione viene ignorata se evictionStrategy
è impostata su Restart
.
migrationTargetInitializationTimeout
Questa impostazione determina il tempo massimo necessario per l'avvio di una migrazione prima che venga considerata non riuscita. Una migrazione che richiede troppo tempo per essere avviata viene conteggiata ai fini del budget di migrazione non riuscita per un carico di lavoro della VM.
Questa impostazione viene ignorata se evictionStrategy
è impostata su Restart
.
Abilita e configura il criterio di rimozione
Per utilizzare il criterio di rimozione nel runtime VM VM, l'impostazione evictionPolicy
deve essere definita nell'oggetto VMRuntime
del cluster. Questa opzione è abilitata nei cluster Anthos su Bare Metal 1.12 e versioni successive. Se esegui l'upgrade da una versione precedente, devi abilitare questa impostazione manualmente.
Un oggetto vuoto, come evictionPolicy: {}
, attiva il criterio di rimozione con le impostazioni predefinite. Per modificare il comportamento predefinito, aggiungi altre opzioni di configurazione all'oggetto evictionPolicy
.
Per attivare e configurare il criterio di rimozione, segui questi passaggi:
Modifica la risorsa personalizzata
VMRuntime
:kubectl edit vmruntime vmruntime
Aggiungi o aggiorna la sezione
evictionPolicy
con un oggetto vuoto per utilizzare le impostazioni di criterio di rimozione predefinite oppure aggiungi le impostazioni desiderate:apiVersion: vm.cluster.gke.io/v1 kind: VMRuntime metadata: name: vmruntime spec: disableCDIUploadProxyVIP: false enabled: true evictionPolicy: {} useEmulation: false
Se il
evictionPolicy
non viene completato, ad esempioevictionPolicy: null
o non viene incluso nel manifest, non viene intrapresa alcuna azione speciale. Le VM vengono rimosse forzatamente.I file manifest di esempio seguenti mostrano come abilitare la migrazione live delle VM o riavviare le VM sullo stesso host al termine della manutenzione:
Migrazione live
Il seguente criterio di rimozione degli esempi consente la migrazione live delle VM. Il cluster può ritentare la migrazione live fino a 3 volte, con un timeout di 30 secondi ogni volta il processo per essere avviato:
apiVersion: vm.cluster.gke.io/v1 kind: VMRuntime metadata: name: vmruntime spec: disableCDIUploadProxyVIP: false enabled: true evictionPolicy: evictionStrategy: LiveMigrate maxMigrationAttemptsPerVM: 3 migrationTargetInitializationTimeout: 30s useEmulation: false
Riavvia
Il seguente criterio di rimozione degli esempi non tenta di eseguire la migrazione di nessuna VM durante l'eliminazione. Le VM vengono arrestate sull'host attuale e si riavviano quando l'host termina l'evento di manutenzione:
apiVersion: vm.cluster.gke.io/v1 kind: VMRuntime metadata: name: vmruntime spec: disableCDIUploadProxyVIP: false enabled: true evictionPolicy: evictionStrategy: Restart useEmulation: false
Salva e chiudi la risorsa personalizzata
VMRuntime
nell'editor.Il runtime VM VM applica il criterio di rimozione alle VM nel cluster.