Gyakorlat – Alkalmazás üzembe helyezése egy Azure Kubernetes Service-fürtben

Befejeződött

Ebben a gyakorlatban a vállalat háttérbeli üzenetkezelési szolgáltatását fogja üzembe helyezni tesztalkalmazásként az Azure Kubernetes Service-ben (AKS). A szolgáltatás az előző gyakorlatban létrehozott Redis PaaS szolgáltatáshoz csatlakozik.

Feljegyzés

A szolgáltatás kódja elérhető a GitHub-adattárban.

Lista létrehozása a Redisben

Létre kell hoznia egy listát a Redisben, és fel kell töltenie néhány véletlenszerű elemet az adatok fogadó üzenetsorának szimulálásához. Az üzenetsor minden eleme olyasmit jelöl, amelyet a mikroszolgáltatás feldolgoz. Ebben a gyakorlatban statikus számú elemet fog hozzáadni. A gyakorlat későbbi részében a mikroszolgáltatást az üzenetsor elemeinek számára skálázza.

  1. Győződjön meg arról, hogy a Docker fut a számítógépen.

  2. Hozzon létre helyiLeg egy Redis-tárolót az Azure Cache for Redishez való csatlakozáshoz a docker run következő paranccsal:

    docker run -it --rm redis redis-cli -h $REDIS_HOST -a $REDIS_KEY
    

    A kimenetnek a következő példakimenethez hasonlóan kell kinéznie:

    redis-contoso-video.redis.cache.windows.net:6379>
    
  3. Hozzon létre egy listát, és töltse fel véletlenszerű elemekkel a lpush keda következő paranccsal:

    lpush keda Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eget interdum felis, ac ultricies nulla. Fusce vehicula mattis laoreet. Quisque facilisis bibendum dui, at scelerisque nulla hendrerit sed. Sed rutrum augue arcu, id maximus felis sollicitudin eget. Curabitur non libero rhoncus, pellentesque orci a, tincidunt sapien. Suspendisse laoreet vulputate sagittis. Vivamus ac magna lacus. Etiam sagittis facilisis dictum. Phasellus faucibus sagittis libero, ac semper lorem commodo in. Quisque tortor lorem, sollicitudin non odio sit amet, finibus molestie eros. Proin aliquam laoreet eros, sed dapibus tortor euismod quis. Maecenas sed viverra sem, at porta sapien. Sed sollicitudin arcu leo, vitae elementum
    
  4. Ellenőrizze a lista hosszát a llen keda következő paranccsal:

    llen keda
    
  5. Lépjen ki a Redis-rendszerhéjból a beírással exit.

Üzembehelyezési jegyzék létrehozása

Az alkalmazás üzembe helyezéséhez létre kell hoznia egy üzembehelyezési jegyzékfájlt. A jegyzékfájl segítségével meghatározhatja, hogy milyen típusú erőforrást szeretne üzembe helyezni, valamint a számítási feladathoz kapcsolódó részleteket.

A Kubernetes a tárolókat logikai struktúrákba, úgynevezett podokba csoportosítja, amelyek nem rendelkeznek intelligenciával. Az üzemelő példányok jelentik a hiányzó intelligenciát az alkalmazás létrehozásához.

  1. A Cloud Shellben hozzon létre egy jegyzékfájlt a Kubernetes-telepítéshez deployment.yaml a touch következő paranccsal:

    touch deployment.yaml
    
  2. Nyissa meg a Cloud Shell integrált szerkesztőjét a code . paranccsal.

  3. Nyissa meg a deployment.yaml fájlt, és illessze be a következő jegyzékkódba. Ügyeljen arra, hogy a Redis környezeti változóit cserélje le a saját értékeire.

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: contoso-microservice
    spec:
      replicas: 1                   # Tells K8S the number of containers to process the Redis list items
      selector:                     # Define the wrapping strategy
        matchLabels:                # Match all pods with the defined labels
          app: contoso-microservice # Labels follow the `name: value` template
      template:                     # Template of the pod inside the Deployment
        metadata:
          labels:
            app: contoso-microservice
        spec:
          containers:
            - image: mcr.microsoft.com/mslearn/samples/redis-client:latest
              name: contoso-microservice
              resources:
                requests:
                  cpu: 100m
                  memory: 128Mi
                limits:
                  cpu: 100m
                  memory: 128Mi
              env:
                - name: REDIS_HOST
                  value: "redis-contoso-video.redis.cache.windows.net" # *** REPLACE with your value ***
                - name: REDIS_PORT
                  value: "6379"                                        # *** REPLACE with your value ***
                - name: REDIS_LIST
                  value: "keda"                                        # *** REPLACE with your value ***
                - name: REDIS_KEY
                  value: "******************************************"  # *** REPLACE with your value ***
    
  4. Mentse a jegyzékfájlt (CTRL + S), és zárja be a szerkesztőt (CTRL + Q).

A jegyzékfájl alkalmazása

  1. Helyezze üzembe a jegyzékfájlt a fürtben a kubectl apply következő paranccsal:

    kubectl apply -f ./deployment.yaml
    

    A kimenetnek a következő példakimenethez hasonlóan kell kinéznie:

    deployment.apps/contoso-microservice created
    
  2. Ellenőrizze, hogy az üzembe helyezés sikeres volt-e a kubectl get deployment következő paranccsal:

    kubectl get deployment contoso-microservice
    

    A kimenetnek a következő példakimenethez hasonlóan kell kinéznie:

    NAME                   READY   UP-TO-DATE   AVAILABLE   AGE
    contoso-microservice   1/1     1            0           16s
    
  3. Ellenőrizze, hogy a pod fut-e a kubectl get pods következő paranccsal:

    kubectl get pods
    

    A kimenetnek a következő példakimenethez hasonlóan kell kinéznie:

    NAME                                    READY   STATUS    RESTARTS   AGE
    contoso-microservice-7c58c5f699-r79mv   1/1     Running   0          63s