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à.
Guida introduttiva ad Amazon EKS AWS Management Console e AWS CLI
Questa guida ti aiuta a creare tutte le risorse necessarie per iniziare a usare Amazon Elastic Kubernetes Service (Amazon EKS) utilizzando e il. AWS Management Console AWS CLI Con questa guida è possibile creare manualmente ogni risorsa. Al termine di questo tutorial, sarà creato un cluster Amazon EKS in esecuzione a cui implementare applicazioni.
Le procedure descritte in questa guida ti consentono di visualizzare in modo completo il modo in cui ogni risorsa viene creata e il modo in cui le risorse interagiscono tra loro. Se si preferisce creare automaticamente la maggior parte delle risorse, utilizzare la CLI eksctl
per creare il cluster e i nodi. Per ulteriori informazioni, consulta Guida introduttiva ad Amazon EKS: eksctl.
Prerequisiti
Prima di iniziare questo tutorial, è necessario installare e configurare i seguenti strumenti e risorse necessarie per creare e gestire un cluster Amazon EKS.
-
AWS CLI— Uno strumento da riga di comando per lavorare con AWS i servizi, incluso Amazon EKS. Per informazioni, consultare Installazione, aggiornamento e disinstallazione di AWS CLI nella Guida per l'utente di AWS Command Line Interface . Dopo aver installato AWS CLI, ti consigliamo di configurarlo anche. Per ulteriori informazioni, consultare Configurazione rapida con
aws configure
nella Guida per l'utente AWS Command Line Interface . -
kubectl
: uno strumento a riga di comando per lavorare con i cluster Kubernetes. Per ulteriori informazioni, consulta Installazione o aggiornamento di kubectl. -
Autorizzazioni IAM richieste: il responsabile della sicurezza IAM che stai utilizzando deve disporre delle autorizzazioni per lavorare con i ruoli IAM di Amazon EKS, i ruoli collegati ai servizi AWS CloudFormation, un VPC e le risorse correlate. Per ulteriori informazioni, consulta Operazioni, risorse e chiavi di condizione per Amazon Elastic Kubernetes Service e Utilizzo di ruoli collegati ai servizi nella Guida per l'utente di IAM. È necessario che tutti i passaggi di questa guida siano completati dallo stesso utente. Esegui il comando seguente per controllare l’utente corrente:
aws sts get-caller-identity
-
Ti consigliamo di completare la procedura descritta in questo argomento in una shell Bash. In alternativa, puoi apportare alcune modifiche alla tua shell per alcuni comandi di script, come i caratteri di continuazione della riga, e per il modo in cui le variabili vengono impostate e utilizzate. Inoltre, le regole di escape e di utilizzo delle virgolette per la shell (interprete di comandi) potrebbero essere diverse. Per ulteriori informazioni, consulta Usare le virgolette con le stringhe nella Guida per l' AWS CLIutente. AWS Command Line Interface
Fase 1: Creazione del cluster Amazon EKS;
Importante
Per iniziare nel modo più semplice e rapido possibile, in questo argomento sono inclusi i passaggi per creare un cluster con impostazioni predefinite. Prima di creare un cluster da utilizzare in produzione, è consigliabile acquisire familiarità con tutte le impostazioni e implementare un cluster con le impostazioni che soddisfano i tuoi requisiti. Per ulteriori informazioni, consulta Creazione di un cluster Amazon EKS. Alcune impostazioni possono essere abilitate solo quando crei cluster.
Per creare il cluster
-
Creare un Amazon VPC con sottoreti pubbliche e private che soddisfino i requisiti Amazon EKS. Sostituisci
con qualsiasi Regione AWS supportata da Amazon EKS. Per un elenco di Regioni AWS, consulta gli endpoint e le quote di Amazon EKS nella guida di riferimento AWS generale.Puoi sostituireregion-code
con un nome a tua scelta.my-eks-vpc-stack
aws cloudformation create-stack \ --region
region-code
\ --stack-namemy-eks-vpc-stack
\ --template-url https://s3.us-west-2.amazonaws.com/amazon-eks/cloudformation/2020-10-29/amazon-eks-vpc-private-subnets.yamlSuggerimento
Per un elenco di tutte le risorse create dal comando precedente, aprire la console AWS CloudFormation all'indirizzo https://console.aws.amazon.com/cloudformation
. Scegli lo stack
, quindi la scheda Resources (Risorse).my-eks-vpc-stack
-
Crea un ruolo IAM del cluster e associa la policy gestita Amazon EKS IAM richiesta. Kubernetesi cluster gestiti da Amazon EKS effettuano chiamate ad altri AWS servizi per tuo conto per gestire le risorse che utilizzi con il servizio.
-
Copiare i seguenti contenuti in un file denominato
.eks-cluster-role-trust-policy.json
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
Creare il ruolo.
aws iam create-role \ --role-name
myAmazonEKSClusterRole
\ --assume-role-policy-document file://"eks-cluster-role-trust-policy.json
" -
Allegare la policy IAM gestita da Amazon EKS richiesta al ruolo.
aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy \ --role-name
myAmazonEKSClusterRole
-
Aprire la console Amazon EKS all'indirizzo https://console.aws.amazon.com/eks/home#/clusters
. Assicurati che quello Regione AWS mostrato nella parte superiore destra della console sia Regione AWS quello in cui desideri creare il cluster. In caso contrario, scegli il menu a discesa accanto al Regione AWS nome e scegli Regione AWS quello che desideri utilizzare.
-
Scegli Add cluster (Aggiungi cluster), quindi scegli Create (Crea). Se non viene visualizzata questa opzione, scegli Clusters (Cluster) nel pannello di navigazione a sinistra.
-
Nella pagina Configure cluster (Configura cluster), completare le seguenti operazioni:
-
Immettere un nome per il cluster, ad esempio
my-cluster
. Il nome può contenere solo caratteri alfanumerici (con distinzione tra lettere maiuscole e minuscole) e trattini. Deve iniziare con un carattere alfabetico e non può avere una lunghezza superiore a 100 caratteri. -
Per Cluster Service Role, scegli
ClusterRoleMyAmazoneks
. -
Lasciare le impostazioni rimanenti sui valori di default e selezionare Next (Successivo).
-
-
Nella pagina Specify networking (Specifica rete), procedere come segue:
-
Scegli l'ID del VPC creato in un passaggio precedente nell'elenco a discesa VPC.
È qualcosa come
vpc-00x0000x000x0x000 | -VPC
. my-eks-vpc-stack -
Lasciare le impostazioni rimanenti sui valori di default e selezionare Next (Successivo).
-
-
Nella pagina Configura osservabilità, scegli Avanti.
-
Nella pagina Seleziona componenti aggiuntivi, scegli Successivo.
Per ulteriori informazioni sui componenti aggiuntivi, consulta la pagina Componenti aggiuntivi Amazon EKS.
-
Nella pagina Configura le impostazioni dei componenti aggiuntivi selezionati, scegli Successivo.
-
Nella pagina Review and create (Rivedi e crea), scegliere Create (Crea).
A destra del nome del cluster, lo stato del cluster è Creazione in corso per alcuni minuti fino al termine del processo di provisioning del cluster. Non proseguire con il passaggio successivo finché lo stato non è Attivo.
Nota
Potresti ricevere un errore che indica 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.
Fase 2: Configurazione del computer per comunicare con il cluster
In questa sezione, imparerai a creare un file kubeconfig
per il cluster. Le impostazioni in questo file abilitano la CLI kubectl
per comunicare con il cluster.
Configurazione del computer per comunicazione con il cluster
-
Crea o aggiorna un file
kubeconfig
per il cluster. Sostituisci
con la Regione AWS in cui hai creato il cluster. Sostituisciregion-code
con il nome del cluster.my-cluster
aws eks update-kubeconfig --region
region-code
--namemy-cluster
Per impostazione predefinita, il file
config
viene creato in~/.kube
o la configurazione del nuovo cluster viene aggiunta a un fileconfig
esistente in~/.kube
. -
Prova la configurazione.
kubectl get svc
Nota
Se ricevi qualsiasi altro errore di tipo di risorsa o autorizzazione, consulta la sezione Accesso negato o non autorizzato (kubectl) nell'argomento relativo alla risoluzione dei problemi.
Di seguito viene riportato un output di esempio:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE svc/kubernetes ClusterIP 10.100.0.1 <none> 443/TCP
1m
Fase 3: Creazione di nodi
Importante
Per iniziare nel modo più semplice e rapido possibile, in questo argomento sono inclusi i passaggi per creare nodi con impostazioni predefinite. Prima di creare i nodi da utilizzare in produzione, è consigliabile acquisire familiarità con tutte le impostazioni e implementare i nodi con le impostazioni che soddisfano i tuoi requisiti. Per ulteriori informazioni, consulta Nodi Amazon EKS. Alcune impostazioni possono essere abilitate solo quando crei i nodi.
È possibile creare un cluster con uno dei seguenti tipi di nodo. Per ulteriori informazioni sui tipi di nodi, consultare Nodi Amazon EKS. Dopo aver implementato il cluster, puoi aggiungere altri tipi di nodo.
-
Fargate - Linux: scegli questo tipo di nodo se desideri eseguire le applicazioni Linux su AWS Fargate. Fargate è un motore di calcolo serverless che consente di implementare Pods di Kubernetes senza dover gestire le istanze Amazon EC2.
-
Nodi gestiti - Linux: scegli questo tipo di nodo se desideri eseguire applicazioni Amazon Linux su istanze Amazon EC2. Sebbene la procedura non sia descritta in questa guida, al cluster puoi anche aggiungere nodi autogestiti di Windows e nodi Bottlerocket.
Fase 4: Visualizzazione delle risorse
Puoi visualizzare i nodi e i carichi di lavoro Kubernetes.
Visualizzazione di nodi e carichi di lavoro
-
Nel pannello di navigazione a sinistra, seleziona Cluster. Nell'elenco Clusters (Cluster), scegli il nome del cluster che hai creato, ad esempio
my-cluster
. -
Nella pagina
my-cluster
, scegli le opzioni seguenti:-
Scheda Calcolo: verrà visualizzato l'elenco di nodi che sono stati implementati per il cluster. È possibile scegliere il nome di un nodo per visualizzare ulteriori informazioni su di esso.
-
Scheda Resources (Risorse): verranno visualizzate tutte le risorse Kubernetes che sono state implementate per impostazione predefinita in un cluster Amazon EKS. Seleziona qualsiasi tipo di risorsa nella console per avere ulteriori informazioni in merito.
-
Fase 5. Eliminazione delle risorse
Dopo aver creato il cluster e i nodi per questo tutorial, devi eliminare le risorse create. Per eseguire altre operazioni con questo cluster prima di eliminare le risorse, consultare Passaggi successivi.
Eliminazione delle risorse create in questa guida
-
Eliminare qualsiasi gruppo di nodi o i profili Fargate creati.
-
Apri la console Amazon EKS all'indirizzo https://console.aws.amazon.com/eks/home#/clusters
. -
Nel pannello di navigazione a sinistra, seleziona Cluster. Nell'elenco di cluster, scegliere
my-cluster
. -
Scegli la scheda Calcolo.
-
Se hai creato un gruppo di nodi, cegli il gruppo di nodi
quindi seleziona Delete (Elimina). Immetteremy-nodegroup
, quindi scegliere Delete (Elimina).my-nodegroup
-
Per ogni profilo Fargate creato, selezionarlo e poi scegliere Delete (Elimina). Immettere il nome del profilo, quindi selezionare Delete (Elimina).
Nota
Quando si elimina un secondo profilo Fargate, potrebbe essere necessario attendere il completamento dell'eliminazione del primo.
-
Non continuare fino a quando il gruppo di nodi o i profili Fargate eliminati.
-
-
Elimina il cluster.
-
Nel pannello di navigazione a sinistra, seleziona Cluster. Nell'elenco di cluster, scegliere
my-cluster
. -
Scegli Delete cluster (Elimina cluster).
-
Immetti
, quindi scegli Elimina. Non continuare fino a quando il cluster non sarà stato eliminato.my-cluster
-
-
Elimina lo AWS CloudFormation stack VPC che hai creato.
-
Apri la AWS CloudFormation console all'indirizzo https://console.aws.amazon.com/cloudformation.
-
Scegli lo stack
, quindi seleziona Delete (Elimina).my-eks-vpc-stack
-
Nella finestra di dialogo di
my-eks-vpc-stack
conferma dell'eliminazione, scegli Elimina pila.
-
-
Elimina i ruoli IAM creati.
-
Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel pannello di navigazione a sinistra, seleziona Ruoli.
-
Seleziona ogni ruolo che hai creato dall'elenco (
Scegliere Delete (Elimina), inserire il testo di conferma richiesto, quindi scegliere Delete (Elimina).myAmazoneksClusterRole, oltre a AmazoneKS
o myAmazoneKS). FargatePodExecutionRole NodeRole
-
Passaggi successivi
I seguenti argomenti della documentazione consentono di estendere la funzionalità del cluster.
Il principale IAM in grado di creare il cluster è l'unico principale che può effettuare chiamate al server API Kubernetes tramite
kubectl
o la AWS Management Console. Se si desidera che altri principali IAM abbiano accesso al cluster, è necessario aggiungerli. Per ulteriori informazioni, consulta Concedi l'accesso alle Kubernetes API e Autorizzazioni richieste.Implementare un'applicazione di esempio al cluster.
Prima di implementare un cluster da utilizzare in produzione, ti consigliamo di acquisire familiarità con tutte le impostazioni di cluster e nodi. Alcune impostazioni, come l'abilitazione dell'accesso SSH ai nodi Amazon EC2, devono essere definite al momento della creazione del cluster.
Per aumentare la sicurezza del cluster, configura il plugin Amazon VPC Container Networking Interface per utilizzare i ruoli IAM per gli account di servizio.