Självstudie: Distribuera ett Azure Kubernetes Service-kluster (AKS)

Kubernetes tillhandahåller en distribuerad plattform för containerbaserade program. Med AKS kan du snabbt skapa ett produktionsklart Kubernetes-kluster. I del tre av sju i den här självstudien distribuerar vi ett Kubernetes-kluster i AKS. Lär dig att:

  • Distribuera ett Kubernetes AKS-kluster som kan autentisera till ett Azure-containerregister
  • Installera Kubernetes CLI (kubectl)
  • Konfigurera kubectl för anslutning till ditt AKS-kluster

I senare självstudier distribueras Azure Vote-programmet till klustret, skalas och uppdateras.

Innan du börjar

I tidigare självstudier skapades en behållaravbildning som sedan överfördes till en Azure Container Registry-instans. Om du inte har utfört de här stegen och vill följa med så kan du börja med Självstudie 1 – Skapa containeravbildningar.

Den här självstudien kräver att du kör Azure CLI version 2.0.53 eller senare. Kör az --version för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.

Skapa ett Kubernetes-kluster

AKS-kluster kan använda kubernetes rollbaserad åtkomstkontroll (Kubernetes RBAC). Med dessa kontroller kan du definiera åtkomst till resurser baserat på roller som är tilldelade till användare. Du kan kombinera behörigheter om en användare har tilldelats flera roller, och behörigheter kan begränsas till en enda namnrymd eller tillämpas på hela klustret. Som standard aktiverar Azure CLI automatiskt Kubernetes RBAC när du skapar ett AKS-kluster.

Skapa ett AKS-kluster med az aks create. I följande exempel skapas ett kluster med namnet myAKSCluster i resursgruppen med namnet myResourceGroup. Den här resursgruppen skapades i föregående självstudie i regionen eastus. I följande exempel anges inte någon region, så AKS-klustret skapas också i regionen eastus. Mer information finns i Kvoter, storleksbegränsningar för virtuella datorer och regionstillgänglighet i Azure Kubernetes Service (AKS) för mer information om resursgränser och regionstillgänglighet för AKS.

Om du vill tillåta att ett AKS-kluster interagerar med andra Azure-resurser skapas en klusteridentitet automatiskt, eftersom du inte angav någon. Här beviljas den här klusteridentiteten behörighet att hämta avbildningar från den Azure Container Registry instans (ACR) som du skapade i föregående självstudie. För att kunna köra kommandot måste du ha rollen Ägare eller Azure-kontoadministratör i Azure-prenumerationen.

az aks create \
    --resource-group myResourceGroup \
    --name myAKSCluster \
    --node-count 2 \
    --generate-ssh-keys \
    --attach-acr <acrName>

För att undvika att behöva rollen Ägare eller Azure-kontoadministratör kan du också manuellt konfigurera ett huvudnamn för tjänsten för att hämta avbildningar från ACR. Mer information finns i ACR-autentisering med tjänstens huvudnamn eller Autentisera från Kubernetes med en pull-hemlighet. Du kan också använda en hanterad identitet i stället för ett huvudnamn för tjänsten för enklare hantering.

Efter några minuter slutförs distributionen och JSON-formaterad information om AKS-distributionen returneras.

Anteckning

För att säkerställa att klustret fungerar på ett tillförlitligt sätt bör du köra minst 2 (två) noder.

Installera Kubernetes CLI

När du ska ansluta till Kubernetes-klustret från din lokala dator använder du kubectl, Kubernetes kommandoradsklient.

Om du använder Azure Cloud Shell är kubectl redan installerat. Du kan även installera det lokalt med hjälp av kommandot az aks install-cli:

az aks install-cli

Ansluta till klustret med kubectl

För att konfigurera kubectl till att ansluta till ditt Kubernetes-kluster använder du kommandot az aks get-credentials. I följande exempel hämtas autentiseringsuppgifterna för AKS-klustret med namn myAKSCluster i myResourceGroup:

az aks get-credentials --resource-group myResourceGroup --name myAKSCluster

Kontrollera anslutningen till klustret genom att köra kommandot kubectl get nodes för att returnera en lista över klusternoderna:

kubectl get nodes

Följande exempelutdata visar listan över klusternoder.

$ kubectl get nodes

NAME                                STATUS   ROLES   AGE     VERSION
aks-nodepool1-37463671-vmss000000   Ready    agent   2m37s   v1.18.10
aks-nodepool1-37463671-vmss000001   Ready    agent   2m28s   v1.18.10

Nästa steg

I den här självstudiekursen distribuerade du ett Kubernetes-kluster i AKS och konfigurerade kubectl för anslutning till klustret. Du har lärt dig att:

  • Distribuera ett Kubernetes AKS-kluster som kan autentisera till ett Azure-containerregister
  • Installera Kubernetes CLI (kubectl)
  • Konfigurera kubectl för anslutning till ditt AKS-kluster

Gå vidare till nästa självstudie och lär dig hur du distribuerar ett program i klustret.