Nabijheidsplaatsingsgroepen gebruiken om de latentie voor AKS-clusters (Azure Kubernetes Service) te verminderen

Notitie

Wanneer u nabijheidsplaatsingsgroepen in AKS gebruikt, is colocatie alleen van toepassing op de agentknooppunten. Knooppunt naar knooppunt en de bijbehorende gehoste pod-naar-pod-latentie is verbeterd. De colocatie heeft geen invloed op de plaatsing van het besturingsvlak van een cluster.

Wanneer u uw toepassing in Azure implementeert, kunt u netwerklatentie creëren door vm-exemplaren (virtuele machines) te spreiden over regio's of beschikbaarheidszones, wat van invloed kan zijn op de algehele prestaties van uw toepassing. Een nabijheidsplaatsingsgroep is een logische groepering die wordt gebruikt om ervoor te zorgen dat Azure-rekenresources zich fysiek dicht bij elkaar bevinden. Sommige toepassingen, zoals gaming, technische simulaties en high-frequency trading (HFT), vereisen een lage latentie en taken die snel kunnen worden voltooid. Voor vergelijkbare HPC-scenario's (High Performance Computing) kunt u overwegen om nabijheidsplaatsingsgroepen (PPG) te gebruiken voor de knooppuntgroepen van uw cluster.

Voordat u begint

Voor dit artikel is Azure CLI versie 2.14 of hoger vereist. Voer az --version uit om de versie te bekijken. Zie Azure CLI installeren als u de CLI wilt installeren of een upgrade wilt uitvoeren.

Beperkingen

  • Een nabijheidsplaatsingsgroep kan slechts aan één beschikbaarheidszone worden toegewezen.
  • Een knooppuntgroep moet Virtual Machine Scale Sets gebruiken om een nabijheidsplaatsingsgroep te koppelen.
  • Een knooppuntgroep kan alleen een nabijheidsplaatsingsgroep koppelen aan de maaktijd van een knooppuntgroep.

Knooppuntgroepen en nabijheidsplaatsingsgroepen

De eerste resource die u implementeert met een nabijheidsplaatsingsgroep, wordt gekoppeld aan een specifiek datacentrum. Alle extra resources die u met dezelfde nabijheidsplaatsingsgroep implementeert, worden in hetzelfde datacenter geplaatst. Zodra alle resources die de nabijheidsplaatsingsgroep gebruiken, zijn gestopt (de toewijzing ervan ongedaan gemaakt) of verwijderd, worden deze niet meer gekoppeld.

  • U kunt meerdere knooppuntgroepen koppelen aan één nabijheidsplaatsingsgroep.
  • U kunt een knooppuntgroep alleen koppelen aan één nabijheidsplaatsingsgroep.

Nabijheidsplaatsingsgroepen configureren met beschikbaarheidszones

Notitie

Hoewel nabijheidsplaatsingsgroepen vereisen dat een knooppuntgroep slechts één beschikbaarheidszone gebruikt, is de AZURE VM SLA van 99,9% volgens de basislijn nog steeds van kracht voor VM's in één zone.

Nabijheidsplaatsingsgroepen zijn een concept van een knooppuntgroep en zijn gekoppeld aan elke afzonderlijke knooppuntgroep. Het gebruik van een PPG-resource heeft geen invloed op de beschikbaarheid van het AKS-besturingsvlak, wat van invloed kan zijn op de wijze waarop u uw cluster met zones moet ontwerpen. Om ervoor te zorgen dat een cluster verspreid is over meerdere zones, raden we u aan het volgende ontwerp te gebruiken:

  • Richt een cluster in met de eerste systeemgroep met behulp van drie zones en geen nabijheidsplaatsingsgroep die is gekoppeld om ervoor te zorgen dat de systeempods in een toegewezen knooppuntgroep terechtkomen, die zich verspreidt over meerdere zones.
  • Voeg extra gebruikersknooppuntgroepen toe met een unieke zone en nabijheidsplaatsingsgroep die aan elke pool zijn gekoppeld. Een voorbeeld is nodepool1 in zone 1 en PPG1, nodepool2 in zone twee en PPG2 en nodepool3 in zone 3 met PPG3. Deze configuratie zorgt ervoor dat, op clusterniveau, knooppunten worden verdeeld over meerdere zones en dat elke afzonderlijke knooppuntgroep in de aangewezen zone wordt geplaatst met een toegewezen PPG-resource.

Een nieuw AKS-cluster maken met een nabijheidsplaatsingsgroep

Versneld netwerken verbetert de netwerkprestaties van virtuele machines aanzienlijk. Gebruik in het ideale voorbeeld nabijheidsplaatsingsgroepen met versneld netwerken. Standaard maakt AKS gebruik van versnelde netwerken op ondersteunde exemplaren van virtuele machines, waaronder de meeste virtuele Azure-machines met twee of meer vCPU's.

  1. Maak een Azure-resourcegroep met behulp van de az group create opdracht .

    az group create --name myResourceGroup --location centralus
    
  2. Maak een nabijheidsplaatsingsgroep met behulp van de az ppg create opdracht . Noteer de id-waarde in de uitvoer.

    az ppg create -n myPPG -g myResourceGroup -l centralus -t standard
    

    De opdracht produceert een uitvoer die vergelijkbaar is met de volgende voorbeelduitvoer, die de id-waarde bevat die u nodig hebt voor toekomstige CLI-opdrachten.

    {
      "availabilitySets": null,
      "colocationStatus": null,
      "id": "/subscriptions/yourSubscriptionID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myPPG",
      "location": "centralus",
      "name": "myPPG",
      "proximityPlacementGroupType": "Standard",
      "resourceGroup": "myResourceGroup",
      "tags": {},
      "type": "Microsoft.Compute/proximityPlacementGroups",
      "virtualMachineScaleSets": null,
      "virtualMachines": null
    }
    
  3. Maak een AKS-cluster met behulp van de az aks create opdracht en vervang de waarde myPPGResourceID door de resource-id van de nabijheidsplaatsingsgroep uit de vorige stap.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --ppg myPPGResourceID
    

Een nabijheidsplaatsingsgroep toevoegen aan een bestaand cluster

U kunt een nabijheidsplaatsingsgroep toevoegen aan een bestaand cluster door een nieuwe knooppuntgroep te maken. U kunt vervolgens eventueel bestaande workloads migreren naar de nieuwe knooppuntgroep en de oorspronkelijke knooppuntgroep verwijderen.

Gebruik dezelfde nabijheidsplaatsingsgroep die u eerder hebt gemaakt om ervoor te zorgen dat agentknooppunten in beide knooppuntgroepen in uw AKS-cluster zich fysiek in hetzelfde datacenter bevinden.

  • Maak een nieuwe knooppuntgroep met behulp van de az aks nodepool add opdracht en vervang de waarde myPPGResourceID door de resource-id van uw nabijheidsplaatsingsgroep.

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name mynodepool \
        --node-count 1 \
        --ppg myPPGResourceID
    

Opschonen

  • Verwijder de Azure-resourcegroep samen met de bijbehorende resources met behulp van de az group delete opdracht .

    az group delete --name myResourceGroup --yes --no-wait
    

Volgende stappen

Meer informatie over nabijheidsplaatsingsgroepen.