Utwórz grupę umieszczania blisko siebie za pomocą programu PowerShell

Note

Wiele kroków wymienionych w tym dokumencie dotyczy zestawów skalowania dla maszyn wirtualnych przy użyciu trybu jednolitej orkiestracji. Rekomendujemy używanie elastycznej orkiestracji dla nowych obciążeń roboczych. Aby uzyskać więcej informacji, zobacz Tryby orchesration dla zestawów skalowania maszyn wirtualnych na platformie Azure.

Umieszczenie maszyn wirtualnych w jednym regionie zmniejsza odległość fizyczną między wystąpieniami. Umieszczenie ich w jednej strefie dostępności spowoduje również fizyczne zbliżenie ich do siebie. Jednak w miarę rozbudowy infrastruktury Azure pojedyncza strefa dostępności może obejmować wiele fizycznych centrów danych, co może skutkować opóźnieniami sieciowymi wpływającymi na działanie aplikacji.

Aby umieścić maszyny wirtualne jak najbliżej siebie i uzyskać możliwie najmniejsze opóźnienia, można wdrożyć je w grupie umieszczania bliskości.

Grupa umieszczania w bliskiej odległości to logiczne grupowanie stosowane w celu zapewnienia, że zasoby obliczeniowe platformy Azure są zlokalizowane fizycznie blisko siebie. Grupy umieszczania w pobliżu są przydatne w przypadku zadań, w których wymagana jest niska latencja.

  • Niskie opóźnienie między niezależnymi maszynami wirtualnymi.
  • Małe opóźnienie między maszynami wirtualnymi w jednym zestawie dostępności lub zestawie skalowania maszyn wirtualnych.
  • Niska latencja między samodzielnymi maszynami wirtualnymi, maszynami wirtualnymi w różnych grupach dostępności lub w wielu zestawach skalowania. Możesz mieć wiele zasobów obliczeniowych w jednej grupie rozmieszczania, aby połączyć aplikację wielowarstwową.
  • Małe opóźnienie między wieloma warstwami aplikacji przy użyciu różnych typów sprzętu. Na przykład uruchomienie zaplecza serwerowego przy użyciu serii M w zestawie dostępności oraz warstwy front-endowej w wystąpieniu serii D, w zestawie skalowania, w jednej blisko umiejscowionej grupie.

Używanie grup bliskościowych

Grupa umieszczania w pobliżu to zasób platformy Azure. Należy go utworzyć przed użyciem go z innymi zasobami. Po utworzeniu można go używać z maszynami wirtualnymi, zestawami dostępności lub zestawami skalowania maszyn wirtualnych. Podczas tworzenia zasobów obliczeniowych należy określić grupę umieszczania w pobliżu, podając jej identyfikator.

Możesz również przenieść istniejący zasób do grupy rozmieszczenia w pobliżu. Podczas przenoszenia zasobu do grupy umieszczania w pobliżu należy najpierw zatrzymać (zdezaktywować) zasób, ponieważ może zostać przeniesiony do innego centrum danych w regionie, aby spełnić ograniczenie kolokacji.

W przypadku zestawów dostępności i zestawów skalowania maszyn wirtualnych należy ustawić grupę bliskości umieszczania na poziomie zasobu, a nie na poziomie poszczególnych maszyn wirtualnych.

Grupa umieszczania blisko siebie jest ograniczeniem kolokacji, a nie mechanizmem przypinania. Jest przypisywany do konkretnego centrum danych wraz z wdrożeniem pierwszego zasobu, który z niego korzysta. Po zatrzymaniu (cofnięciu przydziału) lub usunięciu wszystkich zasobów korzystających z grupy umieszczania w pobliżu, grupa ta nie jest już przypięta. Dlatego podczas korzystania z grupy bliskości rozmieszczenia obejmującej wiele serii maszyn wirtualnych ważne jest, aby w miarę możliwości z góry określić w szablonie wszystkie wymagane typy maszyn lub zastosować sekwencję wdrażania, która zwiększy szanse na pomyślne wdrożenie. Jeśli wdrożenie zakończy się niepowodzeniem, uruchom ponownie wdrożenie z rozmiarem maszyny wirtualnej, który nie powiódł się jako pierwszy rozmiar do wdrożenia.

Czego można oczekiwać przy korzystaniu z Proximity Placement Groups

Grupy rozmieszczania w bliskości oferują kolokację w tym samym centrum danych. Z powodu dodatkowych ograniczeń związanych z grupami umieszczania blisko siebie, mogą wystąpić błędy przydziału. Istnieje kilka scenariuszy, w których podczas korzystania z grup rozmieszczenia bliskości mogą wystąpić błędy alokacji:

  • Gdy zapytasz o pierwszą maszynę wirtualną w grupie umieszczania w pobliżu, zostanie automatycznie wybrane centrum danych. W niektórych przypadkach drugie żądanie dotyczące innego rozmiaru SKU maszyny wirtualnej może zakończyć się niepowodzeniem, jeśli ten rozmiar nie jest dostępny w tym centrum danych. W takim przypadku zwracany jest błąd OverconstrainedAllocationRequest. Aby tego uniknąć, spróbuj zmienić kolejność wdrażania zasobów SKU lub wdrożyć oba zasoby za pomocą jednego szablonu ARM.
  • W przypadku obciążeń elastycznych, w których dodajesz i usuwasz wystąpienia maszyn wirtualnych (VM), ograniczenie związane z grupą umieszczania blisko siebie dla wdrożenia może skutkować niemożnością spełnienia żądania, co powoduje błąd AllocationFailure.
  • Zatrzymywanie (dealokacja) i uruchamianie maszyn wirtualnych w zależności od potrzeb jest innym sposobem zapewnienia elastyczności. Ponieważ pojemność nie jest przechowywana po zatrzymaniu (cofnięciu przydziału) maszyny wirtualnej, jej ponowne uruchomienie może spowodować błąd AllocationFailure .
  • Operacje uruchamiania i ponownego wdrażania maszyny wirtualnej będą nadal uwzględniać Proximity Placement Group po pomyślnym skonfigurowaniu.

Planowana konserwacja i grupy umieszczania w pobliżu

Zdarzenia planowanej konserwacji, takie jak wycofywanie sprzętu z eksploatacji w centrum danych platformy Azure, mogą potencjalnie wpłynąć na alokację zasobów w grupach umieszczania w pobliżu. Zasoby mogą zostać przeniesione do innego centrum danych, zakłócając oczekiwania dotyczące kolokacji i opóźnienia skojarzone z grupą umieszczania w pobliżu.

Sprawdź stan wyrównania

Możesz wykonać następujące czynności, aby sprawdzić stan ustawienia grup umiejscawiania w pobliżu.

  • Stan kolokacji grupy umieszczania w pobliżu można wyświetlić przy użyciu portalu, interfejsu wiersza polecenia i programu PowerShell.

    • W przypadku programu PowerShell stan kolokacji można uzyskać przy użyciu polecenia cmdlet Get-AzProximityPlacementGroup, włączając opcjonalny parametr "-ColocationStatus".

    • W interfejsie wiersza polecenia stan kolokacji można uzyskać za pomocą az ppg show, dodając opcjonalny parametr „--include-colocation-status”.

  • Dla każdej grupy lokacji bliskiej właściwość stanu kolokacji zawiera bieżące podsumowanie statusu dopasowania pogrupowanych zasobów.

    • Wyrównane: Zasób znajduje się w tym samym zakresie opóźnienia grupy rozmieszczania w pobliżu.

    • Nieznany: co najmniej jeden z zasobów maszyny wirtualnej został zwolniony. Po pomyślnym uruchomieniu stan powróci do pozycji Wyrównane.

    • Niedopasowane: co najmniej jeden zasób maszyny wirtualnej nie jest dopasowany do grupy umieszczania ze względu na bliskość. Konkretne zasoby, które nie są zgodne, zostaną również osobno wskazane w sekcji członkostwa

  • W przypadku zestawów dostępności można wyświetlić informacje o wyrównaniu poszczególnych maszyn wirtualnych na stronie Przegląd zestawu dostępności.

  • W przypadku zestawów skalowania informacje dotyczące wyrównania poszczególnych wystąpień można znaleźć na karcie Wystąpienia na stronie Przegląd zestawu skalowania.

Ponowne dopasowywanie zasobów

Jeśli grupa umieszczania blisko siebie to Not Aligned, możesz zatrzymać/cofnąć przydział, a następnie ponownie uruchomić zasoby, których to dotyczy. Jeśli maszyna wirtualna znajduje się w zestawie dostępności lub zestawie skalowania, przed ponownym uruchomieniem wszystkie maszyny wirtualne w zestawie dostępności lub zestawie skalowania muszą zostać zatrzymane i cofnięte przydzielenie zasobów.

Jeśli wystąpi niepowodzenie alokacji z powodu ograniczeń wdrożeniowych, może być konieczne najpierw zatrzymanie/cofnięcie przydziału wszystkich zasobów w grupie umieszczania bliskości, której dotyczy problem (w tym wyrównanych zasobów), a następnie ponowne ich uruchomienie w celu przywrócenia wyrównania.

Najlepsze rozwiązania

  • Aby uzyskać najmniejsze opóźnienie, użyj grupy rozmieszczania bliskościowego razem z przyspieszoną siecią. Aby uzyskać więcej informacji, zobacz Tworzenie maszyny wirtualnej z systemem Linux z przyspieszoną siecią lub Tworzenie maszyny wirtualnej z systemem Windows z przyspieszoną siecią.
  • Wdróż wszystkie rozmiary maszyn wirtualnych w jednym szablonie. Aby uniknąć lądowania na sprzęcie, który nie obsługuje wszystkich potrzebnych jednostek SKU i rozmiarów maszyn wirtualnych, uwzględnij wszystkie warstwy aplikacji w jednym szablonie, aby wszystkie były wdrażane w tym samym czasie.
  • Jeśli tworzysz skrypt wdrożenia przy użyciu programu PowerShell, interfejsu CLI lub zestawu SDK, może wystąpić błąd alokacji OverconstrainedAllocationRequest. W takim przypadku należy zatrzymać/cofnąć przydział wszystkich istniejących maszyn wirtualnych i zmienić sekwencję skryptu wdrażania, aby rozpocząć od jednostki SKU/rozmiarów maszyny wirtualnej, które zakończyły się niepowodzeniem.
  • Po ponownym użyciu istniejącej grupy umieszczania, z której maszyny wirtualne zostały usunięte, przed dodaniem maszyn wirtualnych poczekaj na pełne zakończenie usuwania.
  • Jeśli opóźnienie jest kwestią najwyższego priorytetu, umieść maszyny wirtualne w grupie umieszczenia w pobliżu oraz całe rozwiązanie w strefie dostępności. Ale jeśli najważniejsza jest odporność, rozmieść instancje w wielu strefach dostępności (pojedyncza grupa umieszczania blisko siebie nie może obejmować wielu stref).

Utwórz grupę umieszczania blisko siebie

Utwórz grupę umieszczania bliskości przy użyciu polecenia cmdlet New-AzProximityPlacementGroup.

$resourceGroup = "myPPGResourceGroup"
$location = "East US"
$ppgName = "myPPG"
New-AzResourceGroup -Name $resourceGroup -Location $location
$ppg = New-AzProximityPlacementGroup `
   -Location $location `
   -Name $ppgName `
   -ResourceGroupName $resourceGroup `
   -ProximityPlacementGroupType Standard

Wyświetl listę grup umieszczania blisko siebie

Możesz wyświetlić wszystkie grupy umieszczania blisko siebie przy użyciu polecenia cmdlet Get-AzProximityPlacementGroup.

Get-AzProximityPlacementGroup

Tworzenie zestawu skalowania w grupie umieszczania w pobliżu

Important

Od listopada 2023 r. zestawy skalowania maszyn wirtualnych utworzone przy użyciu programu PowerShell i interfejsu wiersza polecenia platformy Azure będą domyślnie ustawiać tryb elastycznej orkiestracji, jeśli nie określono trybu aranżacji. Aby uzyskać więcej informacji na temat tej istotnej zmiany i działań, które należy podjąć, przejdź do Krytyczna zmiana dla klientów PowerShell/CLI usługi VMSS — Microsoft Community Hub

Utwórz zestaw skalowania w grupie rozmieszczenia bliskości, używając identyfikatora -ProximityPlacementGroup $ppg.Id do odwołania się do identyfikatora grupy rozmieszczenia bliskości podczas tworzenia zestawu skalowania za pomocą New-AzVMSS.

$scalesetName = "myVM"

New-AzVmss `
  -ResourceGroupName $resourceGroup `
  -Location $location `
  -OrchestrationMode "Uniform" `
  -VMScaleSetName $scalesetName `
  -VirtualNetworkName "myVnet" `
  -SubnetName "mySubnet" `
  -PublicIpAddressName "myPublicIPAddress" `
  -LoadBalancerName "myLoadBalancer" `
  -ProximityPlacementGroup $ppg.Id

Instancję można zobaczyć w grupie umieszczenia bliskości za pomocą polecenia Get-AzProximityPlacementGroup.

  Get-AzProximityPlacementGroup `
   -ResourceId $ppg.Id | Format-Table `
   -Wrap `
   -Property VirtualMachineScaleSets

Następne kroki

Za pomocą Azure CLI można również tworzyć grupy umieszczania blisko siebie.