Crea un cluster Amazon EKS. - Amazon EKS

Contribuisci a migliorare questa pagina

Per contribuire a questa guida per l’utente, seleziona il link Edit this page on GitHub che si trova nel riquadro destro di ogni pagina.

Crea un cluster Amazon EKS.

Nota

In questo argomento viene trattata la creazione di cluster EKS senza EKS Auto Mode.

Per istruzioni dettagliate su come creare un cluster EKS Auto Mode, consulta Creare un cluster Amazon EKS Auto Mode.

Per iniziare a usare EKS Auto Mode, consulta Nozioni di base su Amazon EKS: EKS Auto Mode.

Questo argomento offre una panoramica delle opzioni disponibili e descrivere gli aspetti da considerare quando crei un cluster Amazon EKS. Se devi creare un cluster con la tua infrastruttura on-premises come elaborazione per i nodi, consulta Creazione di un cluster Amazon EKS con nodi ibridi. Se è la prima volta che crei un cluster Amazon EKS, consigliamo di seguire le nostre guide in Nozioni di base su Amazon EKS. Le guide consentono di creare un cluster predefinito in modo semplice, senza approfondire tutte le opzioni disponibili.

Prerequisiti

  • Un VPC esistente e sottoreti che soddisfano i requisiti di Amazon EKS. Prima di implementare un cluster da utilizzare in produzione, ti consigliamo di approfondire le nozioni relative ai requisiti del VPC e delle sottoreti. Se non disponi di un VPC e di sottoreti, puoi crearli utilizzando un modello CloudFormation AWS fornito da Amazon EKS.

  • Lo strumento a riga di comando kubectl è installato sul dispositivo o su AWS CloudShell. La versione può essere uguale oppure immediatamente precedente o successiva alla versione di Kubernetes del cluster. Per installare o aggiornare kubectl, consulta Impostazione di kubectl e eksctl:

  • La versione 2.12.3 o successive oppure 1.27.160 o successive dell’Interfaccia a riga di comando AWS (AWS CLI) installata e configurata sul dispositivo o in AWS CloudShell. Per verificare la versione attuale, usa aws --version | cut -d / -f2 | cut -d ' ' -f1. I programmi di gestione dei pacchetti, come yum, apt-get o Homebrew per macOS, spesso sono aggiornati a versioni precedenti dell’AWS CLI. Per installare la versione più recente, consulta Installing e Quick configuration with aws configure nella Guida per l’utente dell’Interfaccia a riga di comando AWS. La versione della AWS CLI installata in AWS CloudShell potrebbe anche essere precedente di diverse versioni rispetto alla più recente. Per aggiornarla, consultare Installing AWS CLI to your home directory nella Guida per l’utente di AWS CloudShell.

  • Un principale IAM con autorizzazioni per create e describe un cluster Amazon EKS. Per ulteriori informazioni, consultare Creazione di un cluster Kubernetes locale su un Outpost e Elencare o descrivere tutti i cluster.

Passaggio 1: crea un ruolo IAM del cluster

  1. Se disponi già di un ruolo IAM del cluster o intendi creare il cluster con eksctl, ignora questo passaggio. Per impostazione predefinita, eksctl crea un ruolo per te.

  2. Per creare un file JSON della policy di attendibilità IAM, esegui il comando seguente.

    cat >eks-cluster-role-trust-policy.json <<EOF { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } EOF
  3. Crea il ruolo IAM del cluster Amazon EKS. Se necessario, inserisci il prefisso eks-cluster-role-trust-policy.json nel percorso del computer in cui hai scritto il file nella fase precedente. Il comando associa il criterio di attendibilità creato nella fase precedente al ruolo. Per creare un ruolo IAM, l'azione iam:CreateRole (autorizzazione) deve essere assegnata al principale IAM che sta creando il ruolo.

    aws iam create-role --role-name myAmazonEKSClusterRole --assume-role-policy-document file://"eks-cluster-role-trust-policy.json"
  4. Puoi assegnare la policy gestita da Amazon EKS o creare una policy personalizzata. Per conoscere le autorizzazioni minime che devi utilizzare nella policy personalizzata, consulta Ruolo IAM del cluster Amazon EKS.

    Collega la policy gestita da Amazon EKS AmazonEKSClusterPolicy al ruolo. Per allegare una policy IAM a un principale IAM, è necessario assegnare al principale che sta allegando la policy una delle azioni IAM (autorizzazioni) seguenti: iam:AttachUserPolicy o iam:AttachRolePolicy.

    aws iam attach-role-policy --policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy --role-name myAmazonEKSClusterRole

Ruolo legato al servizio

Amazon EKS crea automaticamente un ruolo collegato ai servizi denominato AWSServiceRoleForAmazonEKS.

Ciò avviene in aggiunta al ruolo IAM del cluster. Un ruolo collegato ai servizi è un tipo di ruolo IAM univoco collegato direttamente ad Amazon EKS. Il ruolo consente ad Amazon EKS di gestire i cluster nell’account. Per ulteriori informazioni, consulta Utilizzo dei ruoli per i cluster Amazon EKS.

L’identità IAM usata per creare il cluster EKS deve disporre dell’autorizzazione per creare il ruolo collegato al servizio. Ciò include l’autorizzazione iam:CreateServiceLinkedRole.

Se il ruolo collegato al servizio non esiste già e il ruolo IAM attuale non dispone delle autorizzazioni sufficienti per crearlo, l’operazione di creazione del cluster non andrà a buon fine.

Fase 2: Creazione del cluster

Puoi creare un cluster utilizzando:

Crea cluster - eksctl

  1. È necessario che la versione 0.214.0 o quelle successive dello strumento a riga di comando eksctl sia installata sul dispositivo o su AWS CloudShell. Per l'installazione o l'aggiornamento di eksctl, consulta la sezione Installation nella documentazione di eksctl.

  2. Crea un cluster Amazon EKS IPv4 con la versione predefinita di Kubernetes di Amazon EKS supportata nella regione AWS predefinita. Prima di eseguire il comando, apporta le sostituzioni seguenti:

  3. Sostituisci region-code con la regione AWS in cui desideri creare il cluster.

  4. Sostituisci my-cluster con un nome per il cluster. Il nome può contenere solo caratteri alfanumerici (con distinzione tra lettere maiuscole e minuscole) e trattini. Deve iniziare con un carattere alfanumerico e non può avere una lunghezza superiore a 100 caratteri. Il nome deve essere univoco all’interno della Regione AWS e dell’account AWS in cui stai creando il cluster.

  5. Sostituisci 1.33 con qualsiasi versione supportata da Amazon EKS.

  6. Modifica i valori di vpc-private-subnets in base alle tue esigenze. Puoi inoltre aggiungere altri ID. Devi specificare almeno due ID sottorete, tuttavia, se preferisci specificare le sottoreti pubbliche, puoi modificare --vpc-private-subnets in --vpc-public-subnets. Alle sottoreti pubbliche è associata una tabella di routing con un routing a un gateway Internet, al contrario delle sottoreti private. Per questo motivo, ti consigliamo di utilizzare le sottoreti private quando possibile.

    Le sottoreti scelte devono soddisfare i requisiti delle sottoreti di Amazon EKS. Prima di selezionare le sottoreti, consigliamo di acquisire familiarità con tutti i requisiti e le considerazioni su cluster VPC e sottoreti di Amazon EKS.

  7. Esegui il comando seguente:

    eksctl create cluster --name my-cluster --region region-code --version 1.33 --vpc-private-subnets subnet-ExampleID1,subnet-ExampleID2 --without-nodegroup

    Il provisioning del cluster richiede diversi minuti. Durante la creazione del cluster, vengono visualizzate diverse righe di output. L'ultima riga di output è simile alla seguente riga di esempio.

    [✓] EKS cluster "my-cluster" in "region-code" region is ready
  8. Continuare con Passaggio 3: aggiornamento di kubeconfig

Impostazioni facoltative

Per visualizzare la maggior parte delle opzioni che è possibile specificare durante la creazione di un cluster con eksctl, utilizza il comando eksctl create cluster --help. Per visualizzare tutte le opzioni disponibili, puoi utilizzare un file config. Per ulteriori informazioni, consulta Uso dei file config e lo Schema dei file config nella documentazione di eksctl. Gli esempi di file di configurazione sono disponibili su GitHub.

Di seguito sono riportate le impostazioni facoltative da aggiungere al comando precedente, quando necessario. Puoi abilitare queste opzioni esclusivamente durante la creazione del cluster, non in seguito. Per specificare queste opzioni, non usare il comando precedente. Crea invece il cluster con un file di configurazione eksctl e specifica tali impostazioni.

  • Se vuoi specificare uno o più gruppi di sicurezza assegnati da Amazon EKS alle interfacce di rete create, scegli l’opzione securityGroup.

    Indipendentemente dal fatto che tu scelga o meno un gruppo di sicurezza, Amazon EKS ne crea uno nuovo per consentire la comunicazione tra il cluster e il VPC. Amazon EKS associa questo gruppo di sicurezza, e altri gruppi eventualmente scelti dall'utente, alle interfacce di rete create. Per ulteriori informazioni sul gruppo di sicurezza del cluster creato da Amazon EKS, consulta Visualizzazione dei requisiti relativi al gruppo di sicurezza Amazon EKS per cluster. Puoi modificare le regole nel gruppo di sicurezza del cluster creato da Amazon EKS.

  • Se vuoi specificare il routing interdominio senza classi (CIDR) IPv4 da cui Kubernetes assegna gli indirizzi IP del servizio, scegli l’opzione serviceIPv4CIDR.

    L’indicazione di un intervallo personalizzato consente di evitare conflitti tra servizi Kubernetes e altre reti con peering o connesse al VPC. Immetti un intervallo in una notazione CIDR. Ad esempio: 10.2.0.0/16.

    Il blocco CIDR deve soddisfare i seguenti requisiti:

    • Essere compreso in uno degli intervalli seguenti: 10.0.0.0/8 172.16.0.0/12 o 192.168.0.0/16.

    • Avere una dimensione minima di /24 e una dimensione massima di /12.

    • Non sovrapporsi all'intervallo del VPC per le risorse Amazon EKS.

      Puoi specificare questa opzione solo con la famiglia di indirizzi IPv4 e solo durante la creazione del cluster. Se non specifichi un’opzione, Kubernetes assegna gli indirizzi IP del servizio dai blocchi CIDR 10.100.0.0/16 o 172.20.0.0/16.

  • Se stai creando un cluster e vuoi che il cluster assegni gli indirizzi IPv6 ai pods e ai servizi anziché a indirizzi IPv4, scegli l’opzione ipFamily.

    Kubernetes assegna indirizzi IPv4 ai pod e ai servizi, per impostazione predefinita. Prima di utilizzare la famiglia IPv6, assicurati di conoscere tutte le considerazioni e i requisiti indicati negli argomenti Considerazioni e requisiti relativi al VPC, Considerazioni e requisiti relativi alle sottoreti, Visualizzazione dei requisiti relativi al gruppo di sicurezza Amazon EKS per cluster e Informazioni sugli indirizzi IPv6 per cluster, pod e servizi. Se scegli la famiglia IPv6, non puoi specificare un intervallo di indirizzi a cui Kubernetes può assegnare indirizzi di servizio IPv6 come puoi fare per la famiglia IPv4. Kubernetes assegna gli indirizzi del servizio dall’intervallo di indirizzi locale univoco (fc00::/7).

Creazione di una console cluster - AWS

  1. Aprire la Console Amazon EKS.

  2. Seleziona Aggiungi cluster e quindi Crea.

  3. In Opzioni di configurazione, seleziona Configurazione personalizzata

  4. In EKS Auto Mode, disattiva l’opzione Usa EKS Auto Mode.

  5. Nella pagina Configura cluster compila i campi seguenti:

    • Nome: un nome per il cluster. Il nome può contenere solo caratteri alfanumerici (con distinzione tra lettere maiuscole e minuscole), trattini e trattini bassi. Deve iniziare con un carattere alfanumerico e non può avere una lunghezza superiore a 100 caratteri. Il nome deve essere univoco all’interno della Regione AWS e dell’account AWS in cui stai creando il cluster.

    • Ruolo IAM del cluster: scegli il ruolo IAM del cluster Amazon EKS creato in precedenza per consentire al piano di controllo (control-plane) Kubernetes di gestire le risorse AWS per tuo conto.

    • Versione Kubernetes – la versione di Kubernetes da utilizzare per il cluster. È preferibile selezionare la versione più recente, a meno che non occorra una versione precedente.

    • Tipo di supporto: la policy della versione di Kubernetes che vuoi impostare per il tuo cluster. Se vuoi che il cluster venga eseguito solo su una versione di supporto standard, puoi scegliere Supporto standard. Se vuoi che il tuo cluster acceda al supporto esteso alla fine del supporto standard per una versione, puoi scegliere Supporto esteso. Se selezioni una versione di Kubernetes che attualmente è in supporto esteso, non puoi selezionare il supporto standard come opzione.

    • Crittografia dei segreti (Facoltativo): scegli di abilitare la crittografia dei segreti per i segreti Kubernetes tramite una chiave KMS. Puoi abilitare questa funzionalità anche dopo la creazione del cluster. Assicurati, tuttavia, di acquisire familiarità con le informazioni contenute nella sezione Crittografia dei segreti Kubernetes con KMS su cluster esistenti.

    • Tag (Facoltativo): aggiunge eventuali tag al cluster. Per ulteriori informazioni, consulta Organizzazione delle risorse Amazon EKS con tag.

    • Spostamento zonale ARC - (facoltativo) Puoi usare il controller Route53 Application Recovery per mitigare le zone di disponibilità compromesse. Per ulteriori informazioni, consulta Ulteriori informazioni relative allo spostamento zonale in controller di ripristino delle applicazioni Amazon (ARC).

  6. Nella sezione Accesso al cluster della pagina Configura cluster, inserisci i seguenti campi:

    • Accesso amministratore cluster Bootstrap: il creatore del cluster diventa automaticamente amministratore Kubernetes. Se vuoi disabilitare questa opzione, seleziona Impedisci l’accesso all’amministratore del cluster.

    • Modalità di autenticazione del cluster: scegli come concedere l’accesso alle API Kubernetes agli utenti e ai ruoli IAM. Per ulteriori informazioni, consulta Impostare la modalità di autenticazione del cluster.

      Quando hai finito con questa pagina, seleziona Avanti.

  7. Nella pagina Specifica reti, seleziona i valori dei campi riportati di seguito:

    • VPC: crea il cluster in un VPC esistente conforme ai requisiti su VPC di Amazon EKS. Prima di scegliere un VPC, ti consigliamo di acquisire familiarità con i requisiti e le considerazioni nella sezione Visualizzazione di requisiti di rete di Amazon EKS per VPC e sottoreti. Dopo la creazione del cluster, non potrai più modificare il VPC da utilizzare. Se l'elenco risulta vuoto, è necessario crearne uno prima. Per ulteriori informazioni, consulta Creazione di un Amazon VPC per il cluster Amazon EKS..

    • Sottoreti: per impostazione predefinita, tutte le sottoreti disponibili nel VPC specificato nel campo precedente sono preselezionate. È necessario selezionarne almeno due.

      Le sottoreti scelte devono soddisfare i requisiti delle sottoreti di Amazon EKS. Prima di selezionare le sottoreti, consigliamo di acquisire familiarità con tutti i requisiti e le considerazioni su cluster VPC e sottoreti di Amazon EKS.

      Gruppi di sicurezza: (facoltativo) specifica uno o più gruppi di sicurezza da associare alle interfacce di rete create da Amazon EKS.

      Indipendentemente dal fatto che tu scelga o meno un gruppo di sicurezza, Amazon EKS ne crea uno nuovo per consentire la comunicazione tra il cluster e il VPC. Amazon EKS associa questo gruppo di sicurezza, e altri gruppi eventualmente scelti dall'utente, alle interfacce di rete create. Per ulteriori informazioni sul gruppo di sicurezza del cluster creato da Amazon EKS, consulta Visualizzazione dei requisiti relativi al gruppo di sicurezza Amazon EKS per cluster. Puoi modificare le regole nel gruppo di sicurezza del cluster creato da Amazon EKS.

    • Scelta della famiglia di indirizzi IP del cluster: puoi scegliere tra IPv4 e IPv6.

      Kubernetes assegna indirizzi IPv4 ai pod e ai servizi, per impostazione predefinita. Prima di utilizzare la famiglia IPv6, assicurati di conoscere tutte le considerazioni e i requisiti indicati negli argomenti Requisiti e considerazioni relativi al VPC, Considerazioni e requisiti relativi alle sottoreti, Visualizzazione dei requisiti relativi al gruppo di sicurezza Amazon EKS per cluster e Informazioni sugli indirizzi IPv6 per cluster, pod e servizi. Se scegli la famiglia IPv6, non puoi specificare un intervallo di indirizzi a cui Kubernetes può assegnare indirizzi di servizio IPv6 come puoi fare per la famiglia IPv4. Kubernetes assegna gli indirizzi del servizio dall’intervallo di indirizzi locale univoco (fc00::/7).

    • (Facoltativo) Scegli Configure Kubernetes Service IP address range (Configura l’intervallo di indirizzi IP del servizio Kubernetes) e specifica un intervallo IPv4 del servizio.

      L’indicazione di un intervallo personalizzato consente di evitare conflitti tra servizi Kubernetes e altre reti con peering o connesse al VPC. Immetti un intervallo in una notazione CIDR. Ad esempio: 10.2.0.0/16.

      Il blocco CIDR deve soddisfare i seguenti requisiti:

      • Essere compreso in uno degli intervalli seguenti: 10.0.0.0/8 172.16.0.0/12 o 192.168.0.0/16.

      • Avere una dimensione minima di /24 e una dimensione massima di /12.

      • Non sovrapporsi all'intervallo del VPC per le risorse Amazon EKS.

    Puoi specificare questa opzione solo con la famiglia di indirizzi IPv4 e solo durante la creazione del cluster. Se non specifichi un’opzione, Kubernetes assegna gli indirizzi IP del servizio dai blocchi CIDR 10.100.0.0/16 o 172.20.0.0/16.

    • Per Cluster endpoint access (Accesso all'endpoint del cluster), seleziona un'opzione. Puoi modificare questa opzione dopo aver creato il cluster. Prima di selezionare un'opzione non predefinita, assicurati di familiarizzare con le opzioni e le relative implicazioni. Per ulteriori informazioni, consulta Endpoint del server API del cluster.

      Quando hai finito con questa pagina, seleziona Avanti.

  8. (Facoltativo) Nella pagina Configura osservabilità, scegli le opzioni Parametri e Registrazione del piano di controllo da attivare. Per impostazione predefinita, i tipi di log sono disattivati.

    Quando hai finito con questa pagina, seleziona Avanti.

  9. Nella pagina Select add-ons (Seleziona componenti aggiuntivi), scegli i componenti aggiuntivi da aggiungere al tuo cluster. Certi componenti aggiuntivi sono preselezionati. Ѐ possibile scegliere tutti i componenti aggiuntivi Amazon EKS e i componenti aggiuntivi di AWS Marketplace necessari. Se i componenti aggiuntivi di AWS Marketplace da installare non sono presenti nell’elenco, è possibile fare clic sui numeri di pagina per visualizzare risultati aggiuntivi o cercare i componenti aggiuntivi di AWS Marketplace disponibili inserendo il testo nella casella di ricerca. Puoi anche filtrare per categoria, fornitore o modello di prezzi e quindi scegliere i componenti aggiuntivi dai risultati della ricerca. Quando crei un cluster, puoi visualizzare, selezionare e installare tutti i componenti aggiuntivi che supportano EKS Pod Identity, come descritto in dettaglio in Informazioni su come EKS Pod Identity consente ai pod di accedere ai servizi AWS.

    Quando hai finito con questa pagina, seleziona Avanti.

    Alcuni componenti aggiuntivi, come Amazon VPC CNI, CoreDNS e kube-proxy, sono installati per impostazione predefinita. Disabilitare uno dei componenti aggiuntivi predefiniti potrebbe influire sulla tua capacità di eseguire le applicazioni Kubernetes.

  10. Nella pagina Configura le impostazioni dei componenti aggiuntivi selezionati, seleziona la versione da installare. Dopo la creazione del cluster, puoi eseguire in qualsiasi momento l'aggiornamento a una versione successiva.

    Per i componenti aggiuntivi che supportano EKS Pod Identities, puoi usare la console per generare automaticamente il ruolo con il nome, la policy gestita da AWS e la policy di attendibilità precompilati specificamente per il componente aggiuntivo. È possibile riutilizzare i ruoli esistenti o crearne di nuovi per i componenti aggiuntivi supportati Per i passaggi necessari per usare la console per creare ruoli per i componenti aggiuntivi che supportano EKS Pod Identity, consulta Creare un componente aggiuntivo (Console AWS). Se un componente aggiuntivo non supporta EKS Pod Identity, viene mostrato un messaggio con le istruzioni per usare la procedura guidata per creare i ruoli IAM per gli account di servizio (IRSA) dopo la creazione del cluster.

    Puoi aggiornare la configurazione di ogni componente aggiuntivo dopo la creazione del cluster. Per ulteriori informazioni sulla configurazione dei componenti aggiuntivi, consulta Aggiornamento di un componente aggiuntivo di Amazon EKS. Quando hai finito con questa pagina, seleziona Avanti.

  11. Nella pagina Rivedi e crea, controlla le informazioni che hai inserito o selezionato nelle pagine precedenti. Se devi apportare modifiche, seleziona Edit (Modifica). Al termine della configurazione, seleziona Create (Crea). Durante il provisioning del cluster, nel campo Stato viene visualizzato il messaggio CREAZIONE.

    Nota

    Potresti ricevere un messaggio di errore indicante che una delle zone di disponibilità nella richiesta non dispone di capacità sufficiente per creare un cluster Amazon EKS. In questo caso, l'output di errore contiene le zone di disponibilità in grado di supportare un nuovo cluster. Riprova a creare il cluster con almeno due sottoreti che si trovano nelle zone di disponibilità supportate per il tuo account. Per ulteriori informazioni, consulta Capacità insufficiente.

    Il provisioning del cluster richiede diversi minuti.

  12. Continuare con Passaggio 3: aggiornamento di kubeconfig

Creazione di un cluster: CLI AWS

  1. Crea un cluster con il comando seguente. Prima di eseguire il comando, apporta le modifiche seguenti:

    • Sostituisci region-code con la regione AWS in cui desideri creare il cluster.

    • Sostituisci my-cluster con un nome per il cluster. Il nome può contenere solo caratteri alfanumerici (con distinzione tra lettere maiuscole e minuscole), trattini e trattini bassi. Deve iniziare con un carattere alfanumerico e non può avere una lunghezza superiore a 100 caratteri. Il nome deve essere univoco all’interno della Regione AWS e dell’account AWS in cui stai creando il cluster.

    • Sostituisci 1.33 con qualsiasi versione supportata da Amazon EKS.

    • Sostituisci 111122223333 con il tuo ID account e myAmazonEKSClusterRole con il nome del ruolo IAM del cluster.

    • Sostituisci i valori di subnetIds con quelli in tuo possesso. Puoi inoltre aggiungere altri ID. Devi specificare almeno due ID sottorete,

      Le sottoreti scelte devono soddisfare i requisiti delle sottoreti di Amazon EKS. Prima di selezionare le sottoreti, consigliamo di acquisire familiarità con tutti i requisiti e le considerazioni su cluster VPC e sottoreti di Amazon EKS.

    • Se non vuoi specificare un ID del gruppo di sicurezza, rimuovi ,securityGroupIds=sg-<ExampleID1> dal comando. Se vuoi specificare uno o più ID del gruppo di sicurezza, sostituisci i valori di securityGroupIds con quelli in tuo possesso. Puoi inoltre aggiungere altri ID.

      Indipendentemente dal fatto che tu scelga o meno un gruppo di sicurezza, Amazon EKS ne crea uno nuovo per consentire la comunicazione tra il cluster e il VPC. Amazon EKS associa questo gruppo di sicurezza, e altri gruppi eventualmente scelti dall'utente, alle interfacce di rete create. Per ulteriori informazioni sul gruppo di sicurezza del cluster creato da Amazon EKS, consulta Visualizzazione dei requisiti relativi al gruppo di sicurezza Amazon EKS per cluster. Puoi modificare le regole nel gruppo di sicurezza del cluster creato da Amazon EKS.

      aws eks create-cluster --region region-code --name my-cluster --kubernetes-version 1.33 \ --role-arn arn:aws:iam::111122223333:role/myAmazonEKSClusterRole \ --resources-vpc-config subnetIds=subnet-ExampleID1,subnet-ExampleID2,securityGroupIds=sg-ExampleID1
      Nota

      Potresti ricevere un messaggio di errore indicante che una delle zone di disponibilità nella richiesta non dispone di capacità sufficiente per creare un cluster Amazon EKS. In questo caso, l'output di errore contiene le zone di disponibilità in grado di supportare un nuovo cluster. Riprova a creare il cluster con almeno due sottoreti che si trovano nelle zone di disponibilità supportate per il tuo account. Per ulteriori informazioni, consulta Capacità insufficiente.

      Di seguito sono riportate le impostazioni facoltative da aggiungere al comando precedente, quando necessario. Puoi abilitare queste opzioni esclusivamente durante la creazione del cluster, non in seguito.

    • Durante la creazione del cluster, EKS installa più componenti aggiuntivi di rete per impostazione predefinita. Sono inclusi Amazon VPC CNI, CoreDNS e kube-proxy.

      Se vuoi disabilitare l’installazione di questi componenti aggiuntivi di rete predefiniti, usa il parametro seguente. Può essere usato per CNI alternativi, come Cilium. Per ulteriori informazioni, consulta la Documentazione di riferimento delle API di EKS.

      aws eks create-cluster --bootstrapSelfManagedAddons false

    • Se vuoi specificare il blocco di instradamento interdominio senza classi (CIDR) IPv4 da cui Kubernetes assegna gli indirizzi IP del servizio, aggiungi --kubernetes-network-config serviceIpv4Cidr=<cidr-block> al comando seguente.

      L’indicazione di un intervallo personalizzato consente di evitare conflitti tra servizi Kubernetes e altre reti con peering o connesse al VPC. Immetti un intervallo in una notazione CIDR. Ad esempio: 10.2.0.0/16.

      Il blocco CIDR deve soddisfare i seguenti requisiti:

      • Essere compreso in uno degli intervalli seguenti: 10.0.0.0/8 172.16.0.0/12 o 192.168.0.0/16.

      • Avere una dimensione minima di /24 e una dimensione massima di /12.

      • Non sovrapporsi all'intervallo del VPC per le risorse Amazon EKS.

    Puoi specificare questa opzione solo con la famiglia di indirizzi IPv4 e solo durante la creazione del cluster. Se non specifichi un’opzione, Kubernetes assegna gli indirizzi IP del servizio dai blocchi CIDR 10.100.0.0/16 o 172.20.0.0/16.

  2. Il provisioning del cluster richiede diversi minuti. È possibile eseguire query sullo stato del cluster con il comando seguente.

    aws eks describe-cluster --region region-code --name my-cluster --query "cluster.status"

    Non passare alla fase successiva finché l’output restituito non è ACTIVE.

  3. Continuare con Passaggio 3: aggiornamento di kubeconfig

Passaggio 3: aggiornamento di kubeconfig

  1. Se hai creato il cluster utilizzando eksctl, puoi ignorare questo passaggio, poiché è già stato completato da eksctl. Abilita kubectl per consentire la comunicazione con il cluster aggiungendo un nuovo contesto al file config kubectl. Per ulteriori informazioni su come creare e aggiornare il file, consulta Connettere kubectl a un cluster EKS creando un file kubeconfig.

    aws eks update-kubeconfig --region region-code --name my-cluster

    Di seguito viene riportato un output di esempio:

    Added new context arn:aws:eks:region-code:111122223333:cluster/my-cluster to /home/username/.kube/config
  2. Conferma la comunicazione con il cluster eseguendo il comando seguente.

    kubectl get svc

    Di seguito viene riportato un output di esempio:

    NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 28h

Passaggio 4: configurazione del cluster

  1. (Consigliato) Per utilizzare alcuni componenti aggiuntivi Amazon EKS o per consentire ai singoli carichi di lavoro Kubernetes di disporre di autorizzazioni Identity and Access Management (IAM) AWS specifiche, crea un provider OpenID Connect (OIDC) IAM per il cluster. È necessario creare un provider OIDC IAM per il cluster una sola volta. Per ulteriori informazioni sui componenti aggiuntivi di Amazon EKS, consulta Componenti aggiuntivi Amazon EKS. Per ulteriori informazioni sull'assegnazione di autorizzazioni IAM specifiche ai carichi di lavoro, consulta Ruoli IAM per gli account di servizio.

  2. (Consigliato) Configura il cluster per il componente aggiuntivo CNI di Amazon VPC per Kubernetes prima di implementare i nodi Amazon EC2 nel cluster. Per impostazione predefinita, il plugin è stato installato con il cluster. Quando aggiungi i nodi Amazon EC2 al cluster, il plugin viene implementato automaticamente su ogni nodo Amazon EC2 aggiunto. Il componente aggiuntivo richiede di collegare una delle policy IAM seguenti a un ruolo IAM. Se il cluster usa la famiglia IPv4, usa la policy IAM gestita AmazonEKS_CNI_Policy. Se il tuo cluster usa la famiglia IPv6, utilizza una policy IAM creata da te.

    Il ruolo IAM a cui si collega la policy può essere il ruolo IAM del nodo o un ruolo dedicato utilizzato solo per il plugin. Consigliamo di allegare la policy a quest'ultimo ruolo. Per ulteriori informazioni sulla creazione del ruolo, consulta Configurare il plug-in CNI di Amazon VPC per l’utilizzo di IRSA o il ruolo IAM del nodo Amazon EKS.

  3. Se hai implementato il cluster utilizzando la Console di gestione AWS, puoi ignorare questo passaggio. Per impostazione predefinita, la Console di gestione AWS implementa il CNI di Amazon VPC per i componenti aggiuntivi Kubernetes, CoreDNS e Amazon EKS kube-proxy.

    Se implementi il tuo cluster usando eksctl o AWS, vengono implementati i componenti aggiuntivi CNI di Amazon VPC per Kubernetes, CoreDNS e i componenti aggiuntivi autogestiti kube-proxy. Puoi eseguire la migrazione dei componenti aggiuntivi CNI di Amazon VPC per Kubernetes, CoreDNS e dei componenti autogestiti kube-proxy implementati con il cluster verso i componenti aggiuntivi di Amazon EKS. Per ulteriori informazioni, consulta Componenti aggiuntivi Amazon EKS.

  4. (Facoltativo) Se non l’hai già fatto, puoi abilitare le metriche Prometheus per il cluster. Per ulteriori informazioni, consulta Creare uno scraper nella Guida per l'utente di Amazon Managed Service for Prometheus.

  5. Se hai intenzione di implementare nel tuo cluster carichi di lavoro che utilizzano volumi Amazon EBS, devi installare il Amazon EBS CSI nel cluster prima di implementare i carichi di lavoro.

Passaggi successivi