Un cluster utente Cluster Anthos on AWS (GKE on AWS) ospita i carichi di lavoro Kubernetes. Questo argomento mostra come creare un cluster utente di base. Se vuoi configurare ulteriormente un cluster utente, consulta Creazione di un cluster utente personalizzato.
Esegui il provisioning di un cluster Anthos clusters on AWS con le risorse AWSCluster
e AWSNodePool
personalizzate.
Prima di iniziare
Per creare un cluster utente, devi prima installare un servizio di gestione.
Per connetterti ai tuoi cluster Anthos su risorse AWS, segui questi passaggi. Seleziona se hai già un VPC AWS (o connessione diretta al tuo VPC) o hai creato un VPC dedicato durante la creazione del servizio di gestione.
VPC esistente
Se hai una connessione diretta o VPN a un VPC esistente, ometti la riga env HTTP_PROXY=http://localhost:8118
dai comandi in questo argomento.
VPC dedicato
Quando crei un servizio di gestione in un VPC dedicato, Cluster Anthos on AWS include un host bastion in una subnet pubblica.
Per collegarti al tuo servizio di gestione, procedi nel seguente modo:
Passa alla directory con la configurazione di Cluster Anthos on AWS. Hai creato questa directory durante l'installazione del servizio di gestione.
cd anthos-aws
Per aprire il tunnel, esegui lo script
bastion-tunnel.sh
. Il tunnel avanza fino alocalhost:8118
.Per aprire un tunnel verso il bastion host, esegui il comando seguente:
./bastion-tunnel.sh -N
I messaggi provenienti dal tunnel SSH vengono visualizzati in questa finestra. Quando è tutto pronto per chiudere la connessione, interrompi il processo premendo Ctrl+C o chiudendo la finestra.
Apri un nuovo terminale e passa alla directory
anthos-aws
.cd anthos-aws
Verifica di riuscire a connetterti al cluster con
kubectl
.env HTTPS_PROXY=http://localhost:8118 \ kubectl cluster-info
L'output include l'URL del server API del servizio di gestione.
Selezione delle dimensioni dell'istanza del piano di controllo
I cluster Anthos su AWS non supportano il ridimensionamento delle istanze del piano di controllo. Prima di creare il cluster utente, seleziona le dimensioni dell'istanza dei piani di controllo. Le dimensioni del piano di controllo dipendono dal numero di nodi nel cluster. La seguente tabella contiene le dimensioni delle istanze del piano di controllo consigliate per varie dimensioni del cluster.
Dimensione cluster (nodi) | Tipo di istanza del piano di controllo |
---|---|
1-10 | M5.large |
11-100 | M5.xlarge |
101-200 | m5,2xlarge |
Creazione di un cluster utente
In questo esempio viene utilizzato terraform
per generare una configurazione
per creare un cluster di base. Quindi, applichi la configurazione con kubectl apply
.
Apri il terminale e, se necessario, connettiti al bastion host.
Cambia la directory nella cartella che hai creato durante l'installazione del servizio di gestione.
Usa Terraform per generare un manifest che configura un cluster di esempio e salvalo in un file YAML. Scegli la versione di Terraform, quindi esegui questi comandi:
Terraform 0,12, 0,13
terraform output cluster_example > cluster-0.yaml
Terraform 0.14.3 e versioni successive
terraform output -raw cluster_example > cluster-0.yaml
Per ulteriori informazioni sui contenuti di questo file, consulta la documentazione di
AWSCluster
eAWSNodePool
.Apri il file in un editor di testo e, se necessario, modificalo. Per impostazione predefinita, i cluster Anthos su AWS creano pool di nodi in ogni zona di disponibilità specificata in
anthos-gke.yaml
. Puoi modificare le dimensioni e il numero di pool di nodi in modo che corrispondano al cluster desiderato. Puoi anche apportare ulteriori modifiche alla configurazione. Ad esempio, potresti cambiare i tipi di istanza dei tuoi cluster Anthos sui nodi AWS, e abilitare anche logging e monitoraggio sui nodi del piano di controllo.Applica il file al servizio di gestione.
env HTTPS_PROXY=http://localhost:8118 \ kubectl apply -f cluster-0.yaml
Crea una configurazione kube
All'avvio del cluster utente, puoi creare un contesto kubeconfig
per il tuo nuovo cluster utente. Puoi utilizzare il contesto per eseguire l'autenticazione a un cluster
utente o di gestione.
Utilizza
anthos-gke aws clusters get-credentials
per generare unkubeconfig
per il cluster utente in~/.kube/config
.env HTTPS_PROXY=http://localhost:8118 \ anthos-gke aws clusters get-credentials CLUSTER_NAME
Sostituisci CLUSTER_NAME con il nome del tuo cluster. Ad esempio,
cluster-0
.Utilizza
kubectl
per l'autenticazione nel tuo nuovo cluster utente.env HTTPS_PROXY=http://localhost:8118 \ kubectl cluster-info
Se il tuo cluster è pronto, l'output include gli URL per i componenti Kubernetes all'interno del cluster.
Visualizza lo stato del cluster
Il servizio di gestione esegue il provisioning di risorse AWS quando applichi un elemento AWSCluster
o AWSNodePool
.
Dalla directory
anthos-aws
, utilizzaanthos-gke
per cambiare il contesto del servizio di gestione.cd anthos-aws anthos-gke aws management get-credentials
Per elencare i cluster, utilizza
kubectl get AWSClusters
.env HTTPS_PROXY=http://localhost:8118 \ kubectl get AWSClusters
L'output include nome, stato, età, versione ed endpoint di ogni cluster.
Ad esempio, il seguente output include solo un elemento
AWSCluster
denominatocluster-0
:NAME STATE AGE VERSION ENDPOINT cluster-0 Provisioning 2m41s 1.25.5-gke.2100 gke-xyz.elb.us-east-1.amazonaws.com
Visualizza gli eventi del cluster
Per visualizzare gli eventi Kubernetes recenti dal tuo cluster utente, utilizza kubectl get events
.
Dalla directory
anthos-aws
, utilizzaanthos-gke
per cambiare il contesto del servizio di gestione.cd anthos-aws anthos-gke aws management get-credentials
Esegui
kubectl get events
.env HTTPS_PROXY=http://localhost:8118 \ kubectl get events
L'output include informazioni, avvisi ed errori relativi al tuo servizio di gestione.
Eliminazione di un cluster utente
Per eliminare un cluster utente, procedi nel seguente modo:
Dalla directory
anthos-aws
, utilizzaanthos-gke
per cambiare il contesto del servizio di gestione.cd anthos-aws anthos-gke aws management get-credentials
Utilizza
kubectl delete
per eliminare il manifest contenente i tuoi cluster utente.env HTTPS_PROXY=http://localhost:8118 \ kubectl delete -f CLUSTER_FILE
Sostituisci CLUSTER_FILE con il nome del manifest contenente gli oggetti AWScluster e AWSNodePool. Ad esempio,
cluster-0.yaml
.
Eliminazione di tutti i cluster utente
Per eliminare tutti i cluster utente, procedi come segue:
Dalla directory
anthos-aws
, utilizzaanthos-gke
per cambiare il contesto del servizio di gestione.cd anthos-aws anthos-gke aws management get-credentials
Utilizza
kubectl delete
per eliminare AWSNodePools e AWSClusters dal servizio di gestione.env HTTPS_PROXY=http://localhost:8118 \ kubectl delete AWSNodePool --all env HTTPS_PROXY=http://localhost:8118 \ kubectl delete AWSCluster --all
Per ulteriori informazioni, consulta la pagina Disinstallare i cluster Anthos su AWS.
Passaggi successivi
Avvia il tuo primo carico di lavoro su Cluster Anthos on AWS.
Configurare il provider di identità con il servizio Anthos Identity Service.
Crea un cluster utente personalizzato con impostazioni diverse.
Configura il networking AWS per il bilanciamento del carico dei carichi di lavoro.
Leggi le specifiche per le definizioni di risorse personalizzate AWSCluster e AWSNodePool.