Konfigurowanie automatycznego rozmieszczania w strefach w zestawie skalowania (wersja zapoznawcza)

Automatyczne przypisywanie do stref dla zestawów skalowania maszyn wirtualnych umożliwia platformie Azure wybór stref dostępności dla zestawu skalowania na podstawie dostępnej pojemności i dostępności SKU. Zamiast określać stałą listę stref dla każdego regionu, należy skonfigurować wymagania dotyczące umieszczania i Azure wybiera strefy, które najlepiej je spełniają.

Automatyczne rozmieszczanie w strefach jest obsługiwane dla zestawów Virtual Machine Scale Sets z trybami orkiestracji Uniform i Flexible.

Ważna

Automatyczne umieszczanie strefy dla Virtual Machine Scale Sets jest obecnie dostępne w wersji zapoznawczej. Wersje zapoznawcze są udostępniane pod warunkiem udzielenia zgody na dodatkowe warunki użytkowania. Niektóre aspekty tej funkcji mogą ulec zmianie przed ogólną dostępnością.

Jak działa automatyczne umieszczanie stref

Automatyczne rozmieszczanie w strefach ocenia dostępność jednostek SKU, pojemność oraz wszelkie skonfigurowane ograniczenia rozmieszczania, aby wybrać strefy dostępności i rozmieścić wystąpienia maszyn wirtualnych.

Domyślnie zestaw skalowania działa w kierunku rozłożenia wystąpień w trzech strefach dostępności. Jeśli skonfigurujesz maxZoneCount, zestaw skalowania będzie zamiast tego dążyć do rozmieszczenia wystąpień w tylu strefach i nigdy nie przekroczy skonfigurowanego limitu. Rzeczywiste rozmieszczenie zależy od dostępności SKU, pojemności, bieżącego rozmieszczenia stref w zestawie skalowania oraz innych ograniczeń dotyczących rozmieszczenia. Jeśli składnik maxZoneCount nie jest skonfigurowany, a region ma więcej niż trzy strefy dostępności, zestaw skalowania może rozszerzyć się poza domyślny rozkład obejmujący trzy strefy, na przykład na czwartą strefę, jeśli obecne strefy nie mogą obsłużyć żądania skalowania w poziomie.

Domyślnie: automatyczne rozmieszczanie stref.

  • Umożliwia równomierną dystrybucję w trzech strefach dostępności.
  • Wymaga dystrybucji wystąpień w co najmniej dwóch strefach dostępności.
  • Ogranicza liczbę wystąpień w dowolnej strefie do 50 procent zestawu skalowania.
  • Może rozwinąć się do dodatkowych stref dostępności, jeśli bieżące strefy nie mają wystarczającej pojemności dla większej liczby wystąpień, a inna strefa jest dostępna w regionie.

Jeśli pojemność nie jest dostępna w celu spełnienia wszystkich wymagań dotyczących umieszczania, Azure przydziela tyle wystąpień, jak zasady zezwalają, a pozostałe wystąpienia mogą zakończyć się niepowodzeniem. To zachowanie jest częściowym niepowodzeniem alokacji, a nie niepowodzeniem całego żądania.

Uwaga / Notatka

Automatyczne przypisywanie stref wybiera strefy podczas tworzenia nowych instancji. Nie przenosi ani nie tworzy ponownie istniejących wystąpień w celu skorygowania dysproporcji strefy. Aby aktywnie poprawić istniejącą nierównowagę, zobacz Automatyczne równoważenie strefy.

Kiedy używać automatycznego rozmieszczania stref

Używaj automatycznego rozmieszczania stref, gdy:

  • Potrzebujesz strefowego lub obejmującego wiele stref zestawu skalowania, ale nie musisz umieszczać wystąpień w określonych strefach dostępności. Możesz zdefiniować wymagania dotyczące rozprzestrzeniania stref i zezwolić Azure na wybieranie stref.
  • Wdrażasz rozwiązania w wielu regionach, gdzie dostępność strefowych jednostek SKU jest różna. Automatyczne umieszczanie strefy ułatwia zastosowanie spójnej konfiguracji zamiast obsługi list stref specyficznych dla regionu.
  • Chcesz, aby platforma Azure brała pod uwagę sygnały dotyczące bieżącej pojemności podczas wybierania stref dostępności.

Zamiast tego używaj stref dostępności wybranych przez klienta, gdy obciążenie robocze musi korzystać z określonych stref przy każdej operacji rozmieszczania.

Wymagania wstępne

Przed skonfigurowaniem automatycznego umieszczania strefy upewnij się, że:

Rejestrowanie subskrypcji przy użyciu programu AFEC

Subskrypcja musi być zarejestrowana za pomocą flagi Microsoft.Compute/VmssAutomaticZonePlacementAzure Feature Exposure Control (AFEC). Ta rejestracja jest wymagana, aby włączyć funkcję automatycznego rozmieszczania stref dla Twojej subskrypcji.

  1. Zaloguj się do portalu Azure.
  2. W polu wyszukiwania wprowadź subskrypcje, a następnie wybierz pozycję Subskrypcje.
  3. Wybierz swoją subskrypcję.
  4. W Ustawieniach wybierz Podgląd funkcji.
  5. Wyszukaj VmssAutomaticZonePlacement, a następnie wybierz funkcję.
  6. Wybierz opcję Zarejestruj.

Ograniczenia

  • Zestaw skalujący może używać właściwości zones dla stref wybranych przez klienta lub placement.zonePlacementPolicy do automatycznego rozmieszczania w strefach, ale nie obu jednocześnie.
  • Grupy umiejscowienia bliskości nie są obsługiwane.
  • Grupy rezerwacji pojemności nie są obsługiwane.
  • Rozwiązanie Instance Mix dla Virtual Machine Scale Sets nie jest obsługiwane w publicznej wersji zapoznawczej. Oczekiwana obsługa przez ga.
  • Pule rezerwowe nie są obsługiwane.
  • Dedykowane grupy hostów nie są obsługiwane.
  • Strefy brzegowe nie są obsługiwane.
  • Nadmierna aprowizacja nie jest obsługiwana. Upewnij się, że overprovision parametr jest ustawiony na false wartość przed dodaniem placement.zonePlacementPolicy; w przeciwnym razie wdrożenie kończy się niepowodzeniem.
  • Zestawy skalowania usługi Service Fabric nie są obsługiwane.
  • Tworzenie i dołączanie nowej maszyny wirtualnej nie jest obsługiwane. Możesz dołączyć istniejącą strefową maszynę wirtualną, jeśli jej strefa jest zgodna z konfiguracją rozmieszczenia zestawu skalowania.

Właściwości konfiguracji

W poniższym przykładzie pokazano, gdzie w modelu zestawu skalowania pojawiają się właściwości automatycznego rozmieszczania w strefach. Wymagane jest tylko placement.zonePlacementPolicy. Wszystkie inne właściwości są opcjonalne.

{
  "placement": {
    "zonePlacementPolicy": "auto",
    "includeZones": [
      "1",
      "2",
      "4"
    ]
  },
  "properties": {
    "zoneBalance": false,
    "resiliencyPolicy": {
      "zoneAllocationPolicy": {
        "maxZoneCount": 2,
        "maxInstancePercentPerZonePolicy": {
          "enabled": true,
          "value": 70
        }
      }
    }
  }
}

Uwaga / Notatka

Użyj includeZones lub excludeZones. Nie można skonfigurować obu właściwości w tym samym zestawie skalowania.

Następujące właściwości określają zachowanie automatycznego rozmieszczania stref:

Property Description
placement.zonePlacementPolicy Required. Ustaw na "auto", aby włączyć automatyczne rozmieszczanie stref.
placement.includeZones Optional. Lista stref dostępności, które platforma Azure może uwzględnić podczas rozmieszczania. Azure wybiera strefy tylko z tej listy, ale może nie wdrażać instancji we wszystkich wymienionych strefach. Nie można używać tej właściwości z excludeZones.
placement.excludeZones Optional. Lista stref, które platforma Azure musi wykluczyć z rozmieszczania. Nie można używać tej właściwości z includeZones.
zoneBalance Optional. Steruje równoważeniem strefy podczas operacji skalowania. Wartością domyślną jest false, które stosuje równoważenie w miarę możliwości. Jeśli włączysz zoneBalance z automatycznym rozmieszczaniem stref, musisz również określić maxZoneCount. Gdy parametr zoneBalance ma wartość false, element maxZoneCount jest opcjonalny.
resiliencyPolicy.zoneAllocationPolicy.maxZoneCount Optional. Maksymalna liczba stref, z których może korzystać zestaw skalowania. Jeśli nie określisz tej właściwości, Azure kieruje wdrożenie do trzech stref i może rozszerzyć je na dodatkowe strefy, gdy będzie to konieczne do zrealizowania żądania skalowania.
resiliencyPolicy.zoneAllocationPolicy.maxInstancePercentPerZonePolicy.enabled Optional. Włącza lub wyłącza zasady maksymalnej liczby wystąpień na strefę. Ta zasada jest obsługiwana tylko wtedy, gdy zoneBalance ma wartość false.
resiliencyPolicy.zoneAllocationPolicy.maxInstancePercentPerZonePolicy.value Optional. Maksymalna wartość procentowa pojemności docelowej zestawu skalowania, którą można przydzielić do pojedynczej strefy. Jeśli zrealizowanie żądania spowodowałoby przekroczenie tej wartości, platforma Azure przydzieli wystąpienia zgodne z zasadami, a pozostałe wystąpienia mogą nie zostać aprowizowane.

Utwórz zestaw skalowania z automatycznym rozmieszczaniem strefowym

Poniższe scenariusze pokazują, jak skonfigurować automatyczne rozmieszczanie stref, i wyjaśniają oczekiwane działanie tego rozmieszczania. Przed wdrożeniem zestawu skalowania uzupełnij profile systemu operacyjnego, magazynowania i sieci.

Użyj domyślnego zachowania umieszczania

Dodaj placement.zonePlacementPolicy do zasobu zestawu skalowania. Użyj wersji interfejsu API obliczeniowego 2026-03-01 lub nowszej.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
{
  "placement": {
    "zonePlacementPolicy": "auto"
  }
}

Dodaj tę konfigurację do kompletnego żądania zestawu skalowania maszyn wirtualnych.

Oczekiwane zachowanie

Jeśli nie określisz żadnych ograniczeń dotyczących rozmieszczania, Azure równomiernie rozmieszcza instancje w trzech strefach. Na przykład zestaw skalowania z 100 wystąpieniami może mieć rozkład 34, 33 i 33.

Jeśli dystrybucja parzysta z trzema strefami nie jest możliwa, Azure wymaga, aby wystąpienia obejmowały co najmniej dwie strefy i stosuje domyślny limit wynoszący 50 procent wystąpień w dowolnej strefie. Platforma stosuje ten limit nawet wtedy, gdy maxInstancePercentPerZonePolicy nie jest jawnie skonfigurowany.

Załóżmy na przykład, że żądasz 100 wystąpień i dostępnej pojemności w trzech strefach to 70, 30 i 0. Azure próbuje zastosować rozkład 50, 30 i 20. Ponieważ w trzeciej strefie nie ma dostępnej pojemności, ostateczny rozkład wynosi 50, 30 i 0, a 20 wystąpień nie można zainicjować. Aby nadać wyższy priorytet powodzeniu alokacji niż domyślnemu limitowi dystrybucji, skonfiguruj wyższy maxInstancePercentPerZonePolicy.value.

Konfigurowanie kwalifikujących się stref

Użyj opcji includeZones lub excludeZones, aby określić, które strefy platforma Azure uwzględnia podczas rozmieszczania zasobów. Nie można skonfigurować obu właściwości w tym samym zestawie skalowania.

Poniższy przykład ogranicza platformę Azure do uwzględniania wyłącznie stref 1 i 2 przy umieszczaniu.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
{
  "placement": {
    "zonePlacementPolicy": "auto",
    "includeZones": [
      "1",
      "2"
    ]
  }
}

Możesz też użyć polecenia excludeZones , aby uniemożliwić Azure wybieranie określonych stref. Poniższy przykład wyklucza strefę 3:

{
  "placement": {
    "zonePlacementPolicy": "auto",
    "excludeZones": [
      "3"
    ]
  }
}

Oczekiwane zachowanie

Podczas konfigurowania includeZonesAzure wybiera strefy tylko z określonej listy. To ustawienie nie gwarantuje, że platforma Azure umieści wystąpienia w każdej z wymienionych stref. Azure nadal uwzględnia dostępną pojemność, dostępność jednostek SKU, bieżący rozkład oraz inne ograniczenia dotyczące rozmieszczenia podczas rozmieszczania wystąpień.

Po skonfigurowaniu excludeZones, Azure nie wybiera nowych wystąpień ani nie umieszcza ich w wykluczonych strefach. Wszystkie inne obsługiwane strefy pozostają uprawnione. Nie można łączyć includeZones i excludeZones w tym samym zestawie skalowania.

Ogranicz procent wystąpień w jednej strefie

Służy maxInstancePercentPerZonePolicy do kontrolowania maksymalnej wartości procentowej pojemności docelowej zestawu skalowania, którą można przydzielić do dowolnej strefy. Wyższa wartość procentowa zapewnia Azure większą elastyczność w celu spełnienia żądań alokacji, ale umożliwia skoncentrowanie większej liczby wystąpień w jednej strefie.

Ta zasada jest obsługiwana tylko wtedy, gdy zoneBalance ma wartość false.

Minimalna wartość procentowa wystąpienia

Wartość minimalna zależy od liczby stref kwalifikujących się do rozmieszczenia po zastosowaniu przez platformę Azure includeZones, excludeZones i maxZoneCount:

minimum instance percentage = ceil(100 / number of eligible zones)

Na przykład załóżmy, że includeZones zawiera strefy 1, 2 i 4, a maxZoneCount to 2. Obowiązująca liczba kwalifikujących się stref to dwa, więc minimalna prawidłowa wartość procentowa wynosi 50.

Maksymalna liczba wystąpień w jednej strefie

Azure oblicza maksymalną liczbę wystąpień dozwolonych w jednej strefie na podstawie pojemności docelowej zestawu skalowania:

maximum instances per zone = ceil(maximum instance percentage * target capacity / 100)

Azure zaokrągla wynik do najbliższej liczby całkowitej. Jeśli na przykład docelowa liczba wystąpień wynosi 101, a maksymalny procent wystąpień wynosi 85, zestaw skalowania może rozmieścić maksymalnie 86 wystąpień w jednej strefie.

Poniższy przykład umożliwia maksymalnie 85 procent wystąpień w jednej strefie:

PUT or PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
{
  "placement": {
    "zonePlacementPolicy": "auto"
  },
  "properties": {
    "resiliencyPolicy": {
      "zoneAllocationPolicy": {
        "maxInstancePercentPerZonePolicy": {
          "enabled": true,
          "value": 85
        }
      }
    }
  }
}

Oczekiwane zachowanie

Azure najpierw stara się równomiernie rozmieścić instancje w trzech strefach. Jeśli dystrybucja parzysta nie jest możliwa, Azure może przydzielić do jednej strefy maksymalnie 85 procent wystąpień. To ustawienie zapewnia Azure większą elastyczność w celu spełnienia żądań alokacji, ale umożliwia większą koncentrację wystąpień w jednej strefie.

Gdy strefa osiągnie obliczoną maksymalną wartość, Azure próbuje umieścić pozostałe wystąpienia w innych kwalifikujących się strefach. Jeśli te strefy nie mają wystarczającej pojemności, aprowizowanie pozostałych wystąpień może zakończyć się niepowodzeniem.

Załóżmy na przykład, że żądasz 100 wystąpień i dostępnej pojemności w trzech strefach to 90, 10 i 0. Azure stosuje podział 85, 10 i 5. Ponieważ trzecia strefa nie ma dostępnej pojemności, ostateczny rozkład wynosi 85, 10 i 0, a pięciu instancji nie można aprowizować.

Używanie ścisłego równoważenia stref

Ustaw zoneBalance na true, aby wymagać równomiernego rozkładu w wybranych strefach. Należy określić maxZoneCount , kiedy włączono ścisłe równoważenie stref.

Poniższy przykład umożliwia ścisłe równoważenie stref w trzech strefach.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
{
  "placement": {
    "zonePlacementPolicy": "auto"
  },
  "properties": {
    "zoneBalance": true,
    "resiliencyPolicy": {
      "zoneAllocationPolicy": {
        "maxZoneCount": 3
      }
    }
  }
}

Oczekiwane zachowanie

Azure wymaga, aby liczba instancji w wybranych strefach różniła się od siebie o nie więcej niż jedną instancję. Po ustawieniu wartości maxZoneCount3Azure wybiera maksymalnie trzy strefy i utrzymuje ścisłą równowagę między używanymi strefami.

Jeśli platforma Azure nie może utrzymać ścisłej równowagi ze względu na dostępną pojemność lub dostępność stref, instancje, których nie można umieścić zgodnie z tymi zasadami, nie zostaną aprowizowane. Ścisłe równoważenie stref może zatem zmniejszyć skuteczność alokacji w porównaniu z równoważeniem w trybie best effort.

Włącz automatyczne rozmieszczanie między strefami w istniejącym zestawie skalowania

Możesz włączyć automatyczne umieszczanie stref w istniejącym zestawie skalowania, które używa stref wybranych przez klienta lub umieszczania regionalnego.

Warning

Po włączeniu automatycznego rozmieszczania między strefami w regionalnym zestawie skalowania nie można przywrócić tego zestawu skalowania do rozmieszczania regionalnego. Istniejące wystąpienia regionalne pozostają regionalne, ale Azure umieszcza nowe wystąpienia w strefach dostępności.

Przed włączeniem automatycznego umieszczania strefy w regionalnym zestawie skalowania zapoznaj się z artykułem Przygotowanie do rozszerzenia strefy.

W przypadku zestawu skalowania, który używa stref wybranych przez klienta, wyczyść zones właściwość i ustaw wartość placement.zonePlacementPolicy na auto w tej samej operacji aktualizacji. W przypadku regionalnego zestawu skalowania ustaw wartość placement.zonePlacementPolicy na auto.

Wyślij żądanie PATCH do następującego punktu końcowego:

PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01

W przypadku zestawu skalowania korzystającego ze stref wybranych przez klienta wyczyść zones i włącz automatyczne umieszczanie strefy w tym samym żądaniu:

{
  "zones": [],
  "placement": {
    "zonePlacementPolicy": "auto"
  }
}

W przypadku regionalnego zestawu skalowania włącz automatyczne umieszczanie stref bez określania zoneswartości :

{
  "placement": {
    "zonePlacementPolicy": "auto"
  }
}

Oczekiwane zachowanie

Aktualizacja umożliwia automatyczne umieszczanie stref dla nowych wystąpień. Istniejące instancje nie są przenoszone ani tworzone ponownie.

W przypadku zestawu skalowania korzystającego ze stref wybranych przez klienta istniejące wystąpienia pozostają w bieżących strefach dostępności. W przypadku regionalnego zestawu skalowania istniejące wystąpienia regionalne pozostają regionalne. Azure używa automatycznego umieszczania strefy podczas umieszczania nowych wystąpień.

Jeśli wymagania dotyczące przypisania ulegną zmianie, możesz przełączyć się z automatycznego przypisywania do stref z powrotem na strefy wybierane przez klienta. W tej samej operacji aktualizacji wyczyść placement.zonePlacementPolicy i ustaw właściwość zones. Ta aktualizacja nie przenosi ani nie odtwarza istniejących wystąpień.

Następne kroki