Aiutaci a migliorare questa pagina
Vuoi contribuire a questa guida per l'utente? Scorri fino alla fine di questa pagina e seleziona Modifica questa pagina su GitHub. I tuoi contributi contribuiranno a rendere la nostra guida utente migliore per tutti.
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à.
Definisci quale Pods utilizzo al AWS Fargate momento del lancio
Importante
AWS Fargate con Amazon non EKS è disponibile negli AWS GovCloud Stati Uniti orientali e AWS GovCloud negli Stati Uniti occidentali.
Prima di programmare i Pods su Fargate nel cluster, è necessario definire almeno un profilo Fargate che specifichi i Pods utilizzati da Fargate al momento dell'avvio.
Come amministratore, puoi utilizzare il profilo Fargate per dichiarare quali profili Pods vengono eseguiti su Fargate. Puoi effettuare questa operazione tramite i selettori del profilo. Puoi aggiungere fino a cinque selettori a ogni profilo. Ogni selettore deve contenere uno spazio dei nomi. Il selettore può includere anche etichette. Il campo etichetta è costituito da più coppie chiave-valore facoltative. I pod che corrispondono ai selettori sono programmati su Fargate. I pod vengono abbinati utilizzando uno spazio dei nomi e le etichette specificate nel selettore. Se un selettore di namespace è definito senza etichette, Amazon EKS tenta di pianificare tutto ciò che viene eseguito in Pods quel namespace su Fargate utilizzando il profilo. Se a to-be-scheduled Pod corrisponde a uno qualsiasi dei selettori nel profilo Fargate, allora è programmato su Pod Fargate.
Se Pod corrisponde a più profili Fargate, puoi specificare quale profilo a Pod utilizza aggiungendo la seguente etichetta Kubernetes alla Pod specifica: eks.amazonaws.com/fargate-profile:
. PodDeve corrispondere a un selettore in quel profilo per essere programmato su Fargate. Kubernetesle regole di affinità/antiaffinità non si applicano e non sono necessarie con Amazon Fargate. EKS Podsmy-fargate-profile
Quando crei un profilo Fargate, devi specificare un ruolo di esecuzione Pod. Questo ruolo di esecuzione è per i EKS componenti Amazon eseguiti sull'infrastruttura Fargate utilizzando il profilo. Viene aggiunto al Role Kubernetes Based Access Controlkubelet
ciò che viene eseguito sull'infrastruttura Fargate può registrarsi nel EKS cluster Amazon e apparire nel cluster come nodo. Il ruolo di Pod esecuzione fornisce inoltre IAM le autorizzazioni all'infrastruttura Fargate per consentire l'accesso in lettura agli archivi di immagini ECR Amazon. Per ulteriori informazioni, consulta Ruolo IAM per l'esecuzione del Pod Amazon EKS.
I profili Fargate non possono essere modificati. Tuttavia, è possibile creare un nuovo profilo aggiornato per sostituire un profilo esistente e quindi eliminare l'originale.
Nota
Qualsiasi Pods in esecuzione utilizzando un profilo Fargate vengono arrestati e messi in sospeso quando il profilo viene eliminato.
Se tutti i profili in un cluster sono nello stato DELETING
, è necessario attendere che tale profilo Fargate finisca l'eliminazione prima di poter creare altri profili in tale cluster.
Amazon EKS e Fargate si diffondono Pods su ciascuna delle sottoreti definite nel profilo Fargate. Tuttavia, potresti ritrovarti con una diffusione irregolare. Se devi avere una diffusione uniforme, usa due profili Fargate. Anche la diffusione è importante in scenari in cui si desidera implementare due repliche e non si vogliono tempi di inattività. È consigliabile che ogni profilo abbia una sola sottorete.
Componenti del profilo Fargate
Un profilo Fargate contiene i componenti elencati di seguito.
- Ruolo di esecuzione del pod
-
Quando il cluster si Pods attiva AWS Fargate, il
kubelet
cluster in esecuzione sull'infrastruttura Fargate deve effettuare chiamate per AWS APIs conto dell'utente. Ad esempio, deve effettuare chiamate per estrarre le immagini dei container da AmazonECR. Il ruolo di EKS Pod esecuzione di Amazon fornisce le IAM autorizzazioni per eseguire questa operazione.Quando crei un profilo Fargate, devi specificare un ruolo di esecuzione del Pod da utilizzare con i tuoi Pods. Questo ruolo viene aggiunto al controllo degli accessi Kubernetes basato sul ruolo
(RBAC) del cluster per l'autorizzazione. In questo modo ciò kubelet
che è in esecuzione sull'infrastruttura Fargate può registrarsi nel tuo EKS cluster Amazon e apparire nel tuo cluster come nodo. Per ulteriori informazioni, consulta Ruolo IAM per l'esecuzione del Pod Amazon EKS. - Sottoreti
-
Le IDs sottoreti da avviare Pods utilizzano questo profilo. In questo momento, ai Pods in esecuzione su Fargate non vengono assegnati indirizzi IP pubblici. Di conseguenza, in virtù di questo parametro, sono accettate solo le sottoreti private senza routing diretto a un gateway Internet.
- Selettori
-
I selettori da abbinare ai Pods per utilizzare questo profilo Fargate. È possibile specificare fino a cinque selettori in un profilo Fargate. I selettori hanno le seguenti componenti:
-
Spazio dei nomi: specifica uno spazio dei nomi per un selettore. Il selettore corrisponde solo a Pods che vengono creati in questo spazio dei nomi. Tuttavia, è possibile creare più selettori per rivolgersi a più spazi dei nomi.
-
Etichette: è possibile specificare facoltativamente le etichette Kubernetes che corrispondono al selettore. Il selettore corrisponde solo ai Pods che hanno tutte le etichette specificate nel selettore.
-
Caratteri jolly del profilo Fargate
Oltre ai caratteri consentiti da Kubernetes, puoi utilizzare
e *
nei criteri di selezione per gli spazi dei nomi, chiavi di etichette e valori di etichette:?
-
rappresenta nessuno, uno o più caratteri. Ad esempio,*
può rappresentareprod*
prod
eprod-metrics
. -
rappresenta un singolo carattere (ad esempio,?
può rappresentarevalue?
valuea
). Tuttavia, non può rappresentarevalue
evalue-a
, perché?
può rappresentare esattamente un solo carattere.
Questi caratteri jolly possono essere utilizzati in qualsiasi posizione e in combinazione (ad esempio
, prod*
, e *dev
). Altri caratteri jolly e forme di corrispondenza del modello, ad esempio le espressioni regolari, non sono supportati.frontend*?
Se sono presenti più profili corrispondenti per lo spazio dei nomi e le etichette nelle specifiche del Pod, Fargate seleziona il profilo in base all'ordinamento alfanumerico e al nome del profilo. Ad esempio, se entrambi i profili A (con il nome beta-workload
) e il profilo B (con il nome prod-workload
) hanno dei selettori corrispondenti per i Pods da avviare, Fargate sceglie il profilo A (beta-workload
) per i Pods. I Pods hanno etichette con il profilo A sui Pods (ad esempio, eks.amazonaws.com/fargate-profile=beta-workload
).
Se desideri migrare i Pods Fargate esistenti su nuovi profili che utilizzano caratteri jolly, puoi farlo in due modi:
-
Crea un nuovo profilo con i selettori corrispondenti e poi elimina i vecchi profili. I pod etichettati con vecchi profili vengono riprogrammati con nuovi profili corrispondenti.
-
Se desideri migrare i carichi di lavoro ma non hai la certezza di quali siano le etichette Fargate su ogni Pod Fargate, puoi utilizzare il seguente metodo. Crea un nuovo profilo con un nome che risulti primo in ordine alfanumerico tra i profili dello stesso cluster. Quindi, ricicla i Pods Fargate che devono essere migrati a nuovi profili.
Creazione di un profilo Fargate
Questa sezione descrive come creare un profilo Fargate. È inoltre necessario aver creato un ruolo di esecuzione del Pod da utilizzare per il profilo Fargate. Per ulteriori informazioni, vedereRuolo IAM per l'esecuzione del Pod Amazon EKS. Podsche sono in esecuzione su Fargate sono supportati solo su sottoreti private con accesso NATgateway a Servizi AWS, ma non tramite un percorso diretto verso un Internet Gateway. In questo modo i cluster VPC devono disporre di sottoreti private. È possibile creare un profilo con eksctl
o la AWS Management Console.