Csomópontkészletek létrehozása fürthöz az Azure Kubernetes Service-ben (AKS)

Az Azure Kubernetes Service -ben (AKS) az azonos konfigurációval rendelkező 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. AKS-fürt létrehozásakor meg kell határoznia a csomópontok kezdeti számát és méretét (SKU), amely létrehoz egy rendszercsomópont-készletet.

A különböző számítási vagy tárolási igényekkel rendelkező alkalmazások támogatásához létrehozhat felhasználói csomópontkészleteket. A rendszercsomópontkészletek elsődleges célja a kritikus fontosságú rendszer podok, például a CoreDNS és konnectivitya . A felhasználói csomópontkészletek elsődleges célja az alkalmazás podjainak üzemeltetése. Használjon például több felhasználói csomópontkészletet a gpu-k számítási igényű alkalmazásokhoz való biztosításához, vagy a nagy teljesítményű SSD-tárolóhoz való hozzáféréshez. Ha azonban csak egy készletet szeretne az AKS-fürtben, ütemezheti az alkalmazás podjait a rendszercsomópont-készletekben.

Feljegyzés

Ez a funkció több csomópontkészlet létrehozását és kezelését teszi lehetővé, és külön parancsokat igényel a létrehozási/frissítési/törlési (CRUD) műveletekhez. Korábban a fürtműveletek a managedCluster API-n keresztül az aks create vagy az aks update azt használták, és csak a vezérlősík és egyetlen csomópontkészlet módosítására volt lehetőség. Ez a funkció egy külön műveletkészletet tesz elérhetővé az ügynökkészletekhez az agentPool API-n keresztül, és a parancskészlet használatát igényli az az aks nodepool egyes csomópontkészleteken végzett műveletek végrehajtásához.

Ez a cikk bemutatja, hogyan hozhat létre egy vagy több csomópontkészletet egy AKS-fürtben.

Mielőtt elkezdené

  • Telepítenie és konfigurálnia kell az Azure CLI 2.2.0-s vagy újabb verzióját. A verzió azonosításához futtassa a következőt: az --version. Ha telepíteni vagy frissíteni szeretne: Az Azure CLI telepítése.
  • Tekintse át az Azure Kubernetes Service-ben található alkalmazások tárolási beállításait a tárolási konfiguráció megtervezéséhez.

Korlátozások

A következő korlátozások érvényesek több csomópontkészletet támogató AKS-fürtök létrehozásakor:

  • Lásd: Kvóták, virtuálisgép-méretkorlátozások és régiók rendelkezésre állása az Azure Kubernetes Service-ben (AKS).
  • A rendszercsomópontkészletek törölhetők, ha egy másik rendszercsomópontkészlettel rendelkezik, amely átveszi a helyét az AKS-fürtben. Ellenkező esetben a rendszercsomópont-készlet nem törölhető.
  • A rendszerkészleteknek legalább egy csomópontot tartalmazniuk kell, és a felhasználói csomópontkészletek nulla vagy több csomópontot tartalmazhatnak.
  • Az AKS-fürtnek a Standard termékváltozat terheléselosztójával kell több csomópontkészletet használnia. Ez a funkció alapszintű termékváltozat terheléselosztók esetén nem támogatott.
  • Az AKS-fürtnek virtuálisgép-méretezési csoportokat kell használnia a csomópontokhoz.
  • A csomópontkészlet neve csak kisbetűs alfanumerikus karaktereket tartalmazhat, és kisbetűvel kell kezdődnie.
    • Linux-csomópontkészletek esetén a hossznak 1–12 karakternek kell lennie.
    • Windows-csomópontkészletek esetén a hossznak 1–6 karakternek kell lennie.
  • Minden csomópontkészletnek ugyanabban a virtuális hálózaton kell lennie.
  • Ha több csomópontkészletet hoz létre a fürt létrehozásakor, a csomópontkészletek Kubernetes-verzióinak meg kell egyeznie a vezérlősíkhoz beállított verzióval.

AKS-fürt létrehozása

Fontos

Ha éles környezetben futtat egyetlen rendszercsomópontkészletet az AKS-fürthöz, javasoljuk, hogy legalább három csomópontot használjon a csomópontkészlethez. Ha egy csomópont leáll, elveszíti a vezérlősík erőforrásait, és a redundancia sérül. Ezt a kockázatot több vezérlősíkcsomóponttal csökkentheti.

  1. Hozzon létre egy Azure-erőforráscsoportot a az group create paranccsal.

    az group create --name myResourceGroup --location eastus
    
  2. Hozzon létre egy AKS-fürtöt egyetlen csomópontkészlettel a az aks create parancs használatával.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --vm-set-type VirtualMachineScaleSets \
        --node-count 2 \
        --generate-ssh-keys \
        --load-balancer-sku standard
    

    A fürt létrehozása néhány percet vesz igénybe.

  3. Ha a fürt készen áll, kérje le a fürt hitelesítő adatait a az aks get-credentials parancs használatával.

    az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
    

Csomópontkészlet hozzáadása

Az előző lépésben létrehozott fürtnek egyetlen csomópontkészlete van. Ebben a szakaszban egy második csomópontkészletet adunk hozzá a fürthöz.

  1. Hozzon létre egy új csomópontkészletet a az aks nodepool add paranccsal. Az alábbi példa egy mynodepool nevű csomópontkészletet hoz létre, amely három csomópontot futtat:

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name mynodepool \
        --node-count 3
    
  2. Ellenőrizze a csomópontkészletek állapotát a az aks node pool list paranccsal, és adja meg az erőforráscsoportot és a fürt nevét.

    az aks nodepool list --resource-group myResourceGroup --cluster-name myAKSCluster
    

    Az alábbi példakimenet azt mutatja, hogy a mynodepool sikeresen létrejött három csomóponttal. Amikor az AKS-fürt az előző lépésben létrejött, egy alapértelmezett csomópontkészlet1 lett létrehozva 2 csomópontszámmal.

    [
      {
        ...
        "count": 3,
        ...
        "name": "mynodepool",
        "orchestratorVersion": "1.15.7",
        ...
        "vmSize": "Standard_DS2_v2",
        ...
      },
      {
        ...
        "count": 2,
        ...
        "name": "nodepool1",
        "orchestratorVersion": "1.15.7",
        ...
        "vmSize": "Standard_DS2_v2",
        ...
      }
    ]
    

ARM64-csomópontkészletek

Az ARM64-processzor alacsony teljesítményt biztosít a Kubernetes számítási feladataihoz. ARM64-csomópontkészlet létrehozásához dpsv5, Dplsv5 vagy Epsv5 sorozatú virtuális gépet kell választania.

Korlátozások

  • Az ARM64-csomópontkészletek nem támogatottak a Defender-kompatibilis fürtökön.
  • A FIPS-kompatibilis csomópontkészletek arm64-termékváltozatokkal nem támogatottak.

ARM64-csomópontkészlet hozzáadása

  • Adjon hozzá egy ARM64-csomópontkészletet a meglévő fürthöz a az aks nodepool add.

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name armpool \
        --node-count 3 \
        --node-vm-size Standard_D2pds_v5
    

Azure Linux-csomópontkészletek

Az AKS-hez készült Azure Linux-tároló gazdagép egy nyílt forráskódú Linux-disztribúció, amely AKS-tárológazdaként érhető el. Magas megbízhatóságot, biztonságot és konzisztenciát biztosít. Csak a tároló számítási feladatainak futtatásához szükséges minimális csomagkészletet tartalmazza, amely javítja a rendszerindítási időket és az általános teljesítményt.

Azure Linux-csomópontkészlet hozzáadása

  • Adjon hozzá egy Azure Linux-csomópontkészletet a meglévő fürthöz a parancs használatával, és adja meg--os-sku AzureLinux.az aks nodepool add

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name azlinuxpool \
        --os-sku AzureLinux
    

Ubuntu-csomópontok migrálása Azure Linux-csomópontokra

A meglévő Ubuntu-csomópontokat az alábbi módszerek egyikével migrálhatja az Azure Linuxba:

Egyedi alhálózatokkal rendelkező csomópontkészletek

A számítási feladatokhoz szükség lehet a fürtcsomópontok külön készletekre való felosztására a logikai elkülönítés érdekében. A fürt egyes csomópontkészleteinek külön alhálózatai támogathatják ezt az elkülönítést, ami olyan követelményeknek is megfelelhet, mint például a nem egyértelmű virtuális hálózati címtér a csomópontkészletek közötti felosztáshoz.

Feljegyzés

Győződjön meg arról, hogy az Azure CLI-verziót vagy újabb verziót 2.35.0 használja.

Korlátozások

  • A csomópontkészletekhez rendelt összes alhálózatnak ugyanahhoz a virtuális hálózathoz kell tartoznia.
  • A rendszer podjainak hozzáféréssel kell rendelkezniük a fürt összes csomópontjához és podjához, hogy kritikus funkciókat biztosítsanak, például a DNS-feloldást és a kubectl-naplók/exec/port-továbbítási proxy bújtatását.
  • Ha a fürt létrehozása után kibontja a virtuális hálózatot, frissítenie kell a fürtöt, mielőtt hozzáad egy alhálózatot az eredeti CIDR-blokkon kívül. Bár az ügynökkészlet AKS-hibái hozzáadva, az aks-preview Azure CLI-bővítmény (0.5.66-os vagy újabb verzió) mostantól csak a szükséges -g <resourceGroup> -n <clusterName> argumentumokkal támogatja a parancs futtatásátaz aks update. Ez a parancs módosítás nélkül hajt végre egy frissítési műveletet, amely helyreállíthatja a sikertelen állapotban elakadt fürtöket.
  • Az 1.23.3-nál kisebb Kubernetes-verziójú fürtökben a kube-proxy SNATs-forgalmat hoz létre az új alhálózatokról, ami miatt az Azure Network Policy elveti a csomagokat.
  • A Windows-csomópontok SNAT-forgalmat bonyolítanak az új alhálózatokra, amíg a csomópontkészlet újra nem lesz állítva.
  • A belső terheléselosztók alapértelmezés szerint az egyik csomópontkészlet-alhálózatra lesznek beállítva.

Csomópontkészlet hozzáadása egyedi alhálózattal

  • Adjon hozzá egy egyedi alhálózattal rendelkező csomópontkészletet a meglévő fürtbe a az aks nodepool add parancs használatával, és adja meg a --vnet-subnet-id.

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name mynodepool \
        --node-count 3 \
        --vnet-subnet-id <YOUR_SUBNET_RESOURCE_ID>
    

FIPS-kompatibilis csomópontkészletek

A Federal Information Process Standard (FIPS) AKS-fürthöz való engedélyezéséről további információt az Azure Kubernetes Service (AKS) csomópontkészleteinek Federal Information Process Standard (FIPS) engedélyezése című témakörben talál.

Windows Server-csomópontkészletek a containerd

A Kubernetes 1.20-as és újabb verziójától kezdve a Windows Server 2019 csomópontkészletek tároló futtatókörnyezeteként is megadható containerd . A Kubernetes 1.23-tól containerd kezdve a Windows alapértelmezett és egyetlen tároló-futtatókörnyezete.

Fontos

Windows Server 2019-csomópontkészletek használata containerd esetén:

  • A vezérlősíknak és a Windows Server 2019-csomópontkészletnek egyaránt a Kubernetes 1.20-es vagy újabb verzióját kell használnia.
  • Amikor Windows Server-tárolók futtatásához hoz létre vagy frissít csomópontkészletet, az alapértelmezett érték --node-vm-sizea Standard_D2s_v3, amely a Kubernetes 1.20-as verziója előtt a Windows Server 2019-csomópontkészletek minimálisan ajánlott mérete volt. A Windows Server 2019-csomópontkészletek containerd minimális ajánlott mérete Standard_D4s_v3. A paraméter beállításakor --node-vm-size ellenőrizze a korlátozott virtuálisgép-méretek listáját.
  • Azt javasoljuk, hogy használjon szennyezettségeket vagy címkéket a Windows Server 2019-csomópontkészletekkel, amelyek futnak containerd és tűrik a csomópontválasztókat az üzemelő példányokkal, így garantálva, hogy a számítási feladatok megfelelően legyenek ütemezve.

Windows Server-csomópontkészlet hozzáadása containerd

  • Adjon hozzá egy Windows Server-csomópontkészletet containerd a meglévő fürthöz a az aks nodepool addkövetkező használatával: .

    Feljegyzés

    Ha nem adja meg az WindowsContainerRuntime=containerd egyéni fejlécet, a csomópontkészlet alapértelmezés szerint továbbra is tároló futtatókörnyezetként működik containerd .

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --os-type Windows \
        --name npwcd \
        --node-vm-size Standard_D4s_v3 \
        --kubernetes-version 1.20.5 \
        --aks-custom-headers WindowsContainerRuntime=containerd \
        --node-count 1
    

Adott meglévő Windows Server-csomópontkészlet frissítése containerd

  • Frissítsen egy adott csomópontkészletet a Dockerről containerd a az aks nodepool upgrade parancs használatára.

    az aks nodepool upgrade \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name npwd \
        --kubernetes-version 1.20.7 \
        --aks-custom-headers WindowsContainerRuntime=containerd
    

Az összes meglévő Windows Server-csomópontkészlet frissítése containerd

  • Frissítse az összes csomópontkészletet a Dockerből containerd a az aks nodepool upgrade parancs használatára.

    az aks nodepool upgrade \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --kubernetes-version 1.20.7 \
        --aks-custom-headers WindowsContainerRuntime=containerd
    

Csomópontkészlet törlése

Ha már nincs szüksége csomópontkészletre, törölheti és eltávolíthatja a mögöttes virtuálisgép-csomópontokat.

Figyelem

Csomópontkészlet törlésekor az AKS nem végez kordont és ürítést, és a csomópontkészlet törlésekor nem áll rendelkezésre helyreállítási lehetőség az adatvesztésre. Ha a podok nem ütemezhetők más csomópontkészletekre, ezek az alkalmazások elérhetetlenné válnak. Győződjön meg arról, hogy nem töröl csomópontkészletet, ha a használatban lévő alkalmazások nem rendelkeznek adatmentéssel, vagy nem futtathatók a fürt más csomópontkészletei. A törölni kívánt csomópontkészleten jelenleg futó podok átütemezésének minimálisra csökkentése érdekében törlés előtt végezzen kordont és ürítést a csomópontkészlet összes csomópontján.

  • Törölje a csomópontkészletet a az aks nodepool delete paranccsal, és adja meg a csomópontkészlet nevét.

    az aks nodepool delete -g myResourceGroup --cluster-name myAKSCluster --name mynodepool --no-wait
    

    A csomópontok és a csomópontkészlet törlése néhány percet vesz igénybe.

Következő lépések

Ebből a cikkből megtudhatja, hogyan hozhat létre több csomópontkészletet egy AKS-fürtben. Ha többet szeretne megtudni arról, hogyan kezelheti a több csomópontkészletet, olvassa el az Azure Kubernetes Service (AKS) fürt több csomópontkészletének kezelése című témakört.