Windows Server-tárolók létrehozása
A következőkre vonatkozik: Azure Stack HCI, 23H2-es verzió
Ez a cikk azt ismerteti, hogyan helyezhet üzembe csomópontkészletet egy Meglévő AKS-fürtben, amely Windows Server-tárolókat futtat az Azure CLI használatával. Azt is ismerteti, hogyan helyezhet üzembe ASP.NET mintaalkalmazást egy Windows Server-tárolóban a fürtön.
Előfeltételek
Az AKS-fürtök létrehozásának lépéseit követve hozzon létre egy AKS-fürtöt.
Csomópontkészlet hozzáadása
Alapértelmezés szerint egy Kubernetes-fürt olyan csomópontkészlettel jön létre, amely Linux-tárolókat futtathat. Hozzá kell adnia egy másik csomópontkészletet, amely Windows Server-tárolókat futtathat a Linux-csomópontkészlet mellett.
Adjon hozzá egy csomópontkészletet Windows-tároló gazdagépekkel a az aksarc nodepool add
paraméterrel --os-type Windows
rendelkező paranccsal. Ha nincs megadva az operációs rendszer termékváltozata, a csomópontkészlet a fürt Kubernetes-verziója alapján az alapértelmezett operációs rendszerre van állítva. A Windows Server 2022 a Kubernetes 1.25.0-s és újabb verzióinak alapértelmezett operációs rendszere. A Windows Server 2019 a korábbi verziók alapértelmezett operációs rendszere.
- A Windows Server 2019 használatához adja meg a következő paramétereket:
os-type
értékre vanWindows
állítva.os-sku
értékre vanWindows2019
állítva.
- A Windows Server 2022 használatához adja meg a következő paramétereket:
os-type
értékre vanWindows
állítva.os-sku
beállítás (Windows2022
nem kötelező).
A következő parancs létrehoz egy új csomópontkészletet, amelyet egy $mynodepool
Windows Server 2022-csomóponttal ad hozzá $myAKSCluster
:
az aksarc nodepool add --resource-group $myResourceGroup --cluster-name $myAKSCluster --name $mynodepool --node-count 1 --os-type Windows --os-sku Windows2022
Csatlakozás az AKS-fürthöz
Most már csatlakozhat a Kubernetes-fürthöz a az connectedk8s proxy
helyi gépről futtatott parancs futtatásával. A parancs futtatása előtt győződjön meg arról, hogy bejelentkezik az Azure-ba. Ha több Azure-előfizetéssel rendelkezik, válassza ki a megfelelő előfizetés-azonosítót az az account set paranccsal.
Ez a parancs letölti a Kubernetes-fürt kubeconfigját a helyi gépre, és megnyitja a helyszíni Kubernetes-fürt proxykapcsolati csatornáját. A csatorna addig van nyitva, amíg ez a parancs fut. Addig futtassa ezt a parancsot, amíg hozzá szeretne férni a fürthöz. Ha a parancs túllépi az időkorlátot, zárja be a parancssori felület ablakát, nyisson meg egy újat, majd futtassa újra a parancsot.
Az alábbi parancs sikeres futtatásához közreműködői engedélyekkel kell rendelkeznie az AKS-fürtöt üzemeltető erőforráscsoporton:
az connectedk8s proxy --name $aksclustername --resource-group $resource_group --file .\aks-arc-kube-config
Várt kimenet:
Proxy is listening on port 47011
Merged "aks-workload" as current context in .\aks-arc-kube-config
Start sending kubectl requests on 'aks-workload' context using kubeconfig at .\aks-arc-kube-config
Press Ctrl+C to close proxy.
Futtassa ezt a munkamenetet, és csatlakozzon a Kubernetes-fürthöz egy másik terminálról vagy parancssorból. Ellenőrizze, hogy tud-e csatlakozni a Kubernetes-fürthöz a kubectl get parancs futtatásával. Ez a parancs a fürtcsomópontok listáját adja vissza:
kubectl get node -A --kubeconfig .\aks-arc-kube-config
Az alábbi példakimenet az előző lépésekben létrehozott csomópontot mutatja be. Győződjön meg arról, hogy a csomópont állapota kész:
NAME STATUS ROLES AGE VERSION
moc-lesdc78871d Ready control-plane 6d8h v1.26.3
moc-lupeeyd0f8c Ready <none> 6d8h v1.26.3
moc-ww2c8d5ranw Ready <none> 7m18s v1.26.3
Az alkalmazás üzembe helyezése
A Kubernetes-jegyzékfájl meghatározza a fürt kívánt állapotát, például hogy mely tárolólemezképeket kell futtatni.
YAML-jegyzék használatával létrehozhatja a ASP.NET mintaalkalmazás Windows Server-tárolóban való futtatásához szükséges összes objektumot. Ez a jegyzék tartalmazza az ASP.NET mintaalkalmazás Kubernetes-üzembe helyezését és egy Kubernetes-szolgáltatást az alkalmazás internetről való eléréséhez.
A ASP.NET mintaalkalmazás a .NET-keretrendszer minták részeként van megadva, és egy Windows Server-tárolóban fut. Az AKS megköveteli, hogy a Windows Server-tárolók a Windows Server 2019 vagy újabb rendszerképeken alapuljanak. A Kubernetes-jegyzékfájlnak egy csomópontválasztót is meg kell adnia, hogy a ASP.NET mintaalkalmazás podjai ütemezve legyenek egy Windows Server-tárolókat futtató csomóponton.
Hozzon létre egy sample.yaml nevű fájlt, és másolja a következő YAML-definícióba:
apiVersion: apps/v1 kind: Deployment metadata: name: sample labels: app: sample spec: replicas: 1 template: metadata: name: sample labels: app: sample spec: nodeSelector: "kubernetes.io/os": windows containers: - name: sample image: mcr.microsoft.com/dotnet/framework/samples:aspnetapp resources: limits: cpu: 1 memory: 800M ports: - containerPort: 80 selector: matchLabels: app: sample --- apiVersion: v1 kind: Service metadata: name: sample spec: type: LoadBalancer ports: - protocol: TCP port: 80 selector: app: sample
A YAML-jegyzékfájlok lebontásához tekintse meg az üzembe helyezéseket és a YAML-jegyzékeket.
Telepítse az alkalmazást a kubectl apply paranccsal, és adja meg a YAML-jegyzék nevét:
kubectl apply -f sample.yaml --kubeconfig .\\aks-arc-kube-config
Az alábbi példakimenet azt mutatja, hogy az üzembe helyezés és a szolgáltatás sikeresen létrejött:
deployment.apps/sample created
service/sample created
Az alkalmazás tesztelése
Az alkalmazás futtatásakor egy Kubernetes-szolgáltatás elérhetővé teszi az alkalmazás előtérét az interneten. A folyamat eltarthat pár percig. Időnként a szolgáltatás kiépítése néhány percnél hosszabb időt is igénybe vehet. A kiépítés legfeljebb 10 percet hagyhat.
Figyelje a folyamatot a kubectl get service paranccsal az
--watch
argumentummal.kubectl get service sample --watch --kubeconfig .\aks-arc-kube-config
A kimenet kezdetben függőben lévőként jeleníti meg a mintaszolgáltatás KÜLSŐ IP-címét:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE sample LoadBalancer 10.0.37.27 <pending> 80:30572/TCP 6s
Ha a külső IP-cím függőben lévőről IP-címre változik, a CTRL-C billentyűkombinációval állítsa le a kubectl watch folyamatot. Az alábbi példakimenet a szolgáltatáshoz rendelt érvényes nyilvános IP-címet jeleníti meg:
sample LoadBalancer 10.0.37.27 52.179.23.131 80:30572/TCP 2m
A mintaalkalmazás működés közbeni megtekintéséhez nyissa meg a webböngészőt a mintaszolgáltatás külső IP-címére és portjára.
Ha a lap betöltésekor kapcsolati időtúllépést kap, ellenőrizze, hogy a mintaalkalmazás készen áll-e a
kubectl get pods --watch
parancsra. Előfordulhat, hogy a Windows-tároló nem indul el a külső IP-cím elérhetővé tételekor.
Csomópontkészlet törlése
Törölje a csomópontkészletet a az akshybrid nodepool delete
következő paranccsal:
az aksarc nodepool delete -g $myResourceGroup --cluster-name $myAKSCluster --name $mynodepool --no-wait