Azure-tags gebruiken in Azure Kubernetes Service (AKS)

Met Azure Kubernetes Service (AKS) kunt u Azure-tags instellen op een AKS-cluster en de bijbehorende resources met behulp van Azure Resource Manager en de Azure CLI. U kunt ook Kubernetes-manifesten gebruiken om Azure-tags in te stellen voor bepaalde resources. Azure-tags zijn een nuttige traceringsresource voor bepaalde bedrijfsprocessen, zoals terugstorting.

In dit artikel wordt uitgelegd hoe u Azure-tags instelt voor AKS-clusters en gerelateerde resources.

Voordat u begint

Bekijk de volgende informatie voordat u begint:

  • Tags die zijn ingesteld op een AKS-cluster, zijn van toepassing op alle resources die betrekking hebben op het cluster, maar niet op de knooppuntgroepen. Met deze bewerking worden de waarden van bestaande sleutels overschreven.
  • Tags die zijn ingesteld op een knooppuntgroep, zijn alleen van toepassing op resources die zijn gerelateerd aan die knooppuntgroep. Met deze bewerking worden de waarden van bestaande sleutels overschreven. Resources buiten die knooppuntgroep, inclusief resources voor de rest van het cluster en andere knooppuntgroepen, worden niet beïnvloed.
  • Openbare IP-adressen, bestanden en schijven kunnen tags hebben ingesteld door Kubernetes via een Kubernetes-manifest. Tags die op deze manier zijn ingesteld, behouden de Kubernetes-waarden, zelfs als u ze later met een andere methode bijwerkt. Wanneer u openbare IP-adressen, bestanden of schijven verwijdert via Kubernetes, worden alle tags die door Kubernetes zijn ingesteld, verwijderd. De tags op de resources die Kubernetes niet bijhoudt, blijven ongewijzigd.

Vereisten

  • De Azure CLI versie 2.0.59 of hoger. Voer uit az --versionom uw versie te vinden. Als u deze wilt installeren of uw versie wilt bijwerken, raadpleegt u Azure CLI installeren.
  • Kubernetes versie 1.20 of hoger.

Beperkingen

  • Azure-tags hebben sleutels die niet hoofdlettergevoelig zijn voor bewerkingen, bijvoorbeeld wanneer u een tag opvraagt door op de sleutel te zoeken. In dit geval wordt een tag met de opgegeven sleutel bijgewerkt of opgehaald, ongeacht de hoofdletters. Tagwaarden zijn hoofdlettergevoelig.
  • Als in AKS meerdere tags zijn ingesteld met identieke sleutels, maar verschillende hoofdletters, worden de tags in alfabetische volgorde gebruikt. Resulteert bijvoorbeeld {"Key1": "val1", "kEy1": "val2", "key1": "val3"} in Key1 en val1 worden ingesteld.
  • Voor gedeelde resources kunnen tags de splitsing in resourcegebruik niet zelf bepalen.

Azure-tags en AKS-clusters

Wanneer u een AKS-cluster maakt of bijwerkt met de --tags parameter, worden aan het volgende de Azure-tags toegewezen die u hebt opgegeven:

  • Het AKS-cluster zelf en de bijbehorende resources:
    • Routetabel
    • Openbare IP
    • Load balancer
    • Netwerkbeveiligingsgroep
    • Virtueel netwerk
    • Door AKS beheerde kubelet msi
    • Door AKS beheerde msi-invoegtoepassing
    • Privé-DNS zone die is gekoppeld aan het privécluster
    • Privé-eindpunt dat is gekoppeld aan het privécluster
  • De knooppuntresourcegroep

Notitie

Azure Privé-DNS ondersteunt slechts 15 tags. Zie de tagresources voor meer informatie.

Tags maken of bijwerken in een AKS-cluster

Een nieuw AKS-cluster maken

Belangrijk

Als u bestaande resources gebruikt wanneer u een nieuw cluster maakt, zoals een IP-adres of routetabel, overschrijft de az aks create opdracht de set tags. Als u het cluster later verwijdert, worden alle tags die door het cluster zijn ingesteld, verwijderd.

  1. Maak een cluster en wijs Azure-tags toe met behulp van de az aks create opdracht met de --tags parameter .

    Notitie

    Als u tags wilt instellen voor de eerste knooppuntgroep, de virtuele-machineschaalset en elk exemplaar van de virtuele-machineschaalset die is gekoppeld aan de eerste knooppuntgroep, kunt u ook de --nodepool-tags parameter instellen.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --tags dept=IT costcenter=9999 \
        --generate-ssh-keys
    
  2. Controleer met behulp van de opdracht of de tags zijn toegepast op het cluster en de az aks show bijbehorende resources.

    az aks show -g myResourceGroup -n myAKSCluster --query '[tags]'
    

    In de volgende voorbeelduitvoer ziet u de tags die zijn toegepast op het cluster:

    {
      "clusterTags": {
        "dept": "IT",
        "costcenter": "9999"
      }
    }
    

Een bestaand AKS-cluster bijwerken

Belangrijk

Als u tags instelt op een cluster met behulp van de az aks update opdracht, wordt de set tags overschreven. Als uw cluster bijvoorbeeld de tags dept=IT en costcenter=9999 heeft en u az aks update gebruikt met het tagsteam=alfa en costcenter=1234, is de nieuwe lijst met tags team=alfa en costcenter=1234.

  1. Werk de tags op een bestaand cluster bij met behulp van de az aks update opdracht met de --tags parameter .

    az aks update \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --tags team=alpha costcenter=1234
    
  2. Controleer met behulp van de opdracht of de tags zijn toegepast op het cluster en de az aks show bijbehorende resources.

    az aks show -g myResourceGroup -n myAKSCluster --query '[tags]'
    

    In de volgende voorbeelduitvoer ziet u de tags die zijn toegepast op het cluster:

    {
      "clusterTags": {
        "team": "alpha",
        "costcenter": "1234"
      }
    }
    

Tags toevoegen aan knooppuntgroepen

U kunt een Azure-tag toepassen op een nieuwe of bestaande knooppuntgroep in uw AKS-cluster. Tags die worden toegepast op een knooppuntgroep, worden toegepast op elk knooppunt in de knooppuntgroep en worden persistent gemaakt via upgrades. Tags worden ook toegepast op nieuwe knooppunten die tijdens uitschaalbewerkingen worden toegevoegd aan een knooppuntgroep. Het toevoegen van een tag kan helpen bij taken zoals het bijhouden van beleid of het schatten van kosten.

Wanneer u een knooppuntgroep maakt of bijwerkt met de --tags parameter, worden de tags die u opgeeft, toegewezen aan de volgende resources:

  • De knooppuntgroep.
  • De virtuele-machineschaalset en elk exemplaar van de virtuele-machineschaalset die zijn gekoppeld aan de knooppuntgroep.

Een nieuwe knooppuntgroep maken

  1. Maak een knooppuntgroep met een Azure-tag met behulp van de az aks nodepool add opdracht met de --tags parameter .

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name tagnodepool \
        --node-count 1 \
        --tags abtest=a costcenter=5555 \
        --no-wait
    
  2. Controleer of de tags zijn toegepast op de knooppuntgroep met behulp van de az aks show opdracht .

    az aks show -g myResourceGroup -n myAKSCluster --query 'agentPoolProfiles[].{nodepoolName:name,tags:tags}'
    

    In de volgende voorbeelduitvoer ziet u de tags die zijn toegepast op de knooppuntgroep:

    [
      {
        "nodepoolName": "nodepool1",
        "tags": null
      },
      {
        "nodepoolName": "tagnodepool",
        "tags": {
          "abtest": "a",
          "costcenter": "5555"
        }
      }
    ]
    

Een bestaande knooppuntgroep bijwerken

Belangrijk

Als u tags instelt voor een knooppuntgroep met behulp van de az aks nodepool update opdracht, wordt de set tags overschreven. Als uw knooppuntgroep bijvoorbeeld de tags abtest=a en costcenter=5555 heeft en u az aks nodepool update gebruikt met de tags appversion=0.0.2 en costcenter=4444, is de nieuwe lijst met tags appversion=0.0.2 en costcenter=4444.

  1. Werk een knooppuntgroep bij met een Azure-tag met behulp van de az aks nodepool update opdracht .

    az aks nodepool update \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name tagnodepool \
        --tags appversion=0.0.2 costcenter=4444 \
        --no-wait
    
  2. Controleer of de tags zijn toegepast op de knooppuntgroep met behulp van de az aks show opdracht .

    az aks show -g myResourceGroup -n myAKSCluster --query 'agentPoolProfiles[].{nodepoolName:name,tags:tags}'
    

    In de volgende voorbeelduitvoer ziet u de tags die zijn toegepast op de knooppuntgroep:

    [
      {
        "nodepoolName": "nodepool1",
        "tags": null
      },
      {
        "nodepoolName": "tagnodepool",
        "tags": {
          "appversion": "0.0.2",
          "costcenter": "4444"
        }
      }
    ]
    

Tags toevoegen met Kubernetes

Belangrijk

Als u tags instelt voor bestanden, schijven en openbare IP-adressen met behulp van Kubernetes, wordt de set tags bijgewerkt. Als uw schijf bijvoorbeeld de tags dept=IT en costcenter=5555 heeft en u Kubernetes gebruikt om de tags team=bèta en costcenter=3333 in te stellen, is de nieuwe lijst met tags dept=IT, team=beta en costcenter=3333.

Alle updates die u aanbrengt voor tags via Kubernetes, behouden de waarde die is ingesteld via Kubernetes. Als uw schijf bijvoorbeeld tags dept=IT en costcenter=5555 heeft ingesteld door Kubernetes en u de portal gebruikt om de tags team=bèta en costcenter=3333 in te stellen, is de nieuwe lijst met tags dept=IT, team=beta en costcenter=5555. Als u de schijf vervolgens verwijdert via Kubernetes, zou de schijf de tag team=bèta hebben.

U kunt Azure-tags toepassen op openbare IP-adressen, schijven en bestanden met behulp van een Kubernetes-manifest.

  • Gebruik voor openbare IP-adressen service.beta.kubernetes.io/azure-pip-tags onder aantekeningen. Bijvoorbeeld:

    apiVersion: v1
    kind: Service
    metadata:
      annotations:
        service.beta.kubernetes.io/azure-pip-tags: costcenter=3333,team=beta
    spec:
      ...
    
  • Gebruik voor bestanden en schijven tags onder parameters. Bijvoorbeeld:

    ---
    apiVersion: storage.k8s.io/v1
    ...
    parameters:
      ...
      tags: costcenter=3333,team=beta
    ...
    

Volgende stappen

Meer informatie over het gebruik van labels in een AKS-cluster.