Rozwiązywanie problemów z błędami alokacji podczas tworzenia lub zmieniania rozmiaru maszyn wirtualnych na platformie Azure

Podczas tworzenia maszyny wirtualnej (VM), uruchamiania zatrzymanych (cofnięto przydział) maszyn wirtualnych lub zmiany rozmiaru maszyny wirtualnej platforma Microsoft Azure przydziela zasoby obliczeniowe do subskrypcji. Nieustannie inwestujemy w dodatkową infrastrukturę i funkcje, aby upewnić się, że zawsze mamy wszystkie typy maszyn wirtualnych dostępne do obsługi zapotrzebowania klientów. Jednak czasami mogą wystąpić błędy alokacji zasobów z powodu bezprecedensowego wzrostu popytu na usługi platformy Azure w określonych regionach. Ten problem może wystąpić podczas próby utworzenia lub uruchomienia maszyn wirtualnych w regionie, podczas gdy maszyny wirtualne wyświetlają następujący kod błędu i komunikat:

Kod błędu: AllocationFailed lub ZonalAllocationFailed

Komunikat o błędzie: "Alokacja nie powiodła się. Nie mamy wystarczającej pojemności dla żądanego rozmiaru maszyny wirtualnej w tym regionie. Przeczytaj więcej na temat zwiększania prawdopodobieństwa powodzenia alokacji na stronie https://aka.ms/allocation-guidance"

Uwaga

W przypadku rozwiązywania problemów z zestawem skalowania maszyn wirtualnych (VMSS) proces jest taki sam jak standardowa maszyna wirtualna. Aby rozwiązać ten problem, należy postępować zgodnie z instrukcjami w tym artykule.

Komunikat o błędzie: "Alokacja nie powiodła się. Jeśli próbujesz dodać nową maszynę wirtualną do zestawu skalowania maszyn wirtualnych z pojedynczą grupą umieszczania lub zaktualizować/zmienić rozmiar istniejącej maszyny wirtualnej w zestawie skalowania maszyn wirtualnych z pojedynczą grupą umieszczania, pamiętaj, że taka alokacja może mieć zakres do pojedynczego klastra i możliwe, że klaster nie ma pojemności. Przeczytaj więcej na temat zwiększania prawdopodobieństwa powodzenia alokacji na stronie http://aka.ms/allocation-guidance."

W tym artykule wyjaśniono przyczyny niektórych typowych błędów alokacji i zasugerowaliśmy możliwe środki zaradcze.

Jeśli problem z platformą Azure nie został rozwiązany w tym artykule, odwiedź fora platformy Azure w witrynie Q&A i Stack Overflow. Problem można opublikować na tych forach lub @AzureSupport w serwisie Twitter. Możesz również złożyć żądanie pomoc techniczna platformy Azure, wybierając pozycję Uzyskaj pomoc techniczną w witrynie pomoc techniczna platformy Azure.

Dopóki preferowany typ maszyny wirtualnej nie będzie dostępny w preferowanym regionie, zalecamy klientom, którzy napotykają problemy z wdrażaniem, rozważenie wskazówek w poniższej tabeli jako tymczasowego obejścia.

Zidentyfikuj scenariusz najlepiej dopasowany do twojego przypadku, a następnie spróbuj ponownie wykonać żądanie alokacji, korzystając z odpowiedniego sugerowanego obejścia, aby zwiększyć prawdopodobieństwo powodzenia alokacji. Alternatywnie zawsze możesz ponowić próbę później. Dzieje się tak, ponieważ w klastrze, regionie lub strefie mogła zostać uwolniona wystarczająca ilość zasobów, aby obsłużyć żądanie.

Zmienianie rozmiaru maszyny wirtualnej lub dodawanie maszyn wirtualnych do istniejącego zestawu dostępności

Przyczyna

Żądanie zmiany rozmiaru maszyny wirtualnej lub dodania maszyny wirtualnej do istniejącego zestawu dostępności musi zostać wypróbowane w oryginalnym klastrze hostującym istniejący zestaw dostępności. Żądany rozmiar maszyny wirtualnej jest obsługiwany przez klaster, ale klaster może obecnie nie mieć wystarczającej pojemności.

Obejście problemu

Jeśli maszyna wirtualna może być częścią innego zestawu dostępności, utwórz maszynę wirtualną w innym zestawie dostępności (w tym samym regionie). Tę nową maszynę wirtualną można następnie dodać do tej samej sieci wirtualnej.

Zatrzymaj (cofnij przydział) wszystkich maszyn wirtualnych w tym samym zestawie dostępności, a następnie uruchom wszystkie odpowiednie maszyny wirtualne w partii. Aby zatrzymać: kliknij pozycję Grupy > zasobów [grupa zasobów] > Zasoby > [zestaw dostępności] > Virtual Machines > [maszyny wirtualnej] > Zatrzymaj. Po zatrzymaniu wszystkich maszyn wirtualnych przejdź do pozycji Główne>maszyny wirtualne, dodaj filtr zestawu dostępności, a następnie wybierz pozycję Grupuj według zestawu dostępności. Wybierz wszystkie odpowiednie maszyny wirtualne i kliknij przycisk Start. Ten krok gwarantuje uruchomienie nowej próby alokacji i wybranie nowego klastra, który ma wystarczającą pojemność.

Uruchamianie częściowo zatrzymanych (cofniętych przydziałów) maszyn wirtualnych

Przyczyna

Częściowe cofnięcie przydziału oznacza, że zatrzymano (cofnięto przydział) co najmniej jedną maszynę wirtualną, ale nie wszystkie maszyny wirtualne w zestawie dostępności. Po cofnięciu przydziału maszyny wirtualnej skojarzone zasoby są zwalniane. Uruchamianie maszyn wirtualnych w częściowo cofniętym zestawie dostępności jest takie samo jak dodawanie maszyn wirtualnych do istniejącego zestawu dostępności. W związku z tym żądanie alokacji musi być wypróbowane w oryginalnym klastrze hostującym istniejący zestaw dostępności, który może nie mieć wystarczającej pojemności.

Obejście problemu

Zatrzymaj (cofnij przydział) wszystkich maszyn wirtualnych w tym samym zestawie dostępności, a następnie uruchom wszystkie odpowiednie maszyny wirtualne w partii. Aby zatrzymać: kliknij pozycję Grupy > zasobów [grupa zasobów] > Zasoby > [zestaw dostępności] > Virtual Machines > [maszyny wirtualnej] > Zatrzymaj. Po zatrzymaniu wszystkich maszyn wirtualnych przejdź do pozycji Główne>maszyny wirtualne, dodaj filtr zestawu dostępności, a następnie wybierz pozycję Grupuj według zestawu dostępności. Wybierz wszystkie odpowiednie maszyny wirtualne i kliknij przycisk Start. Zapewni to uruchomienie nowej próby alokacji i wybranie nowego klastra, który ma wystarczającą pojemność.

Uruchamianie w pełni zatrzymanych (cofniętych przydziałów) maszyn wirtualnych

Przyczyna

Pełna cofnięcie przydziału oznacza zatrzymanie (cofnięcie przydziału) wszystkich maszyn wirtualnych w zestawie dostępności. Żądanie alokacji w celu uruchomienia tych maszyn wirtualnych będzie przeznaczone dla wszystkich klastrów, które obsługują żądany rozmiar w regionie lub strefie. Zmień żądanie alokacji zgodnie z sugestiami w tym artykule i ponów próbę wykonania żądania, aby zwiększyć szansę na powodzenie alokacji.

Obejście problemu

Jeśli używasz starszych serii lub rozmiarów maszyn wirtualnych, takich jak Dv1, DSv1, Av1, D15v2 lub DS15v2, rozważ przejście do nowszych wersji. Zapoznaj się z tymi zaleceniami dotyczącymi określonych rozmiarów maszyn wirtualnych. Jeśli nie masz opcji użycia innego rozmiaru maszyny wirtualnej, spróbuj wdrożyć w innym regionie w tym samym obszarze geograficznym. Aby uzyskać więcej informacji na temat dostępnych rozmiarów maszyn wirtualnych w każdym regionie, https://aka.ms/azure-regions

Jeśli używasz stref dostępności, wypróbuj inną strefę w regionie, która może mieć dostępną pojemność dla żądanego rozmiaru maszyny wirtualnej.

Jeśli żądanie alokacji jest duże (ponad 500 rdzeni), zapoznaj się ze wskazówkami w poniższych sekcjach, aby podzielić żądanie na mniejsze wdrożenia.

Błędy alokacji dla starszych rozmiarów maszyn wirtualnych (Av1, Dv1, DSv1, D15v2, DS15v2 itp.)

Rozszerzając infrastrukturę platformy Azure, wdrażamy sprzęt nowszej generacji, który jest przeznaczony do obsługi najnowszych typów maszyn wirtualnych. Niektóre starsze maszyny wirtualne serii nie działają w infrastrukturze najnowszej generacji. Z tego powodu klienci mogą czasami doświadczać błędów alokacji dla tych starszych jednostek SKU. Aby uniknąć tego problemu, zachęcamy klientów korzystających ze starszych maszyn wirtualnych serii do rozważenia przejścia na równoważne nowsze maszyny wirtualne zgodnie z następującymi zaleceniami: Te maszyny wirtualne są zoptymalizowane pod kątem najnowszego sprzętu i umożliwiają korzystanie z lepszych cen i wydajności.

Starsza seria maszyn wirtualnych/rozmiar Zalecana nowsza seria maszyn wirtualnych/rozmiar Więcej informacji
Seria Av1 Seria Av2 https://azure.microsoft.com/blog/new-av2-series-vm-sizes/
Seria Dv1 lub DSv1 (od D1 do D5) Seria Dv3 lub DSv3 https://azure.microsoft.com/blog/introducing-the-new-dv3-and-ev3-vm-sizes/
Seria Dv1 lub DSv1 (od D11 do D14) Seria Ev3 lub ESv3
D15v2 lub DS15v2 Jeśli używasz modelu wdrażania programuResource Manager, aby korzystać z większych rozmiarów maszyn wirtualnych, rozważ przejście do wersji D16v3/DS16v3 lub D32v3/DS32v3. Są one przeznaczone do uruchamiania na sprzęcie najnowszej generacji. Jeśli używasz modelu wdrażania Resource Manager, aby upewnić się, że wystąpienie maszyny wirtualnej jest odizolowane od sprzętu dedykowanego pojedynczemu klientowi, rozważ przejście do nowych izolowanych rozmiarów maszyn wirtualnych, E64i_v3 lub E64is_v3, które są przeznaczone do uruchamiania na sprzęcie najnowszej generacji. https://azure.microsoft.com/blog/new-isolated-vm-sizes-now-available/

Błędy alokacji dla dużych wdrożeń (ponad 500 rdzeni)

Zmniejsz liczbę wystąpień żądanego rozmiaru maszyny wirtualnej, a następnie ponów próbę wykonania operacji wdrażania. Ponadto w przypadku większych wdrożeń warto ocenić zestawy skalowania maszyn wirtualnych platformy Azure z wieloma grupami umieszczania. Liczba wystąpień maszyn wirtualnych może automatycznie zwiększać lub zmniejszać się w odpowiedzi na zapotrzebowanie lub zdefiniowany harmonogram i masz większe szanse na powodzenie alokacji, ponieważ wdrożenia można rozłożyć na wiele klastrów po wdrożeniu jako grupa z wieloma rozmieszczeniami. Dowiedz się więcej o pracy z dużymi zestawami skalowania maszyn wirtualnych i sposobie konwertowania istniejącego zestawu skalowania na wiele grup umieszczania. Należy pamiętać, że można zmienić zestaw skalowania z obsługi pojedynczej grupy umieszczania na obsługę wielu grup umieszczania, ale nie można wykonać konwersji w innym kierunku.

Informacje podstawowe

Jak działa alokacja

Serwery w centrach danych platformy Azure są partycjonowane na klastry. Zwykle żądanie alokacji jest podejmowane w wielu klastrach, ale możliwe, że pewne ograniczenia żądania alokacji wymuszają na platformie Azure próbę wykonania żądania tylko w jednym klastrze. W tym artykule będziemy nazywać to "przypiętym do klastra". Diagram 1 poniżej przedstawia przypadek normalnej alokacji, która jest podejmowana w wielu klastrach. Diagram 2 przedstawia przypadek alokacji przypiętej do klastra 2, ponieważ tam jest hostowany istniejący zestaw CS_1 usługi w chmurze lub zestaw dostępności. Diagram 1 przedstawia próbę alokacji w wielu klastrach, a diagram 2 przedstawia alokację przypiętą do jednego klastra.

Dlaczego występują błędy alokacji

Gdy żądanie alokacji jest przypięte do klastra, istnieje większe prawdopodobieństwo znalezienia bezpłatnych zasobów, ponieważ dostępna pula zasobów jest mniejsza. Ponadto jeśli żądanie alokacji jest przypięte do klastra, ale żądany typ zasobu nie jest obsługiwany przez ten klaster, żądanie zakończy się niepowodzeniem, nawet jeśli klaster ma bezpłatne zasoby. Na poniższym diagramie 3 przedstawiono przypadek niepowodzenia przypiętej alokacji, ponieważ jedyny klaster kandydujący nie ma bezpłatnych zasobów. Diagram 4 przedstawia przypadek niepowodzenia przypiętej alokacji, ponieważ jedyny klaster kandydujący nie obsługuje żądanego rozmiaru maszyny wirtualnej, mimo że klaster ma bezpłatne zasoby.

Diagram 3 pokazuje, że alokacja nie powiodła się w przypiętym klastrze: brak dostępnego bezpłatnego zasobu, a diagram 4 pokazuje, że alokacja nie powiodła się w przypiętym klastrze: rozmiar nie jest obsługiwany.

Skontaktuj się z nami, aby uzyskać pomoc

Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii platformy Azure.