Použití popisků v clusteru Azure Kubernetes Service (AKS)
Pokud máte více fondů uzlů, můžete při vytváření fondu uzlů přidat popisek. Popisky Kubernetes zpracovávají pravidla plánování pro uzly. Popisky můžete do 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
Vytvořte cluster AKS s popiskem pomocí
az aks create
příkazu a zadejte--node-labels
parametr pro nastavení popisků. Popisky musí být pár klíč/hodnota a musí mít platnou syntaxi.az aks create \ --resource-group myResourceGroup \ --name myAKSCluster \ --node-count 2 \ --nodepool-labels dept=IT costcenter=9000 \ --generate-ssh-keys
Pomocí příkazu ověřte, že se popisky nastavily
kubectl get nodes --show-labels
.kubectl get nodes --show-labels | grep -e "costcenter=9000" -e "dept=IT"
Vytvoření fondu uzlů s popiskem
Vytvořte fond uzlů s popiskem pomocí
az aks nodepool add
příkazu a zadejte název--name
parametrů a popisků parametru--labels
. Popisky musí být pár klíč/hodnota a musí mít platnou syntaxi.Následující ukázkový příkaz vytvoří fond uzlů s názvem labelnp s popisky dept=HR a costcenter=5000.
az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name labelnp \ --node-count 1 \ --labels dept=HR costcenter=5000 \ --no-wait
Následující příklad výstupu z
az aks nodepool list
příkazu ukazuje, že fond uzlů labelnp vytváří uzly se zadanými uzlyLabels:[ { ... "count": 1, ... "name": "labelnp", "orchestratorVersion": "1.15.7", ... "provisioningState": "Creating", ... "nodeLabels": { "costcenter": "5000", "dept": "HR" }, ... }, ... ]
Pomocí příkazu ověřte, že se popisky nastavily
kubectl get nodes --show-labels
.kubectl get nodes --show-labels | grep -e "costcenter=5000" -e "dept=HR"
Aktualizace popisků u existujících fondů uzlů
Pomocí příkazu aktualizujte popisek ve stávajícím fondu
az aks nodepool update
uzlů. Aktualizace popisků u existujících fondů uzlů přepíše staré popisky novými popisky. Popisky musí být pár klíč/hodnota a musí mít platnou syntaxi.az aks nodepool update \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name labelnp \ --labels dept=ACCT costcenter=6000 \ --no-wait
Pomocí příkazu ověřte, že se popisky nastavily
kubectl get nodes --show-labels
.kubectl get nodes --show-labels | grep -e "costcenter=6000" -e "dept=ACCT"
Nedostupné popisky
Rezervované systémové popisky
Od vydání AKS z roku 2021-08-19 přestal AKS provádět změny rezervovaných popisků AKS. Při pokusu o změnu těchto popisků se zobrazí chybová zpráva.
Následující popisky jsou vyhrazené popisky 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 | amd64 | runtime. GOARCH | – |
kubernetes.io/os | <OS Type> | Linux nebo Windows | Stejné |
node.kubernetes.io/instance-type | <Velikost virtuálního počítače> | Standard_NC6s_v3 | Virtuální |
topology.kubernetes.io/region | <Oblast 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/mode | <režim> | Uživatel nebo systém | Uživatelská |
kubernetes.azure.com/role | agent | Agent | Stejné |
kubernetes.azure.com/scalesetpriority | <Priorita VMSS> | Spot nebo regular | – |
kubernetes.io/hostname | <název hostitele> | aks-nodepool-00000000-vmss0000000 | Stejné |
kubernetes.azure.com/storageprofile | <Profil úložiště disku s operačním systémem> | Spravované | – |
kubernetes.azure.com/storagetier | <Disková úroveň operačního systému> | Premium_LRS | – |
kubernetes.azure.com/instance-sku | <Řada skladových položek> | Standard_N | Virtuální |
kubernetes.azure.com/node-image-version | <Verze virtuálního pevného disku> | AKSUbuntu-1804-2020.03.05 | Verze virtuálního uzlu |
kubernetes.azure.com/subnet | <Název podsítě fondu uzlů> | subnetName | Název podsítě virtuálního uzlu |
kubernetes.azure.com/vnet | <Název virtuální sítě fondu uzlů> | vnetName | Virtuální síť virtuálních uzlů |
kubernetes.azure.com/ppg | <název ppg fondu uzlů> | 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 | Linux |
- Totéž je součástí míst, kde se očekávané hodnoty popisků mezi standardním fondem uzlů a fondem virtuálních uzlů neliší. 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 je název podsítě, ve které jsou pody virtuálních uzlů 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ů nasazené v ACI.
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.
Popisek | Doporučená náhrada | Správce |
---|---|---|
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 |
Fond agentů* | kubernetes.azure.com/agentpool | Azure Kubernetes Service |
Storageprofile* | kubernetes.azure.com/storageprofile | Azure Kubernetes Service |
Storagetier* | kubernetes.azure.com/storagetier | Azure Kubernetes Service |
Akcelerátor* | kubernetes.azure.com/accelerator | Azure Kubernetes Service |
*Nově zastaralé. Další informace najdete v poznámkách k verzi.
Další kroky
Další informace o popiscích Kubernetes najdete v dokumentaci k popiskům Kubernetes.
Azure Kubernetes Service