View a markdown version of this page

Modalità automatica di EKS - Amazon EKS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Modalità automatica di EKS

Amazon EKS Auto Mode rappresenta un'evoluzione significativa nella gestione dell'infrastruttura Kubernetes, che combina un'infrastruttura di cluster sicura e scalabile con funzionalità Kubernetes integrate gestite da AWS. Il servizio fornisce operazioni sui nodi di lavoro completamente gestite, eliminando la necessità per i clienti di configurare gruppi o gruppi di nodi gestiti. AutoScaling

La principale differenza architetturale è che EKS Auto Mode utilizza un Karpenter-based sistema che esegue automaticamente il provisioning delle istanze EC2 in risposta alle richieste dei pod. Queste istanze vengono eseguite su AMI Bottlerocket con componenti aggiuntivi preinstallati come i driver EBS CSI, rendendo l'infrastruttura realmente gestita da AWS. A differenza dei metodi di scalabilità tradizionali:

  • Il Cluster Autoscaler (CAS) tradizionale richiede la gestione manuale dei gruppi di nodi e può creare nodi solo con un singolo tipo di istanza per gruppo di nodi

  • Self-managed Karpenter offre maggiore flessibilità lavorando con l'API EC2 Fleet e può fornire diversi tipi di istanze, ma richiede la gestione dei clienti

  • EKS Auto Mode gestisce automaticamente tutte le operazioni di scalabilità tramite managed e NodePools NodeClasses

Il nuovo sistema introduce diversi miglioramenti operativi:

  • Scalabilità automatica basata su pod senza configurazione manuale dei gruppi di nodi

  • Built-in controller di bilanciamento del carico gestiti che creano automaticamente in base alle risorse Ingress ALB/NLB

  • Funzionalità di sicurezza integrate con identità Pod preconfigurata

  • Durata massima del nodo di 21 giorni con sostituzione automatica

Dal punto di vista dei costi, EKS Auto Mode mantiene i prezzi EC2 standard aggiungendo una commissione di gestione solo per Mode-managed i nodi Auto. È importante sottolineare che i clienti possono comunque combinare nodi gestiti in modalità automatica con nodi autogestiti nello stesso cluster.

Sebbene AWS gestisca la maggior parte degli aspetti operativi, i clienti mantengono la responsabilità della gestione delle versioni del cluster e possono eseguire aggiornamenti controllati che attivano aggiornamenti continui dei nodi di lavoro.

Motivi per utilizzare la modalità automatica

La modalità automatica è rivolta agli utenti che desiderano usufruire dei vantaggi di Kubernetes ed EKS ma devono ridurre al minimo gli oneri operativi legati a Kubernetes, come gli aggiornamenti e le parti critiche installation/maintenance della piattaforma, come il ridimensionamento automatico, il bilanciamento del carico e lo storage. Auto Mode fa compiere a EKS un ulteriore passo avanti nella riduzione al minimo degli oneri indifferenziati associati alla manutenzione di Kubernetes

Domande frequenti

Qual è la differenza tra EKS Auto Mode e Open Source Karpenter?

EKS Auto Mode è un'ampia suite di funzionalità che semplificano l'esecuzione di Kubernetes di livello di produzione. Una di queste funzionalità è il vantaggio del ridimensionamento automatico di Karpenter, completamente gestito. Dal punto di vista operativo, l'unica differenza è che in EKS Auto Mode non è necessario gestire l'implementazione, il ridimensionamento e l'aggiornamento dei pod Karpenter stessi. Tutte le altre operazioni sono gestite NodeClasses e NodePools funzionano come con Karpenter open source.

Posso eseguire gruppi di nodi gestiti insieme ai nodi Auto Mode-managed ?

Sì, puoi eseguire gruppi di nodi gestiti insieme ai Mode-managed nodi Auto nello stesso cluster. Questo approccio è comune quando si esegue la migrazione da gruppi di nodi gestiti a EKS Auto Mode. Per ulteriori informazioni, consulta Abilitare la modalità automatica EKS sui cluster EKS esistenti.

È possibile migrare un cluster dalla modalità EKS standard a EKS Auto Mode?

Sì, le istruzioni per abilitare EKS Auto Mode su un cluster esistente sono disponibili nella documentazione ufficiale di AWS

Cose da notare: 1. Dopo aver abilitato la modalità automatica, ti consigliamo di disinstallare tutti i componenti che hai installato e che ora sono gestiti da Auto Mode, come Karpenter o AWS Load Balancer Controller 2. Devi assicurarti che i componenti aggiuntivi installati siano aggiornati. Consulta la documentazione.

Come si configura NodePools in EKS Auto Mode?

Un nuovo cluster verrà fornito preconfigurato con due NodePools

per uso generico

Scopo generale NodePool

Ciò NodePool indica a Karpenter di avviare nodi con le seguenti caratteristiche:

  1. Tipo di capacità «On Demand»

  2. Tipi di istanza C, M o R

  3. Generazione di istanze di 4

  4. Architettura AMD

  5. Sistema operativo Linux

Definisce inoltre la logica di scalabilità dichiarando che solo il 10% di tutti i nodi può trovarsi in uno stato di interruzione in un dato momento e che il consolidamento deve avvenire solo quando i nodi sono vuoti o sottoutilizzati.

sistema

Sistema NodePool

NodePool È simile a «uso generico» ad eccezione delle seguenti differenze:

  1. Consente l'utilizzo di nodi con architettura ARM e architettura AMD

  2. Contamina questi nodi con un NoSchedule a meno che non ci sia una tolleranza per «»CriticalAddonsOnly. Questo è per uso interno da parte dei componenti aggiuntivi EKS

personalizzato

Puoi crearne uno personalizzato in NodePools base alle tue esigenze. Per saperne di più, NodePools consulta la documentazione di Karpenter.

Posso personalizzare l'AMI utilizzata da Auto Mode quando vengono lanciati nuovi nodi?

No, attualmente le uniche AMI supportate sono per Amazon-provided Bottlerocket

Come posso installare strumenti o agenti personalizzati sui miei host Kubernetes?

Poiché la personalizzazione dell'AMI non è supportata, se hai bisogno di software a livello di host per cose come la scansione di sicurezza, dovresti distribuire il carico di lavoro come Kubernetes. DaemonSet

Quali componenti sono in esecuzione nel piano dati del mio cluster quando eseguo il provisioning di un nuovo cluster EKS Auto Mode?

Se crei un cluster con eksctl o la console AWS, gli unici pod in esecuzione in un cluster EKS Auto Mode sono i pod Kubernetes Metrics Server. Gli altri componenti di EKS Auto Mode come Karpenter, AWS Load Balancer Controller e EBS CSI Driver sono tutti eseguiti e gestiti all'esterno del cluster.

Quali componenti gestiti sono in esecuzione per supportare il mio nuovo cluster EKS Auto Mode?

EKS Auto Mode automatizza completamente l'implementazione della maggior parte delle parti di un piano dati necessarie per Kubernetes di livello di produzione. Questo include:

  • Karpenter, per il ridimensionamento automatico del calcolo del cluster

  • AWS Load Balancer Controller per consentire di esporre facilmente i servizi Kubernetes tramite l'integrazione automatizzata di Elastic Load Balancer

  • VPC CNI

  • DNS del cluster

  • kube-proxy

  • EBS CSI

  • EKS Pod Identity Agent

  • Agente di monitoraggio dei nodi EKS

Come posso risolvere i problemi relativi ai componenti della modalità automatica che venivano eseguiti come pod nel mio cluster?

Con EKS Auto Mode, molti componenti come AWS Load Balancer Controller e Karpenter vengono gestiti automaticamente all'esterno del cluster, quindi non avrai la stessa visibilità nei log a cui sei abituato quando gestisci autonomamente. Se ti trovi in una situazione in cui devi risolvere i problemi relativi alla funzionalità di Auto Mode, crea un AWS Support Ticket.