Aggiornamento di un gruppo di nodi gestiti - Amazon EKS

Aggiornamento di un gruppo di nodi gestiti

Quando si avvia un aggiornamento di un gruppo di nodi gestiti, Amazon EKS aggiorna automaticamente i nodi, completando i passaggi elencati in Comportamento dell'aggiornamento del nodo gestito. Se si utilizza un'AMI ottimizzata per Amazon EKS, Amazon EKS applica automaticamente le patch di sicurezza più recenti e gli aggiornamenti del sistema operativo ai nodi come parte dell'ultima versione di AMI.

Esistono diversi scenari in cui è utile aggiornare la versione o la configurazione del gruppo di nodi gestiti Amazon EKS:

  • Hai aggiornato la versione di Kubernetes per il cluster Amazon EKS e vuoi aggiornare i nodi per utilizzare la stessa versione di Kubernetes.

  • Una nuova versione dell'AMI è disponibile per il gruppo di nodi gestiti. Per ulteriori informazioni sulle versioni AMI, consultare le seguenti sezioni:

  • Per regolare il conteggio minimo, massimo o desiderato delle istanze nel gruppo di nodi gestiti.

  • Per aggiungere o rimuovere le etichette Kubernetes dalle istanze del gruppo di nodi gestiti.

  • Per aggiungere o rimuovere tag AWS dal gruppo di nodi gestiti.

  • È necessario implementare una nuova versione di un modello di avvio con modifiche alla configurazione, ad esempio un'AMI personalizzata aggiornata.

  • É stata implementata la versione 1.9.0 o successiva del componente aggiuntivo CNI di Amazon VPC, è stato abilitato il componente aggiuntivo per la delega del prefisso e nuove istanze di Nitro System AWS sono necessarie in un gruppo di nodi per supportare un numero significativamente maggiore di pod. Per ulteriori informazioni, consulta . Aumentare la quantità di indirizzi IP disponibili per i nodi Amazon EC2.

Se esiste una versione dell'AMI più recente per la versione Kubernetes del gruppo di nodi gestiti rispetto a quella in esecuzione nel gruppo di nodi, è possibile aggiornare quest'ultima per utilizzare la nuova versione dell'AMI. Analogamente, se nel cluster è in esecuzione una versione di Kubernetes più recente rispetto al gruppo di nodi, è possibile aggiornare il gruppo di nodi per utilizzare la versione più recente dell'AMI che corrisponde alla versione di Kubernetes del cluster.

Quando un nodo in un gruppo di nodi gestiti viene terminato a causa di un'operazione di dimensionamento o di un aggiornamento, i pod nel nodo vengono svuotati per primi. Per ulteriori informazioni, consulta . Comportamento dell'aggiornamento del nodo gestito.

Aggiornare la versione di un gruppo di nodi

È possibile aggiornare la versione di un gruppo di nodi con eksctl o il AWS Management Console. Selezionare la scheda con il nome dello strumento che si desidera utilizzare per aggiornare il cluster. La versione a cui si aggiorna non può essere successiva alla versione del piano di controllo.

eksctl

Per aggiornare la versione di un gruppo di nodi con eksctl

  • Aggiorna un gruppo di nodi gestiti alla stessa versione AMI più recente di Kubernetes attualmente implementata nei nodi con il comando seguente. Sostituisci ogni example-value con i valori in tuo possesso.

    eksctl upgrade nodegroup --name=node-group-name --cluster=cluster-name
    Nota

    Se stai aggiornando un gruppo di nodi implementato con un modello di avvio a una nuova versione del modello di avvio, aggiungi --launch-template-version version-number al precedente comando. Il modello di avvio deve soddisfare i requisiti descritti in Supporto modello di avvio. Se il modello di avvio include un'AMI personalizzata, l'AMI deve soddisfare i requisiti in Specifica di un'AMI. Quando si aggiorna il gruppo di nodi a una versione più recente del modello di avvio, tutti i nodi vengono riciclati in modo da corrispondere alla nuova configurazione della versione del modello di avvio specificata.

    Non è possibile aggiornare direttamente un gruppo di nodi implementato senza un modello di avvio a una nuova versione del modello di avvio. È invece necessario implementare un nuovo gruppo di nodi utilizzando il modello di avvio per aggiornare il gruppo di nodi a una nuova versione del modello di avvio.

    È possibile aggiornare un gruppo di nodi alla stessa versione della versione Kubernetes del piano di controllo. Ad esempio, se si ha un cluster che esegue Kubernetes 1.21, è possibile aggiornare i nodi che attualmente eseguono Kubernetes 1.20 alla versione 1.21 attraverso il seguente comando.

    eksctl upgrade nodegroup \ --name=node-group-name \ --cluster=cluster-name \ --kubernetes-version=1.21
AWS Management Console

Per aggiornare la versione di un gruppo di nodi con AWS Management Console

  1. Aprire la console Amazon EKS all'indirizzo https://console.aws.amazon.com/eks/home#/clusters.

  2. Scegliere il cluster che contiene il gruppo di nodi da aggiornare.

  3. Se almeno un gruppo di nodi dispone di un aggiornamento disponibile, nella parte superiore della pagina viene visualizzata una casella di notifica dell'aggiornamento disponibile. Seleziona la scheda Configuration (Configurazione) e quindi la scheda Compute (Calcolo): potrai visualizzare Update now (Aggiorna ora) nella colonna AMI release version (Versione AMI) della tabella Node Groups (Gruppi di nodi) per il gruppo di nodi per il quale è disponibile un aggiornamento. Per aggiornare il gruppo di nodi, selezionare Aggiorna ora. Non verrà visualizzata una notifica per i gruppi di nodi implementati con un'AMI personalizzata. Se i nodi vengono implementati con un'AMI personalizzata, completare la procedura seguente per implementare una nuova AMI personalizzata aggiornata.

      1. Crea una nuova versione dell'AMI.

      2. Creare una nuova versione del modello di avvio con il nuovo ID AMI.

      3. Aggiornamento dei i nodi alla nuova versione del modello di avvio.

  4. Nella pagina Aggiorna versione del gruppo di nodi, selezionare:

    • Aggiorna versione del gruppo di nodi – Questa opzione non è disponibile se si è implementato un'AMI personalizzata o se l'AMI ottimizzato per Amazon EKS è attualmente disponibile nella versione più recente del cluster.

    • Versione del modello di avvio – Questa opzione non è disponibile se il gruppo di nodi viene implementato senza un modello di avvio personalizzato. È possibile aggiornare la versione del modello di avvio solo per un gruppo di nodi implementato con un modello di avvio personalizzato. Selezionare la versione a cui si desidera aggiornare il gruppo di nodi. Se il gruppo di nodi è configurato con un'AMI personalizzata, anche la versione selezionata deve specificare un'AMI. Quando si esegue l'aggiornamento a una versione più recente del modello di avvio, tutti i nodi vengono riciclati in modo da corrispondere alla nuova configurazione della versione del modello di avvio specificata.

  5. Per Strategia aggiornamento, seleziona una delle seguenti opzioni e scegli Aggiorna.

    • Aggiornamento in sequenza – Questa opzione rispetta i budget di interruzione del pod per il cluster. Gli aggiornamenti non riescono se c'è un problema di budget che interrompe il pod, che fa sì che Amazon EKS non riesca a svuotare correttamente i pod in esecuzione su questo gruppo di nodi.

    • Forza aggiornamento – Questa opzione non rispetta i budget per le interruzioni dei pod. Gli aggiornamenti vengono eseguiti indipendentemente dai problemi di budget di interruzione del pod forzando il riavvio dei nodi.

Modificare la configurazione di un gruppo di nodi

È possibile modificare parte della configurazione di un gruppo di nodi gestiti.

Per modificare la configurazione di un gruppo di nodi

  1. Aprire la console Amazon EKS all'indirizzo https://console.aws.amazon.com/eks/home#/clusters.

  2. Scegliere il cluster che contiene il gruppo di nodi da modificare.

  3. Selezionare la scheda Configurazione. Nella scheda Calcolo, selezionare il gruppo di nodi da modificare e scegliere Modificare.

  4. (Facoltativo) Nella pagina Modifica gruppo di nodi modificare la Configurazione del gruppo.

    • Tag – Aggiungi o rimuovi tag dalla risorsa del gruppo di nodi. Questi tag vengono applicati solo al gruppo di nodi Amazon EKS. I tag dei gruppi di nodi non si propagano ad altre risorse come istanze o le sottoreti di Amazon EC2 nel gruppo di nodi.

    • Etichette Kubernetes – Aggiungi o rimuovi etichette Kubernetes ai nodi del gruppo di nodi. Le etichette mostrate qui sono solo le etichette applicate con Amazon EKS. Altre etichette, non mostrate qui, possono essere presenti sui nodi.

    • Taint Kubernetes – Aggiungi o rimuovi taint Kubernetes ai nodi del gruppo di nodi. I taint aggiunti possono avere l'effetto di No_Schedule, Prefer_No_Schedule, oppure No_Execute.

  5. (Opzionale) Nella pagina Modifica gruppo di nodi modificare la Dimensione del gruppo.

    • Dimensione minima – Specifica il numero massimo di nodi a cui il gruppo di nodi gestiti può essere ridotto orizzontalmente.

    • Dimensione massima – Specifica il numero massimo di nodi a cui il gruppo di nodi gestiti può essere aumentato orizzontalmente. Per il numero massimo di nodi supportati in un gruppo di nodi, vedere Service Quotas di Amazon EKS.

    • Dimensione desiderata – Specifica il numero corrente di nodi che il gruppo di nodi gestiti deve mantenere.

  6. (Facoltativo) Modifica la Configurazione dell'aggiornamento del gruppo di nodi. Seleziona un'opzione tra Numero o Percentuale.

    • Numero – Seleziona e specifica il numero di nodi nel gruppo nodi che possono essere aggiornati in parallelo. Questi nodi non saranno disponibili durante l'aggiornamento.

    • Percentuale – Seleziona e specifica la percentuale di nodi nel gruppo di nodi che possono essere aggiornati in parallelo. Questi nodi non saranno disponibili durante l'aggiornamento. Questa funzione è utile se si dispone di diversi nodi nel gruppo di nodi.

  7. Al termine della modifica, scegli Salva modifiche.