Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Als u meerdere knooppuntgroepen hebt, kunt u een label toevoegen tijdens het maken van een knooppuntgroep. Kubernetes-labels verwerken de planningsregels voor knooppunten. U kunt labels op elk gewenst moment toevoegen aan een knooppuntgroep en deze toepassen op alle knooppunten in de knooppuntgroep.
In deze handleiding leert u hoe u labels gebruikt in een AKS-cluster (Azure Kubernetes Service).
Vereisten
U moet Azure CLI versie 2.2.0 of hoger hebben geïnstalleerd en geconfigureerd. Voer az --version
uit om de versie te bekijken. Als u Azure CLI 2.0 wilt installeren of upgraden, raadpleegt u Azure CLI 2.0 installeren.
Een AKS-cluster met een label maken
U kunt een AKS-cluster maken met knooppuntlabels om sleutel-waarde metagegevens in te stellen voor het plannen van werkbelasting.
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
Resultaten:
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroupxxx",
"location": "eastus2",
"managedBy": null,
"name": "myResourceGroupxxx",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
Maak het AKS-cluster waarin knooppuntlabels worden opgegeven (bijvoorbeeld 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
Resultaten:
{
"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"
}
Controleer of de labels zijn ingesteld:
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"
Een knooppuntgroep met een label maken
U kunt een extra knooppuntgroep maken met labels voor specifieke planningsbehoeften.
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 \
Hier volgt een voorbeeld van de uitvoer van de az aks nodepool list
opdracht waarin de labelnp-knooppuntgroep knooppunten maken met de opgegeven nodeLabels:
az aks nodepool list --resource-group $RESOURCE_GROUP --cluster-name $AKS_CLUSTER_NAME
Resultaten:
[
{
"count": 2,
"name": "nodepool1",
"nodeLabels": {
"costcenter": "9000",
"dept": "IT"
}
},
{
"count": 1,
"name": "labelnp",
"nodeLabels": {
"costcenter": "5000",
"dept": "HR"
},
"provisioningState": "Creating"
}
]
Controleer of de labels zijn ingesteld:
kubectl get nodes --show-labels | grep -e "costcenter=5000" -e "dept=HR"
Labels voor bestaande knooppuntgroepen bijwerken
U kunt de labels in een bestaande knooppuntgroep bijwerken. Houd er rekening mee dat het bijwerken van labels de oude labels overschrijft.
az aks nodepool update \
--resource-group $RESOURCE_GROUP \
--cluster-name $AKS_CLUSTER_NAME \
--name $NODEPOOL_NAME \
--labels dept=ACCT costcenter=6000 \
Controleer of de nieuwe labels zijn ingesteld:
kubectl get nodes --show-labels | grep -e "costcenter=6000" -e "dept=ACCT"
Niet-beschikbare labels
Gereserveerde systeemlabels
Sinds de AKS-release van 2021-08-19 heeft AKS de mogelijkheid om wijzigingen aan te brengen in gereserveerde AKS-labels gestopt. Als u deze labels probeert te wijzigen, wordt er een foutbericht weergegeven.
De volgende labels zijn gereserveerde AKS-labels. Het gebruik van virtuele knooppunten geeft aan of deze labels een ondersteunde systeemfunctie op virtuele knooppunten kunnen zijn. Sommige eigenschappen die door deze systeemfuncties worden gewijzigd, zijn niet beschikbaar op de virtuele knooppunten omdat ze de host moeten wijzigen.
Etiket | Weergegeven als | Voorbeeld/opties | Gebruik van virtuele knooppunten |
---|---|---|---|
kubernetes.azure.com/agentpool | <naam van agentpool> | nodepool1 | Zelfde |
kubernetes.io/arch | amd64 | Runtime. GOARCH | N.v.t. |
kubernetes.io/os | <Type besturingssysteem> | Linux/Windows | Zelfde |
node.kubernetes.io/instance-type | <VM-grootte> | Standard_NC6s_v3 | Virtueel |
topology.kubernetes.io/region | <Azure-regio> | westus2 | Zelfde |
topology.kubernetes.io/zone | <Azure-zone> | 0 | Zelfde |
kubernetes.azure.com/cluster | <MC_RgName> | MC_aks_myAKSCluster_westus2 | Zelfde |
kubernetes.azure.com/managedby | aks | Azure Kubernetes Service (AKS) | N.v.t. |
kubernetes.azure.com/mode | <modus> | Gebruiker of systeem | Gebruiker |
kubernetes.azure.com/role | agent | Vertegenwoordiger | Zelfde |
kubernetes.azure.com/scalesetpriority | <VMSS-prioriteit> | Spot of normaal | N.v.t. |
kubernetes.io/hostname | <hostnaam> | aks-nodepool-00000000-vmss0000000 | Zelfde |
kubernetes.azure.com/storageprofile | <Opslagprofiel voor besturingssysteemschijven> | Beheerd | N.v.t. |
kubernetes.azure.com/storagetier | <Opslaglaag voor besturingssysteemschijven> | Premium_LRS | N.v.t. |
kubernetes.azure.com/instance-sku | <SKU-familie> | Standard_N | Virtueel |
kubernetes.azure.com/node-image-version | <VHD-versie> | AKSHd-1804-2020.03.05 | Versie van virtueel knooppunt |
kubernetes.azure.com/subnet | <subnetnaam van nodepool> | subnetNaam | Naam van subnet van virtueel knooppunt |
kubernetes.azure.com/vnet | <naam van knooppuntpool vnet> | vnetNaam | Virtueel knooppunt virtueel netwerk |
kubernetes.azure.com/ppg | <naam nodepool ppg> | ppgName | N.v.t. |
kubernetes.azure.com/encrypted-set | <naam van versleutelde knooppuntpool> | versleutelde set-naam | N.v.t. |
kubernetes.azure.com/accelerator | <gaspedaal> | nvidia | N.v.t. |
kubernetes.azure.com/fips_enabled | <Is fips ingeschakeld?> | waar | N.v.t. |
kubernetes.azure.com/os-sku | <os/sku> | Besturingssysteem-SKU maken of bijwerken | Linux |
- Hetzelfde is opgenomen op plaatsen waar de verwachte waarden voor de labels niet verschillen tussen een standaardknooppuntgroep en een virtuele knooppuntgroep. Omdat virtuele knooppuntpods geen onderliggende virtuele machine (VM) beschikbaar maken, worden de WAARDEN van de VM-SKU vervangen door de virtuele SKU.
- De versie van het virtuele knooppunt verwijst naar de huidige versie van de virtuele Kubelet-ACI-connectorrelease.
- De naam van het subnet van het virtuele knooppunt is de naam van het subnet waarin virtuele knooppuntpods worden geïmplementeerd in Azure Container Instance (ACI).
- Virtueel knooppunt virtueel netwerk is de naam van het virtuele netwerk, dat het subnet bevat waarin virtuele knooppuntpods worden geïmplementeerd op ACI.
Gereserveerde voorvoegsels
De volgende voorvoegsels zijn gereserveerde voorvoegsels van AKS en kunnen niet worden gebruikt voor een knooppunt:
- kubernetes.azure.com/
- kubernetes.io/
Zie Kubernetes-bekende labels, aantekeningen en taints voor meer informatie over gereserveerde voorvoegsels.
Afgeschafte labels
De volgende labels zijn gepland voor afschaffing met de release van Kubernetes v1.24. U moet eventuele labelverwijzingen wijzigen in de aanbevolen vervanging.
Etiket | Aanbevolen vervanging | Onderhouder |
---|---|---|
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 |
Opslagprofiel* | kubernetes.azure.com/storageprofile | Azure Kubernetes Service |
Opslagtier* | kubernetes.azure.com/storagetier | Azure Kubernetes Service |
Gaspedaal* | kubernetes.azure.com/accelerator | Azure Kubernetes Service |
*Nieuw afgeschaft. Zie de releaseopmerkingen voor meer informatie.
Volgende stappen
Meer informatie over Kubernetes-labels vindt u in de documentatie over Kubernetes-labels.
Azure Kubernetes Service