Esercizio - Creare un cluster del servizio Azure Kubernetes
In questo esercizio creare un cluster del servizio Azure Kubernetes che usa diversi nodi per soddisfare la domanda di molti clienti che usano il servizio. AKS supporta i pool di nodi Linux e Windows tramite il portale di Azure o Azure CLI. Selezionare un sistema operativo in base al tipo di pool di nodi da aggiungere.
Importante
Per completare questo esercizio è necessaria una sottoscrizione di Azure propria e potrebbero essere applicati costi. Se non hai ancora una sottoscrizione di Azure, crea un account gratuito prima di iniziare.
Accedere ad Azure Cloud Shell per la sottoscrizione in cui si vogliono distribuire le risorse.
I comandi vengono eseguiti in Bash, quindi selezionare Bash come shell.
Creare variabili per i valori di configurazione che verranno riutilizzati in tutti gli esercizi.
export RESOURCE_GROUP=rg-contoso-video export CLUSTER_NAME=aks-contoso-video export LOCATION=eastusAggiorna la variabile
LOCATIONcon la regione più vicina. In questo esempio viene utilizzato:eastus.Eseguire il comando
az group createper creare un gruppo di risorse. Distribuire tutte le risorse in questo nuovo gruppo di risorse.az group create --name $RESOURCE_GROUP --location $LOCATIONEseguire il comando
az aks createper creare un cluster AKS.az aks create \ --resource-group $RESOURCE_GROUP \ --name $CLUSTER_NAME \ --node-count 2 \ --generate-ssh-keys \ --node-vm-size Standard_B2s \ --network-plugin azureIl comando crea un nuovo cluster AKS denominato
aks-contoso-videoall'interno del gruppo di risorserg-contoso-video. Il cluster ha due nodi definiti dal parametro--node-count. In questo esercizio vengono usati solo due nodi per considerazioni sui costi in questo esercizio. Il--node-vm-sizeparametro configura i nodi del cluster come macchine virtuali di dimensioni Standard_B2s. Questi nodi fanno parte della modalità sistema.Quando viene creato il cluster AKS, viene creato anche un secondo gruppo di risorse con un nome che inizia con
MC_. Questo gruppo di risorse contiene tutte le risorse necessarie per eseguire il cluster, ad esempio macchine virtuali, set di scalabilità di macchine virtuali e reti virtuali.Importante
Le macchine virtuali B2s Standard sono necessarie per creare pool di nodi, ma non disponibili nelle sottoscrizioni Free-Tier. Se si ricevono notifiche sui limiti, è necessario eseguire l'aggiornamento a un aggiornamento Standard.
Eseguire il comando
az aks nodepool addper aggiungere un altro pool di nodi che usa il sistema operativo Linux predefinito.az aks nodepool add \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --name userpool \ --node-count 2 \ --node-vm-size Standard_B2sIl comando aggiunge un nuovo pool di nodi (modalità utente) al cluster del servizio Azure Kubernetes creato nel comando precedente. Questo pool di nodi utente viene usato per ospitare applicazioni e carichi di lavoro, a differenza del pool di nodi di sistema.
Connettersi con kubectl
Connettersi al cluster con
kubectleseguendo il comando seguente in Cloud Shell.az aks get-credentials --name $CLUSTER_NAME --resource-group $RESOURCE_GROUPQuesto comando aggiungerà una voce al file
~/.kube/config, che contiene tutte le informazioni per accedere ai cluster. Kubectl consente di gestire più cluster da un'unica interfaccia della riga di comando.Eseguire il comando
kubectl get nodesper verificare che sia possibile connettersi al cluster e confermare la relativa configurazione.kubectl get nodesL'output dovrebbe elencare quattro nodi disponibili per due pool di nodi.
NAME STATUS ROLES AGE VERSION aks-nodepool1-12345678-vmss000000 Ready <none> 6m7s v1.33.7 aks-nodepool1-12345678-vmss000001 Ready <none> 6m8s v1.33.7 aks-userpool-98765432-vmss000000 Ready <none> 79s v1.33.7 aks-userpool-98765432-vmss000001 Ready <none> 87s v1.33.7I
nodepoolnodi sono il pool di nodi di sistema e iuserpoolnodi sono il pool di nodi utente. Il pool di nodi di sistema viene usato per eseguire i servizi cluster critici, mentre il pool di nodi utente viene usato per eseguire le applicazioni e i carichi di lavoro.