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
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
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
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ırAş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" }, ... }, ... ]
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
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
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.