Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Pokud máte více fondů uzlů, můžete při vytváření fondu uzlů přidat popisek. Štítky Kubernetes spravují pravidla plánování pro uzly. Ty popisky můžete k fondu uzlů přidat kdykoli a použít je na všechny uzly ve fondu uzlů.
V tomto návodu se dozvíte, jak používat popisky v clusteru Azure Kubernetes Service (AKS).
Požadavky
Potřebujete nainstalovanou a nakonfigurovanou verzi Azure CLI 2.2.0 nebo novější. Verzi zjistíte spuštěním příkazu az --version. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace Azure CLI.
Vytvoření clusteru AKS s popiskem
Cluster AKS s popisky uzlů můžete vytvořit pro nastavení metadat klíč-hodnota pro plánování úloh.
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
Výsledky:
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroupxxx",
"location": "eastus2",
"managedBy": null,
"name": "myResourceGroupxxx",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
Vytvořte cluster AKS určující popisky uzlů (např. dept=IT, costcenter=9000):
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
Výsledky:
{
"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"
}
Ověřte, že byly štítky nastavené:
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"
Vytvoření fondu uzlů s popiskem
Můžete vytvořit další fond uzlů se štítky pro konkrétní potřeby plánování.
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
Následuje příklad výstupu az aks nodepool list z příkazu znázorňujícího fond uzlů labelnpvytváří uzly se zadanými nodeLabels:
az aks nodepool list --resource-group $RESOURCE_GROUP --cluster-name $AKS_CLUSTER_NAME
Výsledky:
[
{
"count": 2,
"name": "nodepool1",
"nodeLabels": {
"costcenter": "9000",
"dept": "IT"
}
},
{
"count": 1,
"name": "labelnp",
"nodeLabels": {
"costcenter": "5000",
"dept": "HR"
},
"provisioningState": "Creating"
}
]
Ověřte, že byly štítky nastavené:
kubectl get nodes --show-labels | grep -e "costcenter=5000" -e "dept=HR"
Aktualizace popisků u existujících uzlových skupin
Popisky můžete aktualizovat u stávajícího poolu uzlů. Upozorňujeme, že aktualizace popisků přepíše staré popisky.
az aks nodepool update \
--resource-group $RESOURCE_GROUP \
--cluster-name $AKS_CLUSTER_NAME \
--name $NODEPOOL_NAME \
--labels dept=ACCT costcenter=6000
Ověřte, že jsou nové štítky nastavené.
kubectl get nodes --show-labels | grep -e "costcenter=6000" -e "dept=ACCT"
Nedostupné popisky
Rezervované systémové popisky
Od vydání AKS 2021-08-19 bylo zastaveno možnost provádět změny rezervovaných štítků AKS. Při pokusu o změnu těchto popisků se zobrazí chybová zpráva.
Následující štítky jsou vyhrazené štítky AKS. Využití virtuálního uzlu určuje, jestli by tyto popisky mohly být podporovanou systémovou funkcí na virtuálních uzlech. Některé vlastnosti, které tyto systémové funkce mění, nejsou na virtuálních uzlech dostupné, protože vyžadují změnu hostitele.
| Štítek | Hodnota | Příklad/Možnosti | Využití virtuálního uzlu |
|---|---|---|---|
kubernetes.azure.com/agentpool |
<Název fondu agentů> | nodepool1 |
Stejné |
kubernetes.io/arch |
<runtime.GOARCH> | amd64 |
– |
kubernetes.io/os |
<Typ operačního systému> | Linux/Windows |
Stejné |
node.kubernetes.io/instance-type |
<Velikost virtuálního počítače> | Standard_NC6s_v3 |
Virtuální |
topology.kubernetes.io/region |
<Region Azure> | westus2 |
Stejné |
topology.kubernetes.io/zone |
<Zóna Azure> | 0 |
Stejné |
kubernetes.azure.com/cluster |
<MC_RgName> | MC_aks_myAKSCluster_westus2 |
Stejné |
kubernetes.azure.com/managedby |
aks |
aks |
– |
kubernetes.azure.com/mode |
<režim> |
User nebo system |
Uživatel |
kubernetes.azure.com/role |
agent | Agent |
Stejné |
kubernetes.azure.com/scalesetpriority (zastaralé) |
<Priorita VMSS> |
spot (regular není zapsán na běžných uzlech). Raději raději kubernetes.azure.com/priority . |
– |
kubernetes.azure.com/priority |
<Priorita virtuálního počítače> |
spot nebo regular |
– |
kubernetes.io/hostname |
<název hostitele> | aks-nodepool-00000000-vmss000000 |
Stejné |
kubernetes.azure.com/storageprofile |
<Profil úložiště disku s operačním systémem> | Managed |
– |
kubernetes.azure.com/storagetier |
<Úroveň úložiště disku OS> | Premium_LRS |
– |
kubernetes.azure.com/node-image-version |
<Verze VHD> | AKSUbuntu-1804-2020.03.05 |
Verze virtuálního uzlu |
kubernetes.azure.com/network-name |
<Název vnet nodepoolu> | vnetName |
Virtuální uzel virtuální sítě |
kubernetes.azure.com/network-subnet |
<Název podsítě skupiny uzlů> | subnetName |
Název podsítě virtuálního uzlu |
kubernetes.azure.com/ppg |
<název nodepoolu ppg> | ppgName |
– |
kubernetes.azure.com/encrypted-set |
<Název šifrované sady uzlů> | encrypted-set-name |
– |
kubernetes.azure.com/accelerator |
<akcelerátor> | nvidia |
– |
kubernetes.azure.com/fips_enabled |
<je povolené FIPS?> | true |
– |
kubernetes.azure.com/os-sku |
<os/sKU> | Vytvoření nebo aktualizace skladové položky operačního systému | Operační systém Linux |
kubernetes.azure.com/os-sku-effective |
<Vybraná skutečná skladová položka operačního systému> |
Ubuntu2204 nebo podobné (nikdy ne Ubuntu, vždy má zadanou verzi) |
– |
kubernetes.azure.com/os-sku-requested |
<uživatel požádal o skladovou položku operačního systému> |
Ubuntu, Ubuntu2204 nebo podobné (přesně odpovídá požadované SKU z rozhraní API) |
– |
kubernetes.azure.com/sku-cpu |
<počet procesorů> | 4 |
Stejné |
kubernetes.azure.com/sku-memory |
<paměť v GB> | 16 |
Stejné |
kubernetes.azure.com/nodepool-type |
<Typ poolu uzlů> | VirtualMachineScaleSets |
– |
- Stejný je zahrnuto tam, kde se očekávané hodnoty popisků neliší mezi standardním fondem uzlů a fondem virtuálních uzlů. Vzhledem k tomu, že pody virtuálních uzlů nezpřístupňují žádný základní virtuální počítač, nahradí se hodnoty skladové položky virtuálního počítače hodnotou SKU Virtual.
- Verze virtuálního uzlu odkazuje na aktuální verzi virtuálního konektoru Kubelet-ACI.
- Název podsítě virtuálního uzlu označuje podsíť, ve které jsou pody virtuálního uzlu nasazené do služby Azure Container Instance (ACI).
- Virtuální síť virtuálního uzlu je název virtuální sítě, která obsahuje podsíť, ve které jsou pody virtuálních uzlů nasazeny na ACI.
- Uzly automatického zřizování (Karpenter) mají další štítky odpovídající podporovaným selektorům.
-
kubernetes.azure.com/network-nameakubernetes.azure.com/network-subnetzkrátí se, pokud jsou názvy podkladových prostředků delší než 64 znaků.
Rezervované předpony
Následující předpony jsou vyhrazené předpony AKS a nelze je použít pro žádný uzel:
- kubernetes.azure.com/
- kubernetes.io/
Další informace o vyhrazených předponách najdete v tématu Známé popisky, poznámky a tainty Kubernetes.
Zastaralé popisky
Následující popisky se plánují pro vyřazení s vydáním Kubernetes verze 1.24. Všechny odkazy na popisky byste měli změnit na doporučenou náhradu.
Nově nedoporučované. Další informace najdete v poznámkách k verzi.
Další kroky
Další informace o popiscích Kubernetes najdete v dokumentaci k popiskům Kubernetes.