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:

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.

  1. 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
    
  2. 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
    
  3. 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
    ...
    
  4. 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.

  1. 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
    
  2. Wanneer het EXTERNAL-IP adres in behandeling is in een echt openbaar IP-adres, gebruikt CTRL-C u dit om het kubectl 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
    
  3. 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.