Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik: AKS Windows Serveren
Ez az oktatóanyag bemutatja, hogyan helyezhet üzembe ASP.NET mintaalkalmazást egy Windows Server-tárolóban az Azure Kubernetes Service (AKS) fürtben a Windows Server AKS-ben, majd tesztelheti és skálázhatja az alkalmazást. Azt is megtudhatja, hogyan csatlakoztathat Windows-csomópontot egy Active Directory-tartományhoz.
Ez az oktatóanyag feltételezi a Kubernetes-fogalmak alapszintű megértését. További információ: Kubernetes alapfogalmak a Windows Serveren futó AKS-hez.
Mielőtt hozzákezdene
Győződjön meg arról, hogy megfelelt a következő követelményeknek:
- Egy Azure Kubernetes Service-fürt, amelyen legalább egy Windows-munkavégző csomópont működik.
- Kubeconfig-fájl a fürt eléréséhez.
- Az AksHci PowerShell modul telepítve van.
Ha követi az eljárásokat:
- Futtassa a parancsokat egy PowerShell-rendszergazdai ablakban.
- Győződjön meg arról, hogy az operációs rendszer-specifikus munkaterhelések a megfelelő tároló gazdagépen kerüljenek elhelyezésre. Ha a Kubernetes-fürt Linuxos és Windowsos feldolgozó csomópontok keverékével rendelkezik, akkor használhat csomópontválasztókat, taint-eket és toleranciákat. További információkért tekintse meg a csomópontválasztók, a fertőzöttség és a toleranciák használatát.
Az alkalmazás üzembe helyezése
A Kubernetes-leírófájl meghatározza a fürt kívánt állapotát, például hogy mely konténerképeket kell futtatni. Ezekben az eljárásokban a rendszer egy jegyzékfájlt használ a ASP.NET mintaalkalmazás Windows Server-tárolóban való futtatásához szükséges összes objektum létrehozásához. Ez a jegyzék tartalmazza a ASP.NET mintaalkalmazás Kubernetes-üzembe helyezését és egy külső Kubernetes-szolgáltatást, amely az internetről éri el az alkalmazást.
A ASP.NET mintaalkalmazás a .NET-keretrendszer-minták részeként érhető el, és Windows Server-tárolóban fut. Az AKS megköveteli, hogy Windows Server tárolók Windows Server 2019 rendszerképeken alapulnak.
A Kubernetes-jegyzékfájlnak egy csomópontválasztót is meg kell adnia, amely tájékoztatja a fürtöt, hogy futtassa az ASP.NET mintaalkalmazás podját egy olyan csomóponton, amely Windows Server Tárolókat futtathat.
Hozzon létre egy nevű sample.yamlfájlt, és másolja/illessze be a következő YAML-definíciót:
apiVersion: apps/v1
kind: Deployment
metadata:
name: sample
labels:
app: sample
spec:
replicas: 1
template:
metadata:
name: sample
labels:
app: sample
spec:
nodeSelector:
"beta.kubernetes.io/os": windows
containers:
- name: sample
image: mcr.microsoft.com/dotnet/framework/samples:aspnetapp
resources:
limits:
cpu: 1
memory: 800M
requests:
cpu: .1
memory: 300M
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
Telepítse az alkalmazást a kubectl apply paranccsal, és adja meg a YAML-jegyzék nevét:
kubectl apply -f sample.yaml
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. Ezekben az esetekben legfeljebb 10 percet hagyhat.
A folyamat figyeléséhez használja a kubectl get service parancsot az --watch alábbi argumentummal:
kubectl get service sample --watch
Kezdetben a mintaszolgáltatásKÜLSŐ IP-címefüggőben van:
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őltényleges nyilvános IP-címre változik, állítsa CTRL-C le a kubectl figyelés folyamatát. Az alábbi példakimenet a szolgáltatáshoz rendelt érvényes nyilvános IP-címet jeleníti meg:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
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 nyisson meg egy webböngészőt a szolgáltatás külső IP-címére.
Ha a kapcsolat időtúllépést okoz a lap betöltésekor, ellenőrizze, hogy a mintaalkalmazás készen áll-e a kubectl get pods --watch parancs futtatásával. Előfordulhat, hogy a külső IP-cím a Windows-tároló elindítása előtt érhető el.
Alkalmazáspodok méretezése
Az alkalmazás előtérének egyetlen replikáját hoztuk létre. A fürtön lévő podok számának és állapotának megtekintéséhez használja a kubectl get következő parancsot:
kubectl get pods -n default
A mintatelepítésben lévő podok számának módosításához használja a kubectl scale parancsot. Az alábbi példa 3-ra növeli az előtérbeli podok számát:
kubectl scale --replicas=3 deployment/sample
Futtassa kubectl get pods újra a podok létrehozásának ellenőrzése érdekében. Hozzávetőleg egy perc elteltével az újabb podok elérhetők a fürtön:
kubectl get pods -n default