Aracılığıyla paylaş


Azure Kubernetes Service'te (AKS) küme için düğüm havuzlarını yönetme

Azure Kubernetes Service'te (AKS), aynı yapılandırmadaki düğümler birlikte düğüm havuzları halinde gruplandırılır. Bu düğüm havuzları, uygulamalarınızı çalıştıran temel vm'leri içerir. AKS kümesi oluşturduğunuzda, ilk düğüm sayısını ve bunların boyutunu (SKU) tanımlarsınız. Uygulama talepleri değiştikçe düğüm havuzlarınızdaki ayarları değiştirmeniz gerekebilir. Örneğin, düğüm havuzundaki düğüm sayısını ölçeklendirmeniz veya düğüm havuzunun Kubernetes sürümünü yükseltmeniz gerekebilir.

Bu makalede AKS kümesindeki bir veya daha fazla düğüm havuzunun nasıl yönetileceğini gösterir.

Başlamadan önce

Sınırlamalar

Birden çok düğüm havuzunu destekleyen AKS kümelerini oluşturur ve yönetirken aşağıdaki sınırlamalar geçerlidir:

  • Bkz. Azure Kubernetes Service'te (AKS) kotalar, sanal makine boyutu kısıtlamaları ve bölge kullanılabilirliği.
  • Sistem havuzları en az bir düğüm içermelidir ve kullanıcı düğümü havuzları sıfır veya daha fazla düğüm içerebilir.
  • Düğüm havuzunu oluşturduktan sonra vm boyutunu değiştiremezsiniz.
  • Küme oluşturma zamanında birden çok düğüm havuzu oluşturduğunuzda, düğüm havuzları tarafından kullanılan tüm Kubernetes sürümleri denetim düzlemi için ayarlanan sürümle eşleşmelidir. Düğüm başına havuz işlemlerini kullanarak kümeyi sağladıktan sonra güncelleştirmeler yapabilirsiniz.
  • Yükseltme ve ölçeklendirme işlemlerini küme veya düğüm havuzunda aynı anda çalıştıramazsınız. Bunları aynı anda çalıştırmayı denerseniz bir hata alırsınız. Her işlem türü, aynı kaynakta bir sonraki istek öncesinde hedef kaynakta tamamlanmalıdır. Daha fazla bilgi için sorun giderme kılavuzuna bakın.

Tek düğüm havuzunu yükseltme

Not

Düğüm havuzu işletim sistemi görüntü sürümü, kümenin Kubernetes sürümüne bağlıdır. Küme yükseltmesi sonrasında yalnızca işletim sistemi görüntü yükseltmeleri alırsınız.

Bu örnekte mynodepool düğüm havuzunu yükselteceğiz. İki düğüm havuzu olduğundan, yükseltmek için komutunu kullanmalıyız az aks nodepool upgrade .

  1. komutunu kullanarak az aks get-upgrades kullanılabilir yükseltmeleri denetleyin.

    az aks get-upgrades --resource-group myResourceGroup --name myAKSCluster
    
  2. komutunu kullanarak mynodepool düğüm havuzunu yükseltinaz aks nodepool upgrade.

    az aks nodepool upgrade \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name mynodepool \
        --kubernetes-version KUBERNETES_VERSION \
        --no-wait
    
  3. komutunu kullanarak düğüm havuzlarınızın durumunu listeleyin az aks nodepool list .

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

    Aşağıdaki örnek çıktıda mynodepool'un Yükseltme durumunda olduğu gösterilmektedir:

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

    Düğümleri belirtilen sürüme yükseltmek birkaç dakika sürer.

En iyi yöntem olarak, AKS kümesindeki tüm düğüm havuzlarını aynı Kubernetes sürümüne yükseltmeniz gerekir. varsayılan davranışı az aks upgrade , bu hizalamayı elde etmek için tüm düğüm havuzlarını kontrol düzlemiyle birlikte yükseltmektir. Tek tek düğüm havuzlarını yükseltme özelliği, yukarıda belirtilen kısıtlamalar dahilinde uygulama çalışma süresini korumak için sıralı bir yükseltme gerçekleştirmenize ve düğüm havuzları arasında pod zamanlamanıza olanak tanır.

Birden çok düğüm havuzuyla küme denetim düzlemi yükseltme

Not

Kubernetes standart AnlamSal Sürüm Oluşturma sürüm oluşturma düzenini kullanır. Sürüm numarası x.y.z olarak ifade edilir; burada x ana sürümdür, y ikincil sürümdür ve z düzeltme eki sürümüdür. Örneğin, sürüm 1.12.6'da 1 ana sürümdür, 12 ikincil sürümdür ve 6 düzeltme eki sürümüdür. Denetim düzleminin Kubernetes sürümü ve ilk düğüm havuzu küme oluşturma sırasında ayarlanır. Diğer düğüm havuzları, kümeye eklendiklerinde Kubernetes sürümlerini ayarlar. Kubernetes sürümleri düğüm havuzları arasında ve düğüm havuzu ile denetim düzlemi arasında farklılık gösterebilir.

AKS kümesi, kubernetes sürümleriyle ilişkili iki küme kaynak nesnesine sahiptir:

  1. Küme denetim düzlemi Kubernetes sürümü ve
  2. Kubernetes sürümüne sahip bir düğüm havuzu.

Denetim düzlemi bir veya birden çok düğüm havuzuna eşler. Yükseltme işleminin davranışı, hangi Azure CLI komutunu kullandığınıza bağlıdır.

  • az aks upgrade , denetim düzlemini ve kümedeki tüm düğüm havuzlarını aynı Kubernetes sürümüne yükseltir.
  • az aks upgrade bayrağıyla --control-plane-only yalnızca küme denetim düzlemini yükseltip tüm düğüm havuzlarını değiştirmeden bırakır.
  • az aks nodepool upgrade yalnızca belirtilen Kubernetes sürümüne sahip hedef düğüm havuzunu yükseltir.

Yükseltmeler için doğrulama kuralları

Küme denetim düzlemi ve düğüm havuzları için Kubernetes yükseltmeleri aşağıdaki kural kümeleri kullanılarak doğrulanır:

  • Düğüm havuzlarını yükseltmek için geçerli sürümler için kurallar:

    • Düğüm havuzu sürümü, denetim düzlemi ile aynı ana sürüme sahip olmalıdır.
    • Düğüm havuzu ikincil sürümü, denetim düzlemi sürümünün iki ikincil sürümünde olmalıdır.
    • Düğüm havuzu sürümü denetim major.minor.patch sürümünden büyük olamaz.
  • Yükseltme işlemi gönderme kuralları:

    • Denetim düzlemini veya düğüm havuzu Kubernetes sürümünü düşüremezsiniz.
    • Düğüm havuzu Kubernetes sürümü belirtilmezse, davranış istemciye bağlıdır. Resource Manager şablonlarında bildirim, düğüm havuzu için tanımlanan mevcut sürüme geri döner. Hiçbir şey ayarlı değilse, geri dönmek için kontrol düzlemi sürümünü kullanır.
    • Tek bir denetim düzleminde veya düğüm havuzu kaynağında aynı anda birden çok işlem gönderemezsiniz. Belirli bir zamanda bir denetim düzlemi veya düğüm havuzunu yükseltebilir veya ölçeklendirin.

Düğüm havuzunu el ile ölçeklendirme

Uygulama iş yükünüz değiştikçe düğüm havuzundaki düğüm sayısını ölçeklendirmeniz gerekebilir. Düğüm sayısı artırılabilir veya azaltılabilir.

  1. komutunu kullanarak düğüm havuzundaki düğüm sayısını ölçeklendirin az aks node pool scale .

    az aks nodepool scale \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name mynodepool \
        --node-count 5 \
        --no-wait
    
  2. komutunu kullanarak düğüm havuzlarınızın durumunu listeleyin az aks node pool list .

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

    Aşağıdaki örnek çıktıda mynodepool'un yeni beş düğüm sayısıyla Ölçeklendirme durumunda olduğu gösterilmektedir:

    [
      {
        ...
        "count": 5,
        ...
        "name": "mynodepool",
        "orchestratorVersion": "1.15.7",
        ...
        "provisioningState": "Scaling",
        ...
        "vmSize": "Standard_DS2_v2",
        ...
      },
      {
        ...
        "count": 2,
        ...
        "name": "nodepool1",
        "orchestratorVersion": "1.15.7",
        ...
        "provisioningState": "Succeeded",
        ...
        "vmSize": "Standard_DS2_v2",
        ...
      }
    ]
    

    Ölçeklendirme işleminin tamamlanması birkaç dakika sürer.

Küme otomatik ölçeklendiricisini kullanarak belirli bir düğüm havuzunu otomatik olarak ölçeklendirme

AKS, küme otomatik ölçeklendiricisi adlı bir özellikle düğüm havuzlarını otomatik olarak ölçeklendirmek için ayrı bir özellik sunar. Bu özelliği düğüm havuzu başına benzersiz minimum ve maksimum ölçek sayılarıyla etkinleştirebilirsiniz.

Daha fazla bilgi için bkz . Küme otomatik ölçeklendiricisini kullanma.

Mevcut düğüm havuzundaki belirli VM'leri kaldırma (Önizleme)

Önemli

AKS önizleme özellikleri self servis ve kabul temelinde kullanılabilir. Önizlemeler "olduğu gibi" ve "kullanılabilir" olarak sağlanır ve hizmet düzeyi sözleşmelerinin ve sınırlı garantinin dışında tutulur. AKS önizlemeleri, müşteri desteği tarafından kısmen en iyi çaba temelinde ele alınmaktadır. Bu nedenle, bu özellikler üretim kullanımı için tasarlanmamıştır. Daha fazla bilgi için aşağıdaki destek makalelerine bakın:

  1. veya komutunu kullanarak uzantıyı aks-preview kaydedin veya az extension update güncelleştirinaz extension add.

    # Register the aks-preview extension
    az extension add --name aks-preview
    
    # Update the aks-preview extension
    az extension update --name aks-preview
    
  2. komutunu kullanarak mevcut düğümleri listeleyin kubectl get nodes .

    kubectl get nodes
    

    Çıkışınız aşağıdaki örnek çıkışa benzer olmalıdır:

    NAME                                 STATUS   ROLES   AGE   VERSION
    aks-mynodepool-20823458-vmss000000   Ready    agent   63m   v1.21.9
    aks-mynodepool-20823458-vmss000001   Ready    agent   63m   v1.21.9
    aks-mynodepool-20823458-vmss000002   Ready    agent   63m   v1.21.9
    
  3. komutunu kullanarak belirtilen VM'leri az aks nodepool delete-machines silin. Yer tutucuları kendi değerlerinizle değiştirdiğinden emin olun.

    az aks nodepool delete-machines \
        --resource-group <resource-group-name> \
        --cluster-name <cluster-name> \
        --name <node-pool-name>
        --machine-names <vm-name-1> <vm-name-2>
    
  4. komutunu kullanarak kubectl get nodes VM'lerin başarıyla silindiğini doğrulayın.

    kubectl get nodes
    

    Çıkışınız artık komutta belirttiğiniz VM'leri az aks nodepool delete-machines içermemelidir.

Kapasite rezervasyon gruplarını düğüm havuzları ile ilişkilendirme

İş yükünüz değiştikçe, düğüm havuzlarınız için ayrılmış kapasiteyi garanti etmek üzere mevcut kapasite rezervasyon gruplarını düğüm havuzları ile ilişkilendirebilirsiniz.

AKS ile kapasite rezervasyon gruplarını kullanma önkoşulları

  • CLI sürüm 2.56 veya üzerini ve API sürüm 2023-10-01 veya üzerini kullanın.

  • Kapasite rezervasyon grubu zaten mevcut olmalı ve en az bir kapasite rezervasyonu içermelidir, aksi takdirde düğüm havuzu bir uyarıyla kümeye eklenir ve hiçbir kapasite rezervasyon grubu ilişkilendirilmemiş olur. Daha fazla bilgi için bkz . Kapasite rezervasyon grupları.

  • Kapasite rezervasyon grubunu (CRG) içeren kaynak grubu için kullanıcı tarafından atanan bir yönetilen kimlik oluşturmanız gerekir. Sistem tarafından atanan yönetilen kimlikler bu özellik için çalışmaz. Aşağıdaki örnekte ortam değişkenlerini kendi değerlerinizle değiştirin.

    IDENTITY_NAME=myID
    RG_NAME=myResourceGroup
    CLUSTER_NAME=myAKSCluster
    VM_SKU=Standard_D4s_v3
    NODE_COUNT=2
    LOCATION=westus2
    az identity create --name $IDENTITY_NAME --resource-group $RG_NAME  
    IDENTITY_ID=$(az identity show --name $IDENTITY_NAME --resource-group $RG_NAME --query identity.id -o tsv)
    
  • Rolü yukarıda oluşturulan kullanıcı tarafından atanan kimliğe atamanız Contributor gerekir. Diğer ayrıntılar için bkz . Azure rolü atama adımları.

  • Yeni bir küme oluşturun ve yeni oluşturulan kimliği atayın.

      az aks create \
          --resource-group $RG_NAME \
          --name $CLUSTER_NAME \
          --location $LOCATION \
          --node-vm-size $VM_SKU --node-count $NODE_COUNT \
          --assign-identity $IDENTITY_ID \
          --generate-ssh-keys 
    
  • Ayrıca, güncelleştirme komutuyla mevcut yönetilen kümede kullanıcı tarafından yönetilen kimliği atayabilirsiniz.

    az aks update \
        --resource-group $RG_NAME \
        --name $CLUSTER_NAME \
        --location $LOCATION \
        --node-vm-size $VM_SKU \
        --node-count $NODE_COUNT \
        --enable-managed-identity \
        --assign-identity $IDENTITY_ID         
    

Mevcut kapasite rezervasyon grubunu düğüm havuzuyla ilişkilendirme

komutunu kullanarak mevcut bir kapasite rezervasyon grubunu düğüm havuzuyla ilişkilendirin az aks nodepool add ve bayrağıyla --crg-id bir kapasite rezervasyon grubu belirtin. Aşağıdaki örnekte "myCRG" adlı bir CRG'niz olduğu varsayılır.

RG_NAME=myResourceGroup
CLUSTER_NAME=myAKSCluster
NODEPOOL_NAME=myNodepool
CRG_NAME=myCRG
CRG_ID=$(az capacity reservation group show --capacity-reservation-group $CRG_NAME --resource-group $RG_NAME --query id -o tsv)
az aks nodepool add --resource-group $RG_NAME --cluster-name $CLUSTER_NAME --name $NODEPOOL_NAME --crg-id $CRG_ID

Mevcut kapasite rezervasyon grubunu sistem düğümü havuzuyla ilişkilendirme

Mevcut kapasite rezervasyon grubunu bir sistem düğümü havuzuyla ilişkilendirmek için, kümeyi kullanıcı tarafından atanan kimlikle CRG'nizdeki Katkıda Bulunan rolüyle ve küme oluşturma sırasında CRG'nin kendisiyle ilişkilendirin. az aks create ve --crg-id bayraklarıyla --assign-identity komutunu kullanın.

IDENTITY_NAME=myID
RG_NAME=myResourceGroup
CLUSTER_NAME=myAKSCluster
NODEPOOL_NAME=myNodepool
CRG_NAME=myCRG
CRG_ID=$(az capacity reservation group show --capacity-reservation-group $CRG_NAME --resource-group $RG_NAME --query id -o tsv)
IDENTITY_ID=$(az identity show --name $IDENTITY_NAME --resource-group $RG_NAME --query identity.id -o tsv)

az aks create \
    --resource-group $RG_NAME \
    --cluster-name $CLUSTER_NAME \
    --crg-id $CRG_ID \
    --assign-identity $IDENTITY_ID \
    --generate-ssh-keys

Not

Düğüm havuzunun silinmesi, düğüm havuzu silinmeden önce düğüm havuzunun ilişkili kapasite rezervasyon grubundan örtük olarak ayrılmasını sağlar. Bir kümenin silinmesi, bu kümedeki tüm düğüm havuzlarının ilişkili kapasite rezervasyon gruplarından örtük olarak ayrılmasını sağlar.

Not

Mevcut düğüm havuzunu kapasite rezervasyon grubuyla güncelleştiremezsiniz. Önerilen yaklaşım, düğüm havuzu oluşturma sırasında kapasite rezervasyon grubunu ilişkilendirmektir.

Düğüm havuzu için VM boyutu belirtme

Farklı VM boyutlarına ve özelliklerine sahip düğüm havuzları oluşturmanız gerekebilir. Örneğin, büyük miktarda CPU veya belleğe sahip düğümler içeren bir düğüm havuzu veya GPU desteği sağlayan bir düğüm havuzu oluşturabilirsiniz. Sonraki bölümde, Kubernetes zamanlayıcısına bu düğümlerde çalışabilen podlara erişimi nasıl sınırlayabileceğinizi bildirmek için renk tonlarını ve toleransları kullanacaksınız.

Aşağıdaki örnekte, Standard_NC6s_v3 VM boyutunu kullanan GPU tabanlı bir düğüm havuzu oluşturacağız. Bu VM'ler NVIDIA Tesla K80 kart ile desteklenmektedir. Bilgi için bkz . Azure'da Linux sanal makineleri için kullanılabilir boyutlar.

  1. komutunu kullanarak az aks node pool add bir düğüm havuzu oluşturun. gpunodepool adını belirtin ve parametresini --node-vm-size kullanarak Standard_NC6 boyutunu belirtin.

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name gpunodepool \
        --node-count 1 \
        --node-vm-size Standard_NC6s_v3 \
        --no-wait
    
  2. komutunu kullanarak düğüm havuzunun az aks nodepool list durumunu denetleyin.

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

    Aşağıdaki örnek çıktı, gpunodepool düğüm havuzunun belirtilen VmSize ile düğüm oluşturma olduğunu gösterir:

    [
      {
        ...
        "count": 1,
        ...
        "name": "gpunodepool",
        "orchestratorVersion": "1.15.7",
        ...
        "provisioningState": "Creating",
        ...
        "vmSize": "Standard_NC6s_v3",
        ...
      },
      {
        ...
        "count": 2,
        ...
        "name": "nodepool1",
        "orchestratorVersion": "1.15.7",
        ...
        "provisioningState": "Succeeded",
        ...
        "vmSize": "Standard_DS2_v2",
        ...
      }
    ]
    

    Gpunodepool'un başarıyla oluşturulması birkaç dakika sürer.

Düğüm havuzu için renk tonu, etiket veya etiket belirtme

Düğüm havuzu oluştururken, bu havuza renk tonları, etiketler veya etiketler ekleyebilirsiniz. Taint, etiket veya etiket eklediğinizde, bu düğüm havuzundaki tüm düğümler de bu taint, etiket veya etiketi alır.

Önemli

Kullanarak düğüm havuzunun az aks nodepooltamamı için düğümlere renk tonları, etiketler veya etiketler eklenmelidir. Bir düğüm havuzundaki tek tek düğümlere renk tonları, etiketler veya etiketler uygulamak için kullanılmasını kubectl önermeyiz.

Düğüm havuzu renk tonlarını ayarlama

AKS iki tür düğüm renk tonlarını destekler: düğüm taint'leri ve düğüm başlatma taint'leri (önizleme). Daha fazla bilgi için bkz . Azure Kubernetes Service (AKS) kümesinde düğüm renk tonlarını kullanma.

Gelişmiş Kubernetes zamanlanmış özelliklerini kullanma hakkında daha fazla bilgi için bkz . AKS'de gelişmiş zamanlayıcı özellikleri için en iyi yöntemler

Düğüm havuzu toleranslarını ayarlama

Önceki adımda, düğüm havuzunuzu oluştururken sku=gpu:NoSchedule taint'i uyguladınız. Aşağıdaki örnek YAML bildirimi, Kubernetes zamanlayıcısının bu düğüm havuzundaki bir düğümde NGINX podunu çalıştırmasına izin vermek için bir tolerans kullanır.

  1. Adlı nginx-toleration.yaml bir dosya oluşturun ve aşağıdaki YAML örneğinde kopyalayın.

    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"
    
  2. komutunu kullanarak podu zamanlayın kubectl apply .

    kubectl apply -f nginx-toleration.yaml
    

    Pod'un zamanlanması ve NGINX görüntüsünün çekilmesi birkaç saniye sürer.

  3. komutunu kullanarak kubectl describe pod durumu denetleyin.

    kubectl describe pod mypod
    

    Aşağıdaki daraltılmış örnek çıktıda sku=gpu:NoSchedule toleransı uygulandığı gösterilmektedir. Olaylar bölümünde zamanlayıcı podu aks-taintnp-28993262-vmss000000 düğümüne atadı:

    [...]
    Tolerations:     node.kubernetes.io/not-ready:NoExecute for 300s
                     node.kubernetes.io/unreachable:NoExecute for 300s
                     sku=gpu:NoSchedule
    Events:
      Type    Reason     Age    From                Message
      ----    ------     ----   ----                -------
      Normal  Scheduled  4m48s  default-scheduler   Successfully assigned default/mypod to aks-taintnp-28993262-vmss000000
      Normal  Pulling    4m47s  kubelet             pulling image "mcr.microsoft.com/oss/nginx/nginx:1.15.9-alpine"
      Normal  Pulled     4m43s  kubelet             Successfully pulled image "mcr.microsoft.com/oss/nginx/nginx:1.15.9-alpine"
      Normal  Created    4m40s  kubelet             Created container
      Normal  Started    4m40s  kubelet             Started container
    

    Yalnızca bu tolerans uygulanmış podlar taintnp içindeki düğümlerde zamanlanabilir. Diğer tüm podlar nodepool1 düğüm havuzunda zamanlanır. Daha fazla düğüm havuzu oluşturursanız, bu düğüm kaynaklarında zamanlanacak podları sınırlamak için renk tonlarını ve toleransları kullanabilirsiniz.

Düğüm havuzu etiketlerini ayarlama

Daha fazla bilgi için bkz . Azure Kubernetes Service (AKS) kümesinde etiketleri kullanma.

Düğüm havuzu Azure etiketlerini ayarlama

Daha fazla bilgi için bkz . Azure Kubernetes Service'te (AKS) Azure etiketlerini kullanma.

Resource Manager şablonu kullanarak düğüm havuzlarını yönetme

Kaynakları oluşturmak ve yönetmek için bir Azure Resource Manager şablonu kullandığınızda, şablonunuzun ayarlarını değiştirebilir ve kaynakları güncelleştirmek için yeniden dağıtabilirsiniz. AKS düğüm havuzlarıyla, AKS kümesi oluşturulduktan sonra ilk düğüm havuzu profilini güncelleştiremezsiniz. Bu davranış, mevcut bir Resource Manager şablonunu güncelleştirememenizi, düğüm havuzlarını değiştirememenizi ve sonra şablonu yeniden dağıtamamanızı sağlar. Bunun yerine, mevcut AKS kümesi için düğüm havuzlarını güncelleştiren ayrı bir Resource Manager şablonu oluşturmanız gerekir.

  1. gibi aks-agentpools.jsonbir şablon oluşturun ve aşağıdaki örnek bildirimi yapıştırın. Değerleri gerektiği gibi düzenlediğinizden emin olun. Bu örnek şablon aşağıdaki ayarları yapılandırıyor:

    • myagentpool adlı Linux düğüm havuzunu üç düğüm çalıştıracak şekilde güncelleştirir.
    • Düğüm havuzundaki düğümleri Kubernetes sürüm 1.15.7'yi çalıştıracak şekilde ayarlar.
    • Düğüm boyutunu Standard_DS2_v2 olarak tanımlar.
    {
        "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
        "contentVersion": "1.0.0.0",
        "parameters": {
            "clusterName": {
                "type": "string",
                "metadata": {
                    "description": "The name of your existing AKS cluster."
                }
            },
            "location": {
                "type": "string",
                "metadata": {
                    "description": "The location of your existing AKS cluster."
                }
            },
            "agentPoolName": {
                "type": "string",
                "defaultValue": "myagentpool",
                "metadata": {
                    "description": "The name of the agent pool to create or update."
                }
            },
            "vnetSubnetId": {
                "type": "string",
                "defaultValue": "",
                "metadata": {
                    "description": "The Vnet subnet resource ID for your existing AKS cluster."
                }
            }
        },
        "variables": {
            "apiVersion": {
                "aks": "2020-01-01"
            },
            "agentPoolProfiles": {
                "maxPods": 30,
                "osDiskSizeGB": 0,
                "agentCount": 3,
                "agentVmSize": "Standard_DS2_v2",
                "osType": "Linux",
                "vnetSubnetId": "[parameters('vnetSubnetId')]"
            }
        },
        "resources": [
            {
                "apiVersion": "2020-01-01",
                "type": "Microsoft.ContainerService/managedClusters/agentPools",
                "name": "[concat(parameters('clusterName'),'/', parameters('agentPoolName'))]",
                "location": "[parameters('location')]",
                "properties": {
                    "maxPods": "[variables('agentPoolProfiles').maxPods]",
                    "osDiskSizeGB": "[variables('agentPoolProfiles').osDiskSizeGB]",
                    "count": "[variables('agentPoolProfiles').agentCount]",
                    "vmSize": "[variables('agentPoolProfiles').agentVmSize]",
                    "osType": "[variables('agentPoolProfiles').osType]",
                    "type": "VirtualMachineScaleSets",
                    "vnetSubnetID": "[variables('agentPoolProfiles').vnetSubnetId]",
                    "orchestratorVersion": "1.15.7"
                }
            }
        ]
    }
    
  2. komutunu kullanarak şablonu dağıtın az deployment group create .

    az deployment group create \
        --resource-group myResourceGroup \
        --template-file aks-agentpools.json
    

    İpucu

    Aşağıdaki örnekte gösterildiği gibi etiket özelliğini şablona ekleyerek düğüm havuzunuza etiket ekleyebilirsiniz:

    ...
    "resources": [
    {
      ...
      "properties": {
        ...
        "tags": {
          "name1": "val1"
        },
        ...
      }
    }
    ...
    

    Resource Manager şablonunuzda tanımladığınız düğüm havuzu ayarlarına ve işlemlerine bağlı olarak AKS kümenizi güncelleştirmek birkaç dakika sürebilir.

Sonraki adımlar

  • Düğüm havuzları arasında podları denetleme hakkında daha fazla bilgi için bkz . AKS'de gelişmiş zamanlayıcı özellikleri için en iyi yöntemler.
  • AKS uygulamalarınızda gecikme süresini azaltmak için yakınlık yerleştirme gruplarını kullanın.
  • Düğümlerinizin trafiğe doğrudan hizmet vermesini sağlamak için örnek düzeyinde genel IP adreslerini kullanın.