Esercizio - Creare un cluster del servizio Azure Kubernetes

Completato

In questo esercizio si creerà un cluster del servizio Azure Kubernetes che usa diversi nodi per soddisfare la richiesta dei molti clienti che usano il servizio. Si decide di usare l'architettura con singolo piano di controllo e più nodi, perché rappresenta il modo migliore per creare e gestire le risorse del carico di lavoro.

Il servizio Azure Kubernetes supporta sia pool di nodi Linux che Windows tramite il portale o l'interfaccia della riga di comando di Azure. Tuttavia, se si usano pool di nodi Windows, è necessario creare il cluster con prerequisiti e comandi aggiuntivi. Selezionare un sistema operativo in base al tipo di pool di nodi da aggiungere.

Importante

Per eseguire questo esercizio è necessario disporre di una propria sottoscrizione di Azure e questo potrebbe comportare dei costi. Se non hai ancora una sottoscrizione di Azure, crea un account gratuito prima di iniziare.

  1. Accedere ad Azure Cloud Shell con l'account in cui si vogliono distribuire le risorse.

    Importante

    Tutti gli script verranno eseguiti con Bash, quindi se non si è ancora creata un'istanza di Cloud Shell, selezionare Bash come shell in esecuzione.

  2. 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=eastus
    

    Aggiornare la variabile LOCATION con l'area più vicina. In questo esempio viene usato : eastus.

  3. Eseguire il comando az group create per creare un gruppo di risorse. Distribuire tutte le risorse in questo nuovo gruppo di risorse.

    az group create --name=$RESOURCE_GROUP --location=$LOCATION
    
  4. Eseguire il comando az aks create per creare un cluster del servizio Azure Kubernetes.

    az aks create \
        --resource-group $RESOURCE_GROUP \
        --name $CLUSTER_NAME \
        --node-count 2 \
        --generate-ssh-keys \
        --node-vm-size Standard_B2s \
        --network-plugin azure
    

    Il comando precedente crea un nuovo cluster del servizio Azure Kubernetes denominato aks-contoso-video all'interno del gruppo di risorse rg-contoso-video. Il cluster ha due nodi definiti dal parametro --node-count. In questo esercizio vengono usati solo due nodi per tenere conto dei costi in questo esercizio. Il parametro --node-vm-size configura i nodi del cluster come macchine virtuali Standard_B2s. Questi nodi fanno parte della modalità sistema.

    Importante

    Le macchine virtuali B2s Standard sono necessarie per creare pool di nodi, ma non disponibili nelle sottoscrizioni di livello gratuito. Se si ricevono limiti, è necessario eseguire l'aggiornamento a un aggiornamento Standard.

  5. Eseguire il comando az aks nodepool add per 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_B2s
    

    Il comando aggiunge un nuovo pool di nodi (modalità Utente) a un cluster del servizio Azure Kubernetes esistente (creato nel comando precedente). Questo nuovo pool di nodi viene usato per ospitare applicazioni e carichi di lavoro, a differenza del pool di nodi di sistema .

  1. Collegare il cluster Kubernetes a kubectl eseguendo il comando seguente in Cloud Shell.

    az aks get-credentials --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP
    

    Questo 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.

  2. Eseguire il comando kubectl get nodes per verificare che sia possibile connettersi al cluster e confermare la relativa configurazione.

    kubectl get nodes
    

    L'output dovrebbe elencare quattro nodi disponibili per due pool di nodi.

NAME                                STATUS   ROLES   AGE    VERSION
aks-nodepool1-21895026-vmss000000   Ready    agent   245s   v1.23.12
aks-nodepool1-21895026-vmss000001   Ready    agent   245s   v1.23.12
aks-userpool-21895026-vmss000000    Ready    agent   105s   v1.23.12
aks-userpool-21895026-vmss000001    Ready    agent   105s   v1.23.12