Architettura di Amazon EKS - Amazon EKS

Contribuisci a migliorare questa pagina

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à.

Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.

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à.

Architettura di Amazon EKS

Amazon EKS segue l’architettura generale dei cluster di Kubernetes. Per ulteriori informazioni, consultare la pagina Kubernetes Components nella documentazione Kubernetes. Le seguenti sezioni riassumono alcuni dettagli aggiuntivi sull'architettura di Amazon EKS.

Piano di controllo

Amazon EKS garantisce che ogni cluster abbia un proprio piano di controllo Kubernetes specifico. Questo design mantiene l'infrastruttura di ciascun cluster separata, senza sovrapposizioni tra cluster o account. AWS La configurazione include:

Componenti distribuiti

Il piano di controllo posiziona almeno due istanze del server API e tre istanze etcd in tre zone di AWS disponibilità all'interno di una regione. AWS

Prestazioni ottimali

Amazon EKS monitora e regola attivamente le istanze del piano di controllo per mantenere le massime prestazioni.

Resilienza

Se un'istanza del piano di controllo fallisce, Amazon EKS la sostituisce rapidamente, utilizzando una zona di disponibilità diversa, se necessario.

Tempo di attività costante

Eseguendo i cluster su più zone di disponibilità, si consegue l'affidabilità dell'Accordo sul livello di servizio (SLA) sulla disponibilità degli endpoint dei server API.

Amazon EKS utilizza Amazon Virtual Private Cloud (Amazon VPC) per limitare il traffico tra i componenti del piano di controllo all'interno di un singolo cluster. I componenti del cluster non possono visualizzare o ricevere comunicazioni da altri cluster o AWS account, tranne quando autorizzati dalle politiche di controllo degli accessi basato sui ruoli (RBAC) di Kubernetes.

Calcolo

Oltre al piano di controllo, un cluster Amazon EKS dispone di un set di macchine di lavoro chiamate nodi. La selezione del tipo di nodo del cluster Amazon EKS appropriato è fondamentale per soddisfare i propri requisiti specifici e ottimizzare l'utilizzo delle risorse. Amazon EKS offre i seguenti tipi di nodi primari:

Modalità automatica EKS

EKS Auto Mode estende la AWS gestione oltre il piano di controllo per includere il piano dati, automatizzando la gestione dell'infrastruttura del cluster. Integra le funzionalità di base di Kubernetes come componenti integrati, tra cui scalabilità automatica del calcolo, rete, bilanciamento del carico, DNS, archiviazione e supporto della GPU. EKS Auto Mode gestisce dinamicamente i nodi in base alle richieste del carico di lavoro, utilizzando funzionalità di sicurezza immutabili AMIs e avanzate. Automatizza aggiornamenti e upgrade rispettando i budget per le interruzioni dei pod e include componenti gestiti che altrimenti richiederebbero la gestione di componenti aggiuntivi. Questa opzione è ideale per gli utenti che desiderano sfruttare l' AWS esperienza per day-to-day le operazioni, ridurre al minimo il sovraccarico operativo e concentrarsi sullo sviluppo di applicazioni piuttosto che sulla gestione dell'infrastruttura.

AWS Fargate

Fargate è un motore di elaborazione serverless per container che elimina la necessità di gestire le istanze sottostanti. Fargate consente di specificare le esigenze di risorse dell'applicazione e di effettuare AWS automaticamente il provisioning, la scalabilità e la manutenzione dell'infrastruttura. Questa opzione è ideale per gli utenti che danno priorità ease-of-use e vogliono concentrarsi sullo sviluppo e l'implementazione delle applicazioni piuttosto che sulla gestione dell'infrastruttura.

Karpenter

Karpenter è un cluster autoscaler Kubernetes flessibile e ad alte prestazioni che aiuta a migliorare la disponibilità delle applicazioni e l’efficienza del cluster. Karpenter avvia risorse di calcolo dimensionate in modo ottimale in risposta alla modifica del carico dell’applicazione. Questa opzione può fornire risorse di just-in-time elaborazione che soddisfino i requisiti del carico di lavoro.

Gruppi di nodi gestiti

I gruppi di nodi gestiti sono una combinazione di automazione e personalizzazione per la gestione di una raccolta di EC2 istanze Amazon all'interno di un cluster Amazon EKS. AWS si occupa di attività come l'applicazione di patch, l'aggiornamento e il ridimensionamento dei nodi, semplificando gli aspetti operativi. Parallelamente, sono supportati gli argomenti kubelet personalizzati, che offrono la possibilità di creare policy avanzate per la gestione della CPU e della memoria. Inoltre, migliorano la sicurezza tramite i ruoli AWS Identity and Access Management (IAM) per gli account di servizio, riducendo al contempo la necessità di autorizzazioni separate per cluster.

Nodi autogestiti

I nodi autogestiti offrono il controllo completo sulle EC2 istanze Amazon all'interno di un cluster Amazon EKS. L'utente è responsabile della gestione, del dimensionamento e della manutenzione dei nodi, disponendo del controllo totale sull'infrastruttura sottostante. Questa opzione è consigliata per gli utenti che necessitano di controllo e personalizzazione granulari dei propri nodi e sono pronti a investire tempo nella gestione e nella manutenzione della propria infrastruttura.

Amazon EKS Hybrid Nodes

Con Amazon EKS Hybrid Nodes è possibile utilizzare l’infrastruttura on-premises ed edge come nodi nei cluster Amazon EKS. Amazon EKS Hybrid Nodes unifica la gestione di Kubernetes tra gli ambienti e affida la gestione del piano di controllo Kubernetes alle applicazioni locali e periferiche. AWS

Funzionalità EKS

Amazon EKS offre funzionalità di cluster completamente gestite, installando e gestendo Kubernetes APIs (con Kubernetes Custom Resource Definitions) nel cluster e gestendo controller e altri componenti in AWS un'infrastruttura di proprietà, separata dal cluster. EKS fornisce patch, scalabilità e monitoraggio automatizzati di queste funzionalità, gestendone completamente il ciclo di vita per ridurre il carico di lavoro dei servizi in cluster per l'orchestrazione dei carichi di lavoro, la gestione delle risorse e altro ancora. AWS

EKS offre i seguenti tipi di funzionalità:

AWS Controller per Kubernetes (ACK)

AWS Controllers for Kubernetes (ACK) ti consente di gestire le AWS risorse utilizzando Kubernetes APIs, consentendoti di definire bucket S3, database RDS, ruoli IAM e altre risorse come risorse personalizzate Kubernetes. AWS Puoi gestire AWS le risorse insieme ai carichi di lavoro Kubernetes utilizzando gli stessi strumenti e flussi di lavoro, con supporto per oltre 50 AWS servizi tra cui S3, RDS, DynamoDB e Lambda.

CD Argo

Argo CD GitOps implementa una distribuzione continua basata sui carichi di lavoro delle applicazioni, sulle AWS risorse e sulla configurazione del cluster, utilizzando i repository Git come fonte di verità. Argo CD sincronizza automaticamente i cluster con i repository Git e rileva eventuali deviazioni, riconciliandosi continuamente per garantire che le applicazioni e le risorse distribuite corrispondano allo stato desiderato nel controllo delle versioni. È possibile utilizzare Argo CD per gestire le applicazioni su un determinato cluster o distribuire e gestire applicazioni su più cluster da una singola risorsa Argo CD, con la distribuzione automatica dai repository Git ogni volta che vengono apportate modifiche.

kro (Kube Resource Orchestrator)

kro (Kube Resource Orchestrator) ti consente di creare Kubernetes personalizzati APIs che compongono più risorse in astrazioni di livello superiore, permettendo ai team della piattaforma di definire modelli riutilizzabili per combinazioni di risorse comuni. Ciò consente ai team della piattaforma di fornire funzionalità self-service con barriere appropriate, permettendo agli sviluppatori di fornire infrastrutture complesse utilizzando infrastrutture semplici e appositamente progettate, mantenendo al contempo gli standard organizzativi e le migliori pratiche. APIs