Zelfstudie: Een toepassing implementeren in Azure Kubernetes Service (AKS)
Kubernetes biedt een gedistribueerd platform voor toepassingen in containers. U bouwt en implementeert uw eigen toepassingen en services in een Kubernetes-cluster en laat het cluster de beschikbaarheid en connectiviteit beheren.
In deze zelfstudie implementeert u deel vier van zeven een voorbeeldtoepassing in een Kubernetes-cluster. U leert het volgende:
- Werk een Kubernetes-manifestbestand bij.
- Voer een toepassing uit in Kubernetes.
- Test de toepassing.
Fooi
Met AKS kunt u de volgende benaderingen voor configuratiebeheer gebruiken:
GitOps: hiermee worden declaraties van de status van uw cluster automatisch toegepast op het cluster. Zie de vereisten voor Azure Kubernetes Service-clusters in de zelfstudie GitOps met Flux v2 voor meer informatie over het gebruik van GitOps voor het implementeren van een toepassing met een AKS-cluster.
DevOps: Hiermee kunt u bouwen, testen en implementeren met CI (continue integratie) en continue levering (CD). Zie Bouwen en implementeren in AKS met Azure Pipelines of GitHub Actions voor implementatie in Kubernetes voor voorbeelden van het gebruik van DevOps voor het implementeren van een toepassing met een AKS-cluster.
Voordat u begint
In eerdere zelfstudies hebt u een toepassing verpakt in een containerinstallatiekopieën, de installatiekopieën geüpload naar Azure Container Registry en een Kubernetes-cluster gemaakt. Om deze zelfstudie te voltooien hebt u het vooraf gemaakte Kubernetes-manifestbestand aks-store-quickstart.yaml
nodig. Dit downloaden van bestanden is opgenomen in de broncode van de toepassing in een vorige zelfstudie. Zorg ervoor dat u de opslagplaats hebt gekloond en mappen hebt gewijzigd in de gekloonde opslagplaats. Als u deze stappen nog niet hebt voltooid en u deze wilt volgen, begint u met zelfstudie 1: De toepassing voorbereiden voor AKS.
Voor deze zelfstudie is Azure CLI versie 2.34.1 of hoger vereist. Voer az --version
uit om de versie te bekijken. Als u Azure CLI 2.0 wilt installeren of upgraden, raadpleegt u Azure CLI 2.0 installeren.
Het manifestbestand bijwerken
In deze zelfstudies slaat uw Azure Container Registry-exemplaar (ACR) de containerinstallatiekopieën voor de voorbeeldtoepassing op. Als u de toepassing wilt implementeren, moet u de namen van de installatiekopieën in het Kubernetes-manifestbestand bijwerken om de naam van uw ACR-aanmeldingsserver op te nemen.
Haal het adres van uw aanmeldingsserver op met behulp van de
az acr list
opdracht en voer een query uit voor uw aanmeldingsserver.az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Zorg ervoor dat u zich in de gekloonde map aks-store-demo bevindt en open het manifestbestand met een teksteditor, zoals
vi
:vi aks-store-quickstart.yaml
Werk de
image
eigenschap voor de containers bij door ghcr.io/azure-samples te vervangen door de naam van de ACR-aanmeldingsserver.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 ...
Sla het bestand op en sluit het bestand. In
vi
gebruikt u:wq
.
De toepassing implementeren
Implementeer de toepassing met behulp van de
kubectl apply
opdracht, waarmee het manifestbestand wordt geparseerd en de gedefinieerde Kubernetes-objecten worden gemaakt.kubectl apply -f aks-store-quickstart.yaml
In de volgende voorbeelduitvoer ziet u dat de resources zijn gemaakt in het AKS-cluster:
deployment.apps/rabbitmq 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 created
De toepassing testen
Wanneer de toepassing wordt uitgevoerd, maakt een Kubernetes-service de front-end van de toepassing beschikbaar op internet. Dit proces kan enkele minuten duren.
Bewaak de voortgang met behulp van de
kubectl get service
opdracht met het--watch
argument.kubectl get service store-front --watch
In eerste instantie wordt de
EXTERNAL-IP
service voor de store-front weergegeven als in behandeling.store-front LoadBalancer 10.0.34.242 <pending> 80:30676/TCP 5s
Wanneer het
EXTERNAL-IP
adres in behandeling is in een echt openbaar IP-adres, gebruiktCTRL-C
u dit om hetkubectl
controleproces te stoppen.In de volgende voorbeelduitvoer ziet u een geldig openbaar IP-adres dat aan de service is toegewezen:
store-front LoadBalancer 10.0.34.242 52.179.23.131 80:30676/TCP 67s
Bekijk de toepassing in actie door een webbrowser te openen naar het externe IP-adres van uw service.
Als de toepassing niet wordt geladen, is het mogelijk een autorisatieprobleem met uw installatiekopieënregister. Als u de status van uw containers wilt bekijken, gebruikt u de opdracht kubectl get pods
. Als u de containerinstallatiekopieën niet kunt ophalen, raadpleegt u Verifiëren met Azure Container Registry vanuit Azure Kubernetes Service.
Volgende stappen
In deze zelfstudie hebt u een Azure-voorbeeldtoepassing geïmplementeerd in een Kubernetes-cluster in AKS. U hebt geleerd hoe u:
- Werk een Kubernetes-manifestbestand bij.
- Voer een toepassing uit in Kubernetes.
- Test de toepassing.
In de volgende zelfstudie leert u hoe u PaaS-services gebruikt voor stateful workloads in Kubernetes.