Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kubernetes tillhandahåller en distribuerad plattform för containerbaserade program. Du skapar och distribuerar dina egna program och tjänster till ett Kubernetes-kluster och låter klustret hantera tillgängligheten och anslutningen.
I den här självstudien distribuerar du ett exempelprogram till ett Kubernetes-kluster. Du lär dig att:
- Uppdatera en Kubernetes-manifestfil.
- Kör ett program i Kubernetes.
- Testa programmet.
Tips
Med AKS kan du använda följande metoder för konfigurationshantering:
GitOps: Gör att deklarationer av klustrets tillstånd kan tillämpas automatiskt på klustret. För att lära dig hur du använder GitOps för att distribuera en applikation med ett AKS-kluster, se förutsättningarna för Azure Kubernetes Service-kluster i självstudiekursen GitOps med Flux v2.
DevOps: Gör att du kan skapa, testa och distribuera med kontinuerlig integrering (CI) och kontinuerlig leverans (CD). Exempel på hur du använder DevOps för att distribuera ett program med ett AKS-kluster finns i Skapa och distribuera till AKS med Azure Pipelines eller GitHub Actions för distribution till Kubernetes.
Innan du börjar
I tidigare självstudier paketerade du ett program i en containeravbildning, laddade upp avbildningen till Azure Container Registry och skapade ett Kubernetes-kluster. För att slutföra den här självstudien behöver du den förskapade aks-store-quickstart.yaml Kubernetes-manifestfilen. Den här filen laddades ned i programmets källkod från Självstudie 1 – Förbereda programmet för AKS.
Den här handledningen kräver Azure CLI version 2.0.53 eller senare. Kontrollera din version med az --version. Information om hur du installerar eller uppgraderar finns i Installera Azure CLI.
Uppdatera manifestfilen
I de här handledningarna lagrar din Azure Container Registry-instans (ACR) containerbilderna för exempelprogrammet. Om du vill distribuera applikationen måste du uppdatera namnen på bilderna i Kubernetes-manifestfilen så att de inkluderar ditt ACR-inloggningsservernamn.
Hämta din inloggningsserveradress med hjälp av
az acr listkommandot och gör en fråga för att hitta din inloggningsserver.az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output tableKontrollera att du är i den klonade katalogen aks-store-demo och öppna
aks-store-quickstart.yamlsedan manifestfilen med en textredigerare.imageUppdatera egenskapen för containrarna genom att ersätta ghcr.io/azure-samples med namnet på ACR-inloggningsservern.containers: ... - name: order-service image: <acrName>.azurecr.io/aks-store-demo/order-service:latest ... - name: product-service image: <acrName>.azurecr.io/aks-store-demo/product-service:latest ... - name: store-front image: <acrName>.azurecr.io/aks-store-demo/store-front:latest ...Spara och stäng filen.
Kör applikationen
Distribuera programmet med kommandot
kubectl applysom parsar manifestfilen och skapar de definierade Kubernetes-objekten.kubectl apply -f aks-store-quickstart.yamlFöljande exempelutdata visar de resurser som skapats på AKS-klustret:
statefulset.apps/rabbitmq created configmap/rabbitmq-enabled-plugins created service/rabbitmq created deployment.apps/order-service created service/order-service created deployment.apps/product-service created service/product-service created deployment.apps/store-front created service/store-front createdKontrollera att distributionen lyckas genom att visa poddarna med
kubectl get podskommandot .kubectl get pods
Testa programmet
När programmet körs så exponerar en Kubernetes-tjänst programmets klientdel mot Internet. Den här processen kan ta ett par minuter att slutföra.
Kommandoradgränssnitt
Övervaka förloppet med kommandot
kubectl get servicemed--watchargumentet .kubectl get service store-front --watchTill en början visas
EXTERNAL-IPför tjänstenstore-frontsom<pending>:store-front LoadBalancer 10.0.34.242 <pending> 80:30676/TCP 5sEXTERNAL-IPNär adressen ändras från<pending>till en offentlig IP-adress använder duCTRL-Cför att stoppakubectlklockprocessen.Följande exempelutdata visar en giltig offentlig IP-adress som har tilldelats tjänsten:
store-front LoadBalancer 10.0.34.242 52.179.23.131 80:30676/TCP 67sVisa programmet i praktiken genom att öppna en webbläsare och navigera till tjänstens externa IP-adress:
http://<external-ip>.
Om applikationen inte laddas, kan det vara ett problem med behörighet för ditt bildregister. Du kan visa statusen för dina containrar med hjälp av kommandot kubectl get pods. Om du inte kan hämta containeravbildningarna kan du läsa Autentisera med Azure Container Registry från Azure Kubernetes Service.
Azure Portal
Gå till Azure Portal för att hitta distributionsinformationen.
Gå till din AKS-klustertjänst.
På tjänstmenyn går du till Kubernetes-resurser och väljer Tjänster och ingresser.
Kopiera den externa IP-adress som visas i kolumnen för
store-fronttjänsten.Klistra in IP-adressen i webbläsaren för att besöka butikssidan.
Rensa resurser
Eftersom du har verifierat programmets funktioner kan du nu ta bort klustret från programmet. Vi kommer driftsätta programmet igen i nästa handledning.
Stoppa och ta bort containerinstanserna och resurserna med kommandot
kubectl delete.kubectl delete -f aks-store-quickstart.yamlKontrollera att alla programpoddar har tagits bort med kommandot
kubectl get pods.kubectl get pods
Nästa steg
I den här självstudien distribuerade du ett Azure-exempelprogram till ett Kubernetes-kluster i AKS. Du har lärt dig att:
- Uppdatera en Kubernetes-manifestfil.
- Kör ett program i Kubernetes.
- Testa programmet.
I nästa handledning får du lära dig hur du använder PaaS-tjänster för arbetsbelastningar med tillstånd i Kubernetes.
Azure Kubernetes Service