Použití značek Azure ve službě Azure Kubernetes Service (AKS)
Pomocí služby Azure Kubernetes Service (AKS) můžete značky Azure nastavit v clusteru AKS a souvisejících prostředcích pomocí Azure Resource Manageru a Azure CLI. K nastavení značek Azure pro určité prostředky můžete použít také manifesty Kubernetes. Značky Azure jsou užitečným prostředkem pro sledování určitých obchodních procesů, jako je vrácení peněz.
Tento článek vysvětluje, jak nastavit značky Azure pro clustery AKS a související prostředky.
Než začnete
Než začnete, projděte si následující informace:
- Značky nastavené v clusteru AKS se vztahují na všechny prostředky související s clusterem, ale ne pro fondy uzlů. Tato operace přepíše hodnoty existujících klíčů.
- Značky nastavené ve fondu uzlů se vztahují pouze na prostředky související s tímto fondem uzlů. Tato operace přepíše hodnoty existujících klíčů. Prostředky mimo tento fond uzlů, včetně prostředků pro zbytek clusteru a dalších fondů uzlů, nemají vliv.
- Veřejné IP adresy, soubory a disky můžou mít značky nastavené Kubernetes prostřednictvím manifestu Kubernetes. Značky nastavené tímto způsobem udržují hodnoty Kubernetes, i když je později aktualizujete jinou metodou. Když prostřednictvím Kubernetes odeberete veřejné IP adresy, soubory nebo disky, odeberou se všechny značky nastavené Kubernetes. Značky těchto prostředků, které Kubernetes nesleduje, zůstávají nedotčené.
Požadavky
- Azure CLI verze 2.0.59 nebo novější. Pokud chcete najít svou verzi, spusťte
az --version
příkaz . Pokud ji potřebujete nainstalovat nebo aktualizovat verzi, přečtěte si téma Instalace Azure CLI. - Kubernetes verze 1.20 nebo novější
Omezení
- Značky Azure mají klíče, u kterých se nerozlišují malá a velká písmena pro operace, jako je například načítání značky vyhledáváním v klíči. V tomto případě se značka se zadaným klíčem aktualizuje nebo načte bez ohledu na velikost písmen. Hodnoty značek rozlišují malá a velká písmena.
- Pokud je v AKS nastaveno více značek se stejnými klíči, ale s různými písmeny, použijí se značky v abecedním pořadí. Výsledkem jsou například
{"Key1": "val1", "kEy1": "val2", "key1": "val3"}
Key1
výsledky aval1
nastavení. - U sdílených prostředků nemůžou značky samostatně určit rozdělení využití prostředků.
Značky Azure a clustery AKS
Při vytváření nebo aktualizaci clusteru AKS pomocí parametru --tags
se přiřadí následující značky Azure, které jste zadali:
- Samotný cluster AKS a související prostředky:
- Směrovací tabulka
- Veřejná IP adresa
- Load Balancer
- Skupina zabezpečení sítě
- Virtuální síť
- Msi kubelet spravované službou AKS
- Msi spravované službou AKS
- Privátní DNS zóna přidružená k privátnímu clusteru
- Privátní koncový bod přidružený k privátnímu clusteru
- Skupina prostředků uzlu
Poznámka:
Azure Privátní DNS podporuje jenom 15 značek. Další informace najdete v prostředcích značek.
Vytvoření nebo aktualizace značek v clusteru AKS
Vytvoření nového clusteru AKS
Důležité
Pokud používáte existující prostředky při vytváření nového clusteru, jako je IP adresa nebo směrovací tabulka, az aks create
příkaz přepíše sadu značek. Pokud cluster odstraníte později, odeberou se všechny značky nastavené clusterem.
Vytvořte cluster a pomocí příkazu s parametrem
az aks create
--tags
přiřaďte značky Azure.Poznámka:
Pokud chcete nastavit značky pro počáteční fond uzlů, škálovací sadu virtuálních počítačů a každou instanci škálovací sady virtuálních počítačů přidruženou k počátečnímu fondu uzlů, můžete také nastavit
--nodepool-tags
parametr.az aks create \ --resource-group myResourceGroup \ --name myAKSCluster \ --tags dept=IT costcenter=9999 \ --generate-ssh-keys
Pomocí příkazu ověřte, že se značky použily na cluster a související prostředky
az aks show
.az aks show --resource-group myResourceGroup --name myAKSCluster --query '[tags]'
Následující příklad výstupu ukazuje značky použité v clusteru:
{ "clusterTags": { "dept": "IT", "costcenter": "9999" } }
Aktualizace existujícího clusteru AKS
Důležité
Nastavení značek v clusteru az aks update
pomocí příkazu přepíše sadu značek. Pokud má váš cluster například značky dept=IT a costcenter=9999 a používáte az aks update
s týmem značek =alfa a costcenter=1234, bude nový seznam značek tým=alfa a costcenter=1234.
Pomocí příkazu s parametrem aktualizujte značky v existujícím clusteru
az aks update
--tags
.az aks update \ --resource-group myResourceGroup \ --name myAKSCluster \ --tags team=alpha costcenter=1234
Pomocí příkazu ověřte, že se značky použily na cluster a související prostředky
az aks show
.az aks show --resource-group myResourceGroup --name myAKSCluster --query '[tags]'
Následující příklad výstupu ukazuje značky použité v clusteru:
{ "clusterTags": { "team": "alpha", "costcenter": "1234" } }
Přidání značek do fondů uzlů
Značku Azure můžete použít u nového nebo existujícího fondu uzlů v clusteru AKS. Značky použité u fondu uzlů se použijí na každý uzel ve fondu uzlů a jsou trvalé prostřednictvím upgradů. Značky se také použijí na nové uzly přidané do fondu uzlů během operací horizontálního navýšení kapacity. Přidání značky může pomoct s úlohami, jako je sledování zásad nebo odhad nákladů.
Při vytváření nebo aktualizaci fondu uzlů pomocí parametru --tags
se značky, které zadáte, přiřadí následující prostředky:
- Fond uzlů.
- Škálovací sada virtuálních počítačů a každá instance škálovací sady virtuálních počítačů přidružená k fondu uzlů.
Vytvoření nového fondu uzlů
Pomocí příkazu s
--tags
parametrem vytvořte fond uzlů se značkouaz aks nodepool add
Azure.az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name tagnodepool \ --node-count 1 \ --tags abtest=a costcenter=5555 \ --no-wait
Pomocí příkazu ověřte, že se značky použily ve fondu
az aks show
uzlů.az aks show --resource-group myResourceGroup --name myAKSCluster --query 'agentPoolProfiles[].{nodepoolName:name,tags:tags}'
Následující příklad výstupu ukazuje značky použité ve fondu uzlů:
[ { "nodepoolName": "nodepool1", "tags": null }, { "nodepoolName": "tagnodepool", "tags": { "abtest": "a", "costcenter": "5555" } } ]
Aktualizace existujícího fondu uzlů
Důležité
Nastavení značek ve fondu uzlů pomocí az aks nodepool update
příkazu přepíše sadu značek. Pokud má například fond uzlů značky abtest= a a costcenter=5555 a používáte az aks nodepool update
se značkami appversion=0.0.2 a costcenter=4444, bude nový seznam značek appversion=0.0.2 a costcenter=4444.
Pomocí příkazu aktualizujte fond uzlů značkou
az aks nodepool update
Azure.az aks nodepool update \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name tagnodepool \ --tags appversion=0.0.2 costcenter=4444 \ --no-wait
Pomocí příkazu ověřte, že se značky použily ve fondu
az aks show
uzlů.az aks show --resource-group myResourceGroup --name myAKSCluster --query 'agentPoolProfiles[].{nodepoolName:name,tags:tags}'
Následující příklad výstupu ukazuje značky použité ve fondu uzlů:
[ { "nodepoolName": "nodepool1", "tags": null }, { "nodepoolName": "tagnodepool", "tags": { "appversion": "0.0.2", "costcenter": "4444" } } ]
Přidání značek pomocí Kubernetes
Důležité
Nastavení značek u souborů, disků a veřejných IP adres pomocí Kubernetes aktualizuje sadu značek. Pokud má například váš disk značky dept=IT a costcenter=5555 a použijete Kubernetes k nastavení týmu= beta a costcenter=3333, bude nový seznam značek dept=IT, team=beta a costcenter=3333.
Všechny aktualizace, které provedete u značek prostřednictvím Kubernetes, si zachovají hodnotu nastavenou prostřednictvím Kubernetes. Pokud má například váš disk značky dept=IT a costcenter=5555 nastavený kubernetes a pomocí portálu nastavíte tým=beta a costcenter=3333, bude nový seznam značek dept=IT, team=beta a costcenter=5555. Pokud pak disk odeberete přes Kubernetes, bude mít disk značku team=beta.
Značky Azure můžete použít na veřejné IP adresy, disky a soubory pomocí manifestu Kubernetes.
Pro veřejné IP adresy použijte service.beta.kubernetes.io/azure-pip-tags pod poznámkami. Příklad:
apiVersion: v1 kind: Service metadata: annotations: service.beta.kubernetes.io/azure-pip-tags: costcenter=3333,team=beta spec: ...
Pro soubory a disky použijte značky pod parametry. Příklad:
--- apiVersion: storage.k8s.io/v1 ... parameters: ... tags: costcenter=3333,team=beta ...
Další kroky
Přečtěte si další informace o používání popisků v clusteru AKS.
Azure Kubernetes Service