Självstudie: Distribuera program i AKS som aktiveras av Azure Arc
Gäller för: AKS på Azure Stack HCI 22H2, AKS på Windows Server
Du kan skapa och distribuera egna appar och tjänster i ett Kubernetes-kluster när du använder Azure Kubernetes Service som aktiveras av Azure Arc. Kubernetes tillhandahåller en distribuerad plattform för containerbaserade appar. Du kan låta klustret hantera tillgängligheten och anslutningen.
Den här självstudien, del fyra av sju, beskriver hur du kan distribuera ett exempelprogram till ett Kubernetes-kluster i AKS. Du lär dig följande:
- Uppdatera en Kubernetes-manifestfil
- Distribuera ett program i Kubernetes
- Testa programmet
Senare självstudier beskriver hur du skalar och uppdaterar det här programmet.
Den här snabbstarten förutsätter grundläggande kunskaper om Kubernetes-begrepp.
Innan du börjar
Tidigare självstudier beskrev hur du paketerar ett program i en containeravbildning och sedan laddar upp avbildningen till Azure Container Registry och skapar ett Kubernetes-kluster.
För att slutföra den här självstudien behöver du den i förväg skapade Kubernetes-manifestfilen azure-vote-all-in-one-redis.yaml . Den här filen laddades ned med källkoden för programmet i en tidigare självstudie. Kontrollera att du klonade lagringsplatsen och att du har ändrat kataloger till den klonade lagringsplatsen. Om du inte har gjort de här stegen börjar du med Självstudie 1 – Skapa containeravbildningar.
Den här självstudien kräver Azure CLI version 2.0.53 eller senare. Kör az --version
för att hitta versionen. Om du behöver installera eller uppgradera Azure CLI läser du Installera Azure CLI.
Uppdatera manifestfilen
I de här självstudierna lagrar en Azure Container Registry-instans containeravbildningen för exempelprogrammet. Om du vill distribuera programmet måste du uppdatera avbildningsnamnet i Kubernetes-manifestfilen så att namnet på containerregistrets inloggningsserver inkluderas.
Hämta namnet på Azure Container Registry-inloggningsservern med kommandot az acr list på följande sätt:
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Exempelmanifestfilen från GitHub-lagringsplatsen som du klonade i den första självstudien använder inloggningsservernamnet microsoft. Kontrollera att du är i den klonade katalogen azure-voting-app-redis och öppna sedan manifestfilen med en textredigerare, till exempel Anteckningar:
notepad azure-vote-all-in-one-redis.yaml
Ersätt microsoft med namnet på din Azure Container Registry inloggningsserver. Avbildningsnamnet finns på rad 60 i manifestfilen. I följande exempel visas standardnamnet för avbildning:
containers:
- name: azure-vote-front
image: mcr.microsoft.com/azuredocs/azure-vote-front:v1
Ange ditt eget Azure Container Registry inloggningsservernamn så att manifestfilen ser ut som i följande exempel:
containers:
- name: azure-vote-front
image: <acrName>.azurecr.io/azure-vote-front:v1
Spara och stäng filen.
Distribuera programmet
För att distribuera ditt program använder du kommandot kubectl apply. Det här kommandot parsar manifestfilen och skapar de definierade Kubernetes-objekten. Ange exempelmanifestfilen enligt vad som visas i följande exempel:
kubectl apply -f azure-vote-all-in-one-redis.yaml
Följande exempelutdata visar de resurser som har skapats i Kubernetes-klustret:
$ kubectl apply -f azure-vote-all-in-one-redis.yaml
deployment "azure-vote-back" created
service "azure-vote-back" created
deployment "azure-vote-front" created
service "azure-vote-front" created
Testa programmet
När programmet körs exponerar Kubernetes-tjänsten programmets klientdel för Internet. Den här processen kan ta ett par minuter att slutföra.
Om du vill övervaka förloppet använder du kommandot kubectl get service med --watch
argumentet :
kubectl get service azure-vote-front --watch
Inledningsvis visas EXTERNAL-IP för tjänsten azure-vote-front som väntande:
azure-vote-front LoadBalancer 10.0.34.242 <pending> 80:30676/TCP 5s
När EXTERNAL-IP-adressen ändras från väntande till en faktisk offentlig IP-adress använder du CTRL-C för att stoppa kubectl
watch processen. Följande exempelutdata visar en giltig offentlig IP-adress som har tilldelats tjänsten:
azure-vote-front LoadBalancer 10.0.34.242 52.179.23.131 80:30676/TCP 67s
Om du vill se hur programmet fungerar i praktiken så öppnar du en webbläsare till den externa IP-adressen för din tjänst:
Om det inte gick att läsa in programmet så kan det bero på ett auktoriseringsproblem med ditt avbildningsregister. Du kan visa statusen för dina containrar med hjälp av kommandot kubectl get pods
. Om containeravbildningarna inte kan hämtas läser du Autentisera med Azure Container Registry från Azure Kubernetes Service.
Nästa steg
I den här självstudien distribuerade du ett Exempelprogram för Azure Vote till ett Kubernetes-kluster i AKS som aktiverats av Arc. Du har lärt dig att:
- Uppdatera en Kubernetes-manifestfil
- Köra ett program i Kubernetes
- Testa programmet
Gå vidare till nästa självstudie om du vill lära dig hur du skalar ett Kubernetes-program och den underliggande Kubernetes-infrastrukturen.
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för