Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
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
İş yükü zamanlaması için anahtar/değer meta verilerini ayarlamak üzere düğüm etiketleriyle bir AKS kümesi oluşturabilirsiniz.
export RANDOM_SUFFIX=$(openssl rand -hex 3)
export RESOURCE_GROUP="myResourceGroup$RANDOM_SUFFIX"
export AKS_CLUSTER_NAME="myAKSCluster$RANDOM_SUFFIX"
az group create --name $RESOURCE_GROUP --location $REGION
Sonuçlar:
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroupxxx",
"location": "eastus2",
"managedBy": null,
"name": "myResourceGroupxxx",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
Düğüm etiketlerini (örnek: Bilgi Teknolojileri departmanı=BT, maliyet merkezi=9000) belirterek AKS kümesini oluşturun.
az aks create \
--resource-group $RESOURCE_GROUP \
--name $AKS_CLUSTER_NAME \
--node-count 2 \
--nodepool-labels dept=IT costcenter=9000 \
--generate-ssh-keys --location $REGION
Sonuçlar:
{
"aadProfile": null,
"addonProfiles": {},
"agentPoolProfiles": [
{
"count": 2,
"enableAutoScaling": null,
"mode": "System",
"name": "nodepool1",
"nodeLabels": {
"costcenter": "9000",
"dept": "IT"
}
}
],
"dnsPrefix": "myaksclusterxxx-dns",
"fqdn": "myaksclusterxxx-xxxxxxxx.hcp.eastus2.azmk8s.io",
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxx",
"location": "eastus2",
"name": "myAKSClusterxxx",
"resourceGroup": "myResourceGroupxxx"
}
Etiketlerin ayarlandığını doğrulayın:
az aks get-credentials --resource-group $RESOURCE_GROUP --name $AKS_CLUSTER_NAME --overwrite-existing
kubectl get nodes --show-labels | grep -e "costcenter=9000" -e "dept=IT"
Etiketli bir düğüm havuzu oluşturun
Belirli zamanlama gereksinimlerine yönelik etiketlerle ek bir düğüm havuzu oluşturabilirsiniz.
export NODEPOOL_NAME="labelnp"
az aks nodepool add \
--resource-group $RESOURCE_GROUP \
--cluster-name $AKS_CLUSTER_NAME \
--name $NODEPOOL_NAME \
--node-count 1 \
--labels dept=HR costcenter=5000
Aşağıda az aks nodepool list komutunun çıktı örneği verilmiştir, bu da labelnp düğüm havuzunun belirtilen nodeLabels ile Oluşturma durumunda olduğunu gösteriyor:
az aks nodepool list --resource-group $RESOURCE_GROUP --cluster-name $AKS_CLUSTER_NAME
Sonuçlar:
[
{
"count": 2,
"name": "nodepool1",
"nodeLabels": {
"costcenter": "9000",
"dept": "IT"
}
},
{
"count": 1,
"name": "labelnp",
"nodeLabels": {
"costcenter": "5000",
"dept": "HR"
},
"provisioningState": "Creating"
}
]
Etiketlerin 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
Mevcut düğüm havuzundaki etiketleri güncelleştirebilirsiniz. Etiketleri yenilemenin eski etiketlerin yerini alacağını unutmayın.
az aks nodepool update \
--resource-group $RESOURCE_GROUP \
--cluster-name $AKS_CLUSTER_NAME \
--name $NODEPOOL_NAME \
--labels dept=ACCT costcenter=6000
Yeni etiketlerin ayarlandığını doğrulayın:
kubectl get nodes --show-labels | grep -e "costcenter=6000" -e "dept=ACCT"
Kullanılamayan etiketler
Rezerve edilmiş 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.
Şu etiketler AKS'ye ayrılmış etiketlerdir. Sanal düğüm kullanımı , bu etiketlerin sanal düğümlerde desteklenen bir sistem özelliği olup olmadığını belirtir. Bazı sistem özelliklerinin değiştirdiği bazı ayarlar, konağın değiştirilmesini gerektirdiği için sanal düğümler üzerinde kullanılamaz.
| Etiket | Değer | Örnek/Seçenekler | Sanal düğüm kullanımı |
|---|---|---|---|
kubernetes.azure.com/agentpool |
<aracı grubu adı> | nodepool1 |
Aynısı |
kubernetes.io/arch |
<çalışma zamanı. GOARCH> | amd64 |
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/managedby |
aks |
aks |
Yok |
kubernetes.azure.com/mode |
<mod> |
User veya system |
Kullanıcı |
kubernetes.azure.com/role |
temsilci | Agent |
Aynısı |
kubernetes.azure.com/scalesetpriority (kullanım dışı) |
<VMSS önceliği> |
spot (regular normal düğümlere yazılmaz). Bunun yerine tercih et kubernetes.azure.com/priority . |
Yok |
kubernetes.azure.com/priority |
<VM önceliği> |
spot veya regular |
Yok |
kubernetes.io/hostname |
<ana bilgisayar adı> | aks-nodepool-00000000-vmss000000 |
Aynısı |
kubernetes.azure.com/storageprofile |
<İşletim sistemi disk depolama profili> | Managed |
Yok |
kubernetes.azure.com/storagetier |
<İşletim sistemi disk depolama katmanı> | Premium_LRS |
Yok |
kubernetes.azure.com/node-image-version |
<VHD sürümü> | AKSUbuntu-1804-2020.03.05 |
Sanal düğüm sürümü |
kubernetes.azure.com/network-name |
<nodepool sanal ağ adı> | vnetName |
Sanal düğüm ve sanal ağ |
kubernetes.azure.com/network-subnet |
<nodepool alt ağ adı> | subnetName |
Sanal düğüm alt ağ adı |
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 işletim sistemi |
kubernetes.azure.com/os-sku-effective |
<gerçek işletim sistemi SKU'su seçildi> |
Ubuntu2204 veya benzer (asla Ubuntu değil, her zaman belirtilen sürüm) |
Yok |
kubernetes.azure.com/os-sku-requested |
<kullanıcı işletim sistemi SKU'su istedi> |
Ubuntu, Ubuntu2204veya benzeri (API'den istenen sku ile tam olarak eşleşir) |
Yok |
kubernetes.azure.com/sku-cpu |
<CPU sayısı> | 4 |
Aynısı |
kubernetes.azure.com/sku-memory |
<GB cinsinden bellek> | 16 |
Aynısı |
kubernetes.azure.com/nodepool-type |
<düğüm havuzu türü> | VirtualMachineScaleSets |
Yok |
- 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 olarak 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.
- Düğüm Otomatik Sağlama (Karpenter) düğümlerinin desteklenen seçicilere karşılık gelen ek etiketleri vardır.
-
kubernetes.azure.com/network-namevekubernetes.azure.com/network-subnettemel alınan kaynak adları 64 karakterden uzunsa kesilir.
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 Kubernetes iyi bilinen etiketler, ek açıklamalar ve noktalama başlığına bakın.
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 yedekle değiştirmelisiniz.
| 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 Profili* | kubernetes.azure.com/storageprofile | Azure Kubernetes Service |
| Depolama Katmanı* | 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.