Aracılığıyla paylaş


Azure Kubernetes Service (AKS) kümesinde etiketleri kullanma

Birden çok düğüm havuzunuz varsa, düğüm havuzu oluşturma işlemi sırasında bir etiket eklemek isteyebilirsiniz. Kubernetes etiketleri düğümler için zamanlama kurallarını işler. İstediğiniz zaman düğüm havuzuna etiket ekleyebilir ve bunları düğüm havuzundaki tüm düğümlere uygulayabilirsiniz.

Bu nasıl yapılır kılavuzunda, Azure Kubernetes Service (AKS) kümesinde etiketleri kullanmayı öğreneceksiniz.

Önkoşullar

Azure CLI sürüm 2.2.0 veya üzerinin yüklü ve yapılandırılmış olması gerekir. Sürümü bulmak için az --version komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure CLI yükleme.

Etiketli bir AKS kümesi oluşturma

  1. komutunu kullanarak az aks create etiketli bir AKS kümesi oluşturun ve etiketlerinizi ayarlamak için parametresini belirtin --node-labels . Etiketler bir anahtar/değer çifti olmalı ve geçerli bir söz dizimine sahip olmalıdır.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --node-count 2 \
        --nodepool-labels dept=IT costcenter=9000
    
  2. komutunu kullanarak etiketlerin kubectl get nodes --show-labels ayarlandığını doğrulayın.

    kubectl get nodes --show-labels | grep -e "costcenter=9000" -e "dept=IT"
    

Etiketli bir düğüm havuzu oluşturma

  1. komutunu kullanarak az aks nodepool add etiketli bir düğüm havuzu oluşturun ve parametrenin parametreleri ve etiketleri için --name--labels bir ad belirtin. Etiketler bir anahtar/değer çifti olmalı ve geçerli bir söz dizimine sahip olmalıdır

    Aşağıdaki örnek komut, dept=HR ve costcenter=5000 etiketlerini içeren labelnp adlı bir düğüm havuzu oluşturur.

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name labelnp \
        --node-count 1 \
        --labels dept=HR costcenter=5000 \
        --no-wait
    

    Komutun aşağıdaki örnek çıktısıaz aks nodepool list, labelnp düğüm havuzunun Belirtilen nodeLabels ile düğüm oluşturma olduğunu gösterir:

    [
      {
        ...
        "count": 1,
        ...
        "name": "labelnp",
        "orchestratorVersion": "1.15.7",
        ...
        "provisioningState": "Creating",
        ...
        "nodeLabels":  {
          "costcenter": "5000",
          "dept": "HR"
        },
        ...
      },
     ...
    ]
    
  2. komutunu kullanarak etiketlerin kubectl get nodes --show-labels ayarlandığını doğrulayın.

    kubectl get nodes --show-labels | grep -e "costcenter=5000" -e "dept=HR"
    

Mevcut düğüm havuzlarındaki etiketleri güncelleştirme

  1. komutunu kullanarak mevcut düğüm havuzundaki bir etiketi güncelleştirin az aks nodepool update . Mevcut düğüm havuzlarında etiketlerin güncelleştirilmesi, eski etiketlerin üzerine yeni etiketler yazar. Etiketler bir anahtar/değer çifti olmalı ve geçerli bir söz dizimine sahip olmalıdır.

    az aks nodepool update \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name labelnp \
        --labels dept=ACCT costcenter=6000 \
        --no-wait
    
  2. komutunu kullanarak etiketlerin kubectl get nodes --show-labels ayarlandığını doğrulayın.

    kubectl get nodes --show-labels | grep -e "costcenter=6000" -e "dept=ACCT"
    

Kullanılamayan etiketler

Ayrılmış sistem etiketleri

2021-08-19 AKS sürümünden bu yana AKS ayrılmış etiketlerde değişiklik yapma özelliğini durdurdu. Bu etiketlerin değiştirilmesi bir hata iletisiyle sonuçlanır.

Aşağıdaki etiketler AKS ayrılmış etiketleridir. Sanal düğüm kullanımı , bu etiketlerin sanal düğümlerde desteklenen bir sistem özelliği olup olmadığını belirtir. Bu sistem özelliklerinin değiştirdiği bazı özellikler, konağın değiştirilmesini gerektirdiğinden sanal düğümlerde kullanılamaz.

Etiket Değer Örnek/Seçenekler Sanal düğüm kullanımı
kubernetes.azure.com/agentpool <aracı havuzu adı> nodepool1 Aynısı
kubernetes.io/arch amd64 Çalışma zamanı. GOARCH Yok
kubernetes.io/os <İşletim Sistemi Türü> Linux/Windows Aynısı
node.kubernetes.io/instance-type <VM boyutu> Standard_NC6s_v3 Sanal
topology.kubernetes.io/region <Azure bölgesi> westus2 Aynısı
topology.kubernetes.io/zone <Azure bölgesi> 0 Aynısı
kubernetes.azure.com/cluster <MC_RgName> MC_aks_myAKSCluster_westus2 Aynısı
kubernetes.azure.com/mode <mod> Kullanıcı veya sistem User
kubernetes.azure.com/role aracı Aracı Aynısı
kubernetes.azure.com/scalesetpriority <VMSS önceliği> Spot veya normal Yok
kubernetes.io/hostname <Hostname> aks-nodepool-000000000-vmss0000000 Aynısı
kubernetes.azure.com/storageprofile <İşletim sistemi disk depolama profili> Yönetilen Yok
kubernetes.azure.com/storagetier <İşletim sistemi disk depolama katmanı> Premium_LRS Yok
kubernetes.azure.com/instance-sku <SKU ailesi> Standard_N Sanal
kubernetes.azure.com/node-image-version <VHD sürümü> AKSUbuntu-1804-2020.03.05 Sanal düğüm sürümü
kubernetes.azure.com/subnet <nodepool alt ağ adı> subnetName Sanal düğüm alt ağ adı
kubernetes.azure.com/vnet <nodepool sanal ağ adı> vnetName Sanal düğüm sanal ağı
kubernetes.azure.com/ppg <nodepool ppg adı> ppgName Yok
kubernetes.azure.com/encrypted-set <nodepool şifrelenmiş küme adı> encrypted-set-name Yok
kubernetes.azure.com/accelerator <Hızlandırıcı> nvidia Yok
kubernetes.azure.com/fips_enabled <fips etkin mi?> true Yok
kubernetes.azure.com/os-sku <os/sku> İşletim sistemi SKU'su oluşturma veya güncelleştirme Linux
  • Aynı , etiketler için beklenen değerlerin standart düğüm havuzuyla sanal düğüm havuzu arasında farklı olmadığı yerlerde de bulunur. Sanal düğüm podları temel alınan herhangi bir sanal makineyi (VM) göstermediğinden, VM SKU değerleri SKU Sanal Ile değiştirilir.
  • Sanal düğüm sürümü , sanal Kubelet-ACI bağlayıcı sürümünün geçerli sürümünü ifade eder.
  • Sanal düğüm alt ağı adı , sanal düğüm podlarının Azure Container Instance'a (ACI) dağıtıldığı alt ağın adıdır.
  • Sanal düğüm sanal ağı , sanal düğüm podlarının ACI üzerinde dağıtıldığı alt ağı içeren sanal ağın adıdır.

Ayrılmış ön ekler

Aşağıdaki ön ekler AKS ayrılmış ön ekleridir ve herhangi bir düğüm için kullanılamaz:

  • kubernetes.azure.com/
  • kubernetes.io/

Ayrılmış ön ekler hakkında daha fazla bilgi için bkz . Kubernetes iyi bilinen etiketler, ek açıklamalar ve renk tonları.

Kullanım dışı bırakılmış etiketler

Kubernetes v1.24 sürümüyle birlikte aşağıdaki etiketlerin kullanımdan kaldırılması planlanmaktadır. Tüm etiket başvurularını önerilen yerine kullanmanız gerekir.

Etiket Önerilen yedek Bakımcı
failure-domain.beta.kubernetes.io/region topology.kubernetes.io/region Kubernetes
failure-domain.beta.kubernetes.io/zone topology.kubernetes.io/zone Kubernetes
beta.kubernetes.io/arch kubernetes.io/arch Kubernetes
beta.kubernetes.io/instance-type node.kubernetes.io/instance-type Kubernetes
beta.kubernetes.io/os kubernetes.io/os Kubernetes
node-role.kubernetes.io/agent* kubernetes.azure.com/role=agent Azure Kubernetes Service
kubernetes.io/role* kubernetes.azure.com/role=agent Azure Kubernetes Service
Agentpool* kubernetes.azure.com/agentpool Azure Kubernetes Service
Depolama profile* kubernetes.azure.com/storageprofile Azure Kubernetes Service
Depolama tier* kubernetes.azure.com/storagetier Azure Kubernetes Service
Hızlandırıcı* kubernetes.azure.com/accelerator Azure Kubernetes Service

*Yeni kullanım dışı bırakıldı. Daha fazla bilgi için bkz . Sürüm Notları.

Sonraki adımlar

Kubernetes etiketleri belgelerinde Kubernetes etiketleri hakkında daha fazla bilgi edinin.