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.

Tip

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. U hebt het vooraf gemaakte aks-store-quickstart.yaml Kubernetes-manifestbestand nodig om deze zelfstudie te voltooien. Dit bestand is gedownload in de broncode van de toepassing uit zelfstudie 1: De toepassing voorbereiden voor AKS.

Voor deze zelfstudie is Azure CLI versie 2.0.53 of hoger vereist. Controleer uw versie met az --version. Zie Azure CLI installeren als u CLI wilt installeren of upgraden.

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 vervolgens 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 uitvoeren

  1. 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
    
  2. Controleer of de implementatie is geslaagd door de pods te bekijken met kubectl

    kubectl get pods
    

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.

Opdrachtregel

  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.

    Schermopname van de AKS Store-voorbeeldtoepassing.

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.

Azure Portal

Navigeer naar azure Portal om uw implementatiegegevens te vinden.

  1. Open uw resourcegroep in Azure Portal

  2. Navigeer naar de Kubernetes-service voor uw cluster

  3. Selecteer Services and Ingress onder Kubernetes Resources

  4. Kopieer het externe IP-adres dat wordt weergegeven in de kolom voor store-front

  5. Plak het IP-adres in uw browser en ga naar uw winkelpagina

    Schermopname van de AKS Store-voorbeeldtoepassing.

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.