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à.
AWS Fargate profilo
Importante
AWS Fargate con Amazon EKS non è 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 dello spazio dei nomi è definito senza etichette, Amazon EKS tenterà di pianificare tutti i Pods che vengono eseguiti in tale spazio dei nomi 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:
. Il Pod dovrà corrispondere a un selettore in quel profilo per essere pianificato su Fargate. Le regole di affinità/anti-affinità Kubernetes non vengono prese in considerazione e non sono necessarie con i Pods di Amazon EKS Fargate.my-fargate-profile
Quando crei un profilo Fargate, devi specificare un ruolo di esecuzione Pod. Questo ruolo di esecuzione è per i componenti Amazon EKS che vengono eseguiti su infrastruttura Fargate utilizzando il profilo. Viene aggiunto al controllo degli accessi basato sul ruolokubelet
in esecuzione sull'infrastruttura Fargate di registrarsi con il cluster Amazon EKS in modo che possa essere visualizzato nel cluster come nodo. Il ruolo di esecuzione del Pod fornisce anche le autorizzazioni IAM per l'infrastruttura Fargate per consentire l'accesso in lettura ai repository di immagini di Amazon ECR. 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 cercano di implementare i 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 alle AWS API per conto dell'utente. Ad esempio, deve effettuare chiamate per estrarre le immagini del container da Amazon ECR. Il ruolo di esecuzione del Pod Amazon EKS fornisce le autorizzazioni IAM 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 basato sul ruolo
(RBAC) di Kubernetes del cluster per l'autorizzazione. Ciò consente a kubelet
in esecuzione sull'infrastruttura Fargate di registrarsi con il cluster Amazon EKS in modo che possa essere visualizzato nel cluster come nodo. Per ulteriori informazioni, consulta Ruolo IAM per l'esecuzione del Pod Amazon EKS. - Sottoreti
-
Gli ID delle sottoreti per avviare i Pods che 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
Questo argomento 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, vedere. Ruolo IAM per l'esecuzione del Pod Amazon EKS Podsche sono in esecuzione su Fargate sono supportati solo su sottoreti private con accesso gateway NAT Servizi AWS, ma non tramite un percorso diretto verso un Internet Gateway. Ciò implica che il VPC del cluster debba avere a disposizione sottoreti private. È possibile creare un profilo con eksctl
o la AWS Management Console.
Questa procedura richiede eksctl
versione 0.175.0
o successiva. Puoi verificare la versione con il comando seguente:
eksctl version
Per istruzioni sull'installazione o sull'aggiornamento di eksctl
, consulta la sezione Installationeksctl
.
Eliminazione di un profilo Fargate
Questo argomento descrive come eliminare un profilo Fargate.
Quando elimini un profilo Fargate, tutti i Pods che sono stati programmati su Fargate con quel profilo vengono eliminati. Se questi Pods corrispondono a un altro profilo Fargate, vengono allora programmati su Fargate con quel profilo. Se non corrispondono più a nessun profilo Fargate, non saranno programmati su Fargate e potrebbero rimanere in sospeso.
Solo un profilo Fargate in un cluster alla volta può essere nello stato DELETING
. Devi attendere il completamento dell'eliminazione di un profilo Fargate prima di poter eliminare altri profili nel cluster.
È possibile eliminare un profilo coneksctl
, il AWS Management Console, o il AWS CLI. Seleziona la scheda con il nome dello strumento che desideri utilizzare per eliminare il profilo.