Rövid útmutató: Azure Kubernetes Service-fürt üzembe helyezése az Azure CLI használatával

A Azure Kubernetes Service (AKS) egy felügyelt Kubernetes-szolgáltatás, amely lehetővé teszi a fürtök gyors üzembe helyezését és kezelését. Ebben a rövid útmutatóban a következőket fogja tudni:

  • AKS-fürt üzembe helyezése az Azure CLI használatával.
  • Futtasson egy többtárolós mintaalkalmazást egy webes előtérrendszerrel és egy Redis-példánnyal a fürtben.

Képernyőkép az Azure Vote mintaalkalmazás böngészéséről.

A rövid útmutató feltételezi, hogy rendelkezik a Kubernetes használatára vonatkozó alapvető ismeretekkel. További információ: A Kubernetes alapfogalmai a Azure Kubernetes Service (AKS) esetében.

Ha nem rendelkezik Azure-előfizetéssel, a kezdés előtt hozzon létre egy ingyenes Azure-fiókot .

További információ a Windows Server-csomópontkészlet létrehozásáról: Windows Server-tárolókat támogató AKS-fürt létrehozása.

Előfeltételek

  • Ehhez a cikkhez az Azure CLI 2.0.64-es vagy újabb verziója szükséges. Az Azure Cloud Shell használata esetén a legújabb verzió már telepítve van.

  • A fürt létrehozásához használt identitás rendelkezik a megfelelő minimális engedélyekkel. Az AKS-hez való hozzáféréssel és identitással kapcsolatos további információkért lásd: Hozzáférés és identitásbeállítások Azure Kubernetes Service (AKS) esetén.

  • Ha több Azure-előfizetéssel rendelkezik, válassza ki a megfelelő előfizetés-azonosítót, amelyben az erőforrások számlázása az az account paranccsal történik.

  • Ellenőrizze Microsoft. OperationsManagement és Microsoft. Az OperationalInsights-szolgáltatók regisztrálva vannak az előfizetésében. Ezek olyan Azure-erőforrás-szolgáltatók, amelyek a Container Insights támogatásához szükségesek. A regisztrációs állapot ellenőrzéséhez futtassa a következő parancsokat:

    az provider show -n Microsoft.OperationsManagement -o table
    az provider show -n Microsoft.OperationalInsights -o table
    

    Ha nincsenek regisztrálva, regisztrálja Microsoft. OperationsManagement és Microsoft. OperationalInsights az alábbi parancsokkal:

    az provider register --namespace Microsoft.OperationsManagement
    az provider register --namespace Microsoft.OperationalInsights
    

Megjegyzés

Futtassa a parancsokat rendszergazdai jogosultságokkal, ha az ebben a rövid útmutatóban szereplő parancsokat helyileg szeretné futtatni az Azure Cloud Shell helyett.

Erőforráscsoport létrehozása

Az Azure-erőforráscsoport egy logikai csoport, amelyben az Azure-erőforrások üzembe helyezése és kezelése történik. Erőforráscsoport létrehozásakor a rendszer kérni fogja, hogy adjon meg egy helyet. Ez a hely a következő:

  • Az erőforráscsoport metaadatainak tárolási helye.
  • Hol futnak az erőforrások az Azure-ban, ha nem ad meg másik régiót az erőforrás létrehozása során.

A következő példában létrehozunk egy myResourceGroup nevű erőforráscsoportot az eastus helyen.

Hozzon létre egy erőforráscsoportot az az group create paranccsal.

az group create --name myResourceGroup --location eastus

Az alábbi kimeneti példa az erőforráscsoport sikeres létrehozásához hasonlít:

{
  "id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
  "location": "eastus",
  "managedBy": null,
  "name": "myResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null
}

AKS-fürt létrehozása

Hozzon létre egy AKS-fürtöt az az aks create paranccsal a és --enable-msi-auth-for-monitoring paraméterrel az --enable-addons monitoringAzure Monitor Container Insights felügyelt identitásalapú hitelesítéssel (előzetes verzió) való engedélyezéséhez. Az alábbi példa egy myAKSCluster nevű fürtöt hoz létre egy csomóponttal, és engedélyezi a rendszer által hozzárendelt felügyelt identitást:

az aks create -g myResourceGroup -n myAKSCluster --enable-managed-identity --node-count 1 --enable-addons monitoring --enable-msi-auth-for-monitoring  --generate-ssh-keys

Néhány perc elteltével a parancs befejeződik, és JSON formátumú információkat ad vissza a fürtről.

Megjegyzés

AKS-fürt létrehozásakor a rendszer automatikusan létrehoz egy második erőforráscsoportot az AKS-erőforrások tárolásához. További információ: Miért jön létre két erőforráscsoport az AKS-sel?

Csatlakozás a fürthöz

Kubernetes-fürt kezeléséhez használja a Kubernetes parancssori ügyfélprogramját, a kubectl-t. kubectlaz Azure Cloud Shell használata esetén már telepítve van.

  1. Helyi telepítés kubectl az az aks install-cli paranccsal:

    az aks install-cli
    
  2. Konfigurálja kubectl úgy, hogy az az aks get-credentials paranccsal csatlakozzon a Kubernetes-fürthöz. A következő parancs:

    • Letölti a hitelesítő adatokat, és konfigurálja a Kubernetes parancssori felületét azok használatára.
    • A kubernetes konfigurációs fájl alapértelmezett helyét használja~/.kube/config. Adjon meg egy másik helyet a Kubernetes konfigurációs fájljához a --file argumentum használatával.
    az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
    
  3. Ellenőrizze a fürthöz való csatlakozást a kubectl get paranccsal. Ez a parancs a fürtcsomópontok listáját adja vissza.

    kubectl get nodes
    

    Az alábbi kimeneti példa az előző lépésekben létrehozott egyetlen csomópontot mutatja be. Győződjön meg arról, hogy a csomópont állapota Kész:

    NAME                       STATUS   ROLES   AGE     VERSION
    aks-nodepool1-31718369-0   Ready    agent   6m44s   v1.12.8
    

Az alkalmazás üzembe helyezése

A Kubernetes-jegyzékfájl meghatározza a fürt kívánt állapotát, például azt, hogy mely tárolólemezképeket kell futtatni.

Ebben a rövid útmutatóban egy jegyzékfájlt fog használni az Azure Vote alkalmazás futtatásához szükséges összes objektum létrehozásához. Ez a jegyzékfájl két Kubernetes-üzemelő példányt tartalmaz:

  • A minta Azure Vote Python-alkalmazások.
  • Egy Redis-példány.

Két Kubernetes-szolgáltatás is létrejön:

  • A Redis-példány belső szolgáltatása.
  • Külső szolgáltatás az Azure Vote alkalmazás internetről való eléréséhez.
  1. Hozzon létre egy nevű azure-vote.yaml fájlt, és másolja a következő jegyzékfájlba.

    • Ha az Azure Cloud Shell használja, ez a fájl létrehozható codea használatával, vivagy nano úgy, mintha egy virtuális vagy fizikai rendszeren dolgozik.
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: azure-vote-back
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: azure-vote-back
      template:
        metadata:
          labels:
            app: azure-vote-back
        spec:
          nodeSelector:
            "kubernetes.io/os": linux
          containers:
          - name: azure-vote-back
            image: mcr.microsoft.com/oss/bitnami/redis:6.0.8
            env:
            - name: ALLOW_EMPTY_PASSWORD
              value: "yes"
            resources:
              requests:
                cpu: 100m
                memory: 128Mi
              limits:
                cpu: 250m
                memory: 256Mi
            ports:
            - containerPort: 6379
              name: redis
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: azure-vote-back
    spec:
      ports:
      - port: 6379
      selector:
        app: azure-vote-back
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: azure-vote-front
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: azure-vote-front
      template:
        metadata:
          labels:
            app: azure-vote-front
        spec:
          nodeSelector:
            "kubernetes.io/os": linux
          containers:
          - name: azure-vote-front
            image: mcr.microsoft.com/azuredocs/azure-vote-front:v1
            resources:
              requests:
                cpu: 100m
                memory: 128Mi
              limits:
                cpu: 250m
                memory: 256Mi
            ports:
            - containerPort: 80
            env:
            - name: REDIS
              value: "azure-vote-back"
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: azure-vote-front
    spec:
      type: LoadBalancer
      ports:
      - port: 80
      selector:
        app: azure-vote-front
    

    A YAML-jegyzékfájlok részletes ismertetése: Üzemelő példányok és YAML-jegyzékek.

  2. Telepítse az alkalmazást a kubectl apply paranccsal, és adja meg a YAML-jegyzékfájl nevét:

    kubectl apply -f azure-vote.yaml
    

    Az alábbi példa a sikeresen létrehozott üzemelő példányokat és szolgáltatásokat megjelenítő kimenethez hasonlít:

    deployment "azure-vote-back" created
    service "azure-vote-back" created
    deployment "azure-vote-front" created
    service "azure-vote-front" created
    

Az alkalmazás tesztelése

Az alkalmazás futtatásakor a Kubernetes-szolgáltatás elérhetővé teszi az alkalmazás előtérrendszerét az interneten. A folyamat eltarthat pár percig.

Figyelje az előrehaladást a kubectl get service paranccsal az --watch argumentummal.

kubectl get service azure-vote-front --watch

A szolgáltatás EXTERNAL-IP kimenete azure-vote-front kezdetben függőben állapotúként jelenik meg.

NAME               TYPE           CLUSTER-IP   EXTERNAL-IP   PORT(S)        AGE
azure-vote-front   LoadBalancer   10.0.37.27   <pending>     80:30572/TCP   6s

Ha az EXTERNAL-IP-címfüggőben állapotról tényleges nyilvános IP-címre változik, a használatával CTRL-C állítsa le a megtekintési kubectl folyamatot. Az alábbi példakimenet a szolgáltatáshoz rendelt érvényes nyilvános IP-címet mutatja be:

azure-vote-front   LoadBalancer   10.0.37.27   52.179.23.131   80:30572/TCP   2m

Az Azure Vote alkalmazás működés közbeni megtekintéséhez nyisson meg egy webböngészőt a szolgáltatás külső IP-címére.

Képernyőkép az Azure Vote mintaalkalmazás böngészéséről.

A fürt törlése

Az Azure-díjak elkerülése érdekében, ha nem tervezi végigvezetni az alábbi oktatóanyagokat, törölje a felesleges erőforrásokat. Az az group delete paranccsal eltávolíthatja az erőforráscsoportot, a tárolószolgáltatást és az összes kapcsolódó erőforrást.

az group delete --name myResourceGroup --yes --no-wait

Megjegyzés

Az AKS-fürt rendszer által hozzárendelt felügyelt identitással lett létrehozva (az alapértelmezett identitásbeállítás ebben a rövid útmutatóban használatos), az identitást a platform kezeli, és nem igényel eltávolítást.

Következő lépések

Ebben a rövid útmutatóban üzembe helyezett egy Kubernetes-fürtöt, majd üzembe helyezett egy egyszerű többtárolós alkalmazást.

Az AKS-sel kapcsolatos további információkért és a kódtól az üzembe helyezésig terjedő teljes útmutatóért folytassa a Kubernetes-fürtöket bemutató oktatóanyaggal.

Ez a rövid útmutató bevezető célokra szolgál. A teljes megoldások éles AKS-sel való létrehozásával kapcsolatos útmutatásért lásd: AKS-megoldásokkal kapcsolatos útmutató.