Fürt csomópontkészleteinek kezelése (AKS az Azure Stack HCI 22H2-ben)
A következőkre vonatkozik: AKS az Azure Stack HCI 22H2-ben, AKS Windows Serveren
Megjegyzés
A csomópontkészletek Azure Stack HCI 23H2-n futó AKS-ben való kezelésével kapcsolatos információkért lásd: Csomópontkészletek kezelése.
Az Azure Arc által engedélyezett AKS-ben az azonos konfigurációban lévő csomópontok csomópontkészletekbe vannak csoportosítva. Ezek a csomópontkészletek tartalmazzák az alkalmazásokat futtató mögöttes virtuális gépeket. Ez a cikk bemutatja, hogyan hozhat létre és kezelhet csomópontkészleteket egy fürthöz az AKS Arcban.
Megjegyzés
Ez a funkció lehetővé teszi több csomópontkészlet létrehozásának és kezelésének nagyobb mértékű szabályozását. Ennek eredményeképpen külön parancsokra van szükség a létrehozási, frissítési és törlési műveletekhez. Korábban a New-AksHciCluster vagy a Set-AksHciCluster használatával végzett fürtműveletek voltak az egyetlen lehetőség egy Windows-csomópontkészlettel és egy Linux-csomópontkészlettel rendelkező fürt létrehozására vagy skálázására. Ez a funkció egy külön műveletkészletet tesz elérhetővé olyan csomópontkészletekhez, amelyek a New-AksHciNodePool, a Set-AksHciNodePool, a Get-AksHciNodePool és a Remove-AksHciNodePool csomópontkészlet-parancsok használatát igénylik az egyes csomópontkészleteken végzett műveletek végrehajtásához.
Előkészületek
Javasoljuk, hogy telepítse az 1.1.6-os verziót. Ha már telepítve van a PowerShell-modul, futtassa a következő parancsot a verzió megkereséséhez:
Get-Command -Module AksHci
Ha frissítenie kell a PowerShellt, kövesse az AKS-gazdagép frissítésével kapcsolatos utasításokat.
AKS-fürt létrehozása
Első lépésként hozzon létre egy AKS-fürtöt egyetlen csomópontkészlettel. Az alábbi példa a New-AksHciCluster paranccsal hoz létre egy új Kubernetes-fürtöt egy linuxos csomópontkészlettel, linuxnodepool néven, amely 1 csomóponttal rendelkezik. Ha már telepített egy fürtöt az AKS egy régebbi verziójával, és továbbra is használni szeretné a régi üzembe helyezést, kihagyhatja ezt a lépést. Az új csomópontkészlet-parancskészlet-parancsokkal továbbra is hozzáadhat további csomópontkészletet a meglévő fürthöz.
New-AksHciCluster -name mycluster -nodePoolName linuxnodepool -nodeCount 1 -osType linux
Megjegyzés
A régi paraméterkészlet New-AksHciCluster
továbbra is támogatott.
Csomópontkészlet hozzáadása
Az előző lépésben létrehozott *' nevű mycluster
fürt egyetlen csomópontkészletet tartalmaz. A New-AksHciNodePool paranccsal hozzáadhat egy második csomópontkészletet a meglévő fürthöz. Az alábbi példa egy windowsnodepool nevű Windows-csomópontkészletet hoz létre egy csomóponttal. Győződjön meg arról, hogy a csomópontkészlet neve nem azonos a meglévő csomópontkészlet nevével.
New-AksHciNodePool -clusterName mycluster -name windowsnodepool -count 1 -osType Windows -osSku Windows2022
Csomópontkészlet konfigurációs adatainak lekérése
A csomópontkészletek konfigurációs adatainak megtekintéséhez használja a Get-AksHciNodePool parancsot.
Get-AksHciNodePool -clusterName mycluster
Példa a kimenetre:
ClusterName : mycluster
NodePoolName : linuxnodepool
Version : v1.20.7
OsType : Linux
NodeCount : 1
VmSize : Standard_K8S3_v1
Phase : Deployed
ClusterName : mycluster
NodePoolName : windowsnodepool
Version : v1.20.7
OsType : Windows
NodeCount : 1
VmSize : Standard_K8S3_v1
Phase : Deployed
Egy adott csomópontkészlet konfigurációs információinak megtekintéséhez használja a -name
Get-AksHciNodePool paramétert.
Get-AksHciNodePool -clusterName mycluster -name linuxnodepool
Példa a kimenetre:
ClusterName : mycluster
NodePoolName : linuxnodepool
Version : v1.20.7
OsType : Linux
NodeCount : 1
VmSize : Standard_K8S3_v1
Phase : Deployed
Get-AksHciNodePool -clusterName mycluster -name windowsnodepool
Példa a kimenetre:
ClusterName : mycluster
NodePoolName : windowsnodepool
Version : v1.20.7
OsType : Windows
NodeCount : 1
VmSize : Standard_K8S3_v1
Phase : Deployed
Megjegyzés
Ha az új paraméterkészleteket New-AksHciCluster
használja egy fürt üzembe helyezéséhez, majd futtatja a fürtinformációk Get-AksHciCluster
lekéréséhez, a mezők WindowsNodeCount
és LinuxNodeCount
a kimenet visszaadják 0
a következőt: . Az egyes csomópontkészletekben található csomópontok pontos számának lekéréséhez használja a parancsot Get-AksHciNodePool
a megadott fürtnévvel.
Csomópontkészlet skálázása
A csomópontkészletekben felfelé vagy lefelé skálázhatja a csomópontok számát.
A csomópontkészletben lévő csomópontok számának skálázásához használja a Set-AksHciNodePool parancsot. Az alábbi példa a fürtön található linuxnodepool
mycluster
csomópontkészletben lévő csomópontok számát 3-ra skálázza.
Set-AksHciNodePool -clusterName mycluster -name linuxnodepool -count 3
Skálázási vezérlősík csomópontjai
A vezérlősík csomópontjainak kezelése nem változott. A létrehozásuk, skálázásuk és eltávolításuk módja változatlan marad. Ha nem ad meg értékeket, továbbra is üzembe helyezi a vezérlősík csomópontjait a New-AksHciCluster paranccsal a paraméterekkel controlPlaneNodeCount
és controlPlaneVmSize
az alapértelmezett 1 és Standard_A4_V2 értékekkel.
Előfordulhat, hogy skáláznia kell a vezérlősík csomópontjait, amikor az alkalmazások számítási feladatigénye megváltozik. A vezérlősík csomópontjainak skálázásához használja a Set-AksHciCluster parancsot. Az alábbi példa a vezérlősík csomópontjait 3-ra skálázza a fürtben mycluster
, amely az előző lépésekben lett létrehozva.
Set-AksHciCluster -name mycluster -controlPlaneNodeCount 3
Csomópontkészlet törlése
Ha törölnie kell egy csomópontkészletet, használja a Remove-AksHciNodePool parancsot. Az alábbi példa eltávolítja a nevű windowsnodepool
csomópontkészletet a mycluster
fürtből.
Remove-AksHciNodePool -clusterName mycluster -name windowsnodepool
Csomópontkészlet fertőzöttségének megadása
Csomópontkészlet létrehozásakor hozzáadhat fertőzötteket az adott csomópontkészlethez. Ha fertőzöttet ad hozzá, az adott csomópontkészlet összes csomópontja is megkapja ezt a fertőzöttet. A fertőzöttségekkel és a tűrésekkel kapcsolatos további információkért lásd: Kubernetes Taints és Tolerations.
Csomópontkészlet-fertőzöttek beállítása
Ha fertőzött csomópontkészletet szeretne létrehozni, használja a New-AksHciNodePool parancsot. Adja meg a nevet taintnp
, és a -taints
paraméter használatával adja meg sku=gpu:noSchedule
a fertőzöttet.
New-AksHciNodePool -clusterName mycluster -name taintnp -count 1 -osType linux -taints sku=gpu:NoSchedule
Megjegyzés
A fertőzöttség csak csomópontkészletekhez állítható be a csomópontkészlet létrehozása során.
Futtassa a következő parancsot, és győződjön meg arról, hogy a csomópontkészlet sikeresen üzembe lett helyezve a megadott fertőzöttséggel.
Get-AksHciNodePool -clusterName mycluster -name taintnp
Kimenet
Status : {Phase, Details}
ClusterName : mycluster
NodePoolName : taintnp
Version : v1.20.7-kvapkg.1
OsType : Linux
NodeCount : 1
VmSize : Standard_K8S3_v1
Phase : Deployed
Taints : {sku=gpu:NoSchedule}
Az előző lépésben a csomópontkészlet létrehozásakor alkalmazta az sku=gpu:NoSchedule fertőzöttet. Az alábbi alapszintű YAML-jegyzék egy tűrést használ annak engedélyezéséhez, hogy a Kubernetes-ütemező NGINX-podot futtasson az adott csomópontkészlet egyik csomópontján.
Hozzon létre egy nevű fájlt nginx-toleration.yaml
, és másolja az adatokat az alábbi szövegbe.
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- image: mcr.microsoft.com/oss/nginx/nginx:1.15.9-alpine
name: mypod
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 1
memory: 2G
tolerations:
- key: "sku"
operator: "Equal"
value: "gpu"
effect: "NoSchedule"
Ezután ütemezze a podot az alábbi paranccsal.
kubectl apply -f nginx-toleration.yaml
A pod üzembe helyezésének ellenőrzéséhez futtassa a következő parancsot:
kubectl describe pod mypod
[...]
Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
sku=gpu:NoSchedule
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 32s default-scheduler Successfully assigned default/mypod to moc-lk4iodl7h2y
Normal Pulling 30s kubelet Pulling image "mcr.microsoft.com/oss/nginx/nginx:1.15.9-alpine"
Normal Pulled 26s kubelet Successfully pulled image "mcr.microsoft.com/oss/nginx/nginx:1.15.9-alpine" in 4.529046457s
Normal Created 26s kubelet Created container mypod