Rozwiązywanie problemów z kodem błędu SubscriptionRequestsThrottled (429)

Podsumowanie

W tym artykule omówiono sposób identyfikowania i rozwiązywania błędu SubscriptionRequestsThrottled (stan 429), który występuje podczas próby utworzenia i wdrożenia klastra usługi Microsoft Azure Kubernetes Service (AKS).

Objawy

Podczas próby utworzenia klastra AKS wyświetlany jest następujący komunikat o błędzie: "Uzgadnianie standardowego modułu do równoważenia obciążenia nie powiodło się", który pokazuje pole "SubCode" z wartością SubscriptionRequestsThrottled oraz pole "Status" z wartością 429.

Synchronizacja standardowego modułu równoważenia obciążenia nie powiodła się.

Szczegóły: próba ponownego uruchomienia elementu outboundReconciler nie powiodła się:

Kategoria: ClientError;

Podkodowanie: SubscriptionRequestsThrottled;

Zależność: Microsoft.Network/PublicIPAddresses;

OrginalError: autorest/azure: Usługa zwróciła błąd. Status=429

Code="SubscriptionRequestsThrottled"

Message="Liczba żądań dla subskrypcji '<subscription-id-guid>' i operacji 'GET/SUBSCRIPTIONS/RESOURCEGROUPS/PROVIDERS/MICROSOFT.NETWORK/PUBLICIPADDRESSES' przekroczyła limit pamięci zaplecza." Spróbuj ponownie po upływie 6 sekund.

AKSTeam: Sieci, Odtwarzalne: nieprawda.

Ograniczanie żądań może wystąpić w różnych składnikach platformy Azure, więc komunikat o błędzie może się różnić w zależności od rodzaju zasobu, na podstawie którego występuje ten problem.

Przyczyna

Operacja napotkała ograniczanie żądań podczas uzyskiwania dostępu do zasobu Azure. Usługa ARM i poszczególni dostawcy zasobów wymuszają oddzielne limity.

W poprzednim przykładzie zależność, której dotyczy problem, to Microsoft.Network/PublicIPAdresses, a błąd identyfikuje problem jako limit magazynu zaplecza systemu.

Odpowiedni limit i zakres zależą od usługi i operacji. Przejrzyj pełny błąd i dostępne nagłówki odpowiedzi, aby zidentyfikować żądanie, którego dotyczy problem.

Zobacz Limity żądań usługi ARM

Troubleshooting

Identyfikowanie żądania, którego dotyczy problem

Sprawdź pełny błąd i dostępne nagłówki odpowiedzi od klienta, który zgłasza błąd. Zarejestruj operację lub zależność, których dotyczy problem, stan HTTP, szczegóły błędu i wartość Retry-After.

Jeśli zasób usługi AKS istnieje, otwórz klaster w portalu Azure, wybierz pozycję Diagnozuj i rozwiąż problemy, a następnie wyszukaj Azure ograniczanie żądań zasobów. Wybierz zakres czasu zdarzenia i porównaj łączną liczbę żądań oraz żądania ograniczone z podziałem na operację i agenta użytkownika. Przejrzyj innych klientów, którzy współdzielą zakres, którego dotyczy problem.

Zmniejszanie żądań i bezpieczne ponawianie prób

Zmniejsz lub wstrzymaj nieistotną automatyzację, która uzyskuje dostęp do zasobów, których dotyczy problem. Uruchamiaj zapytania odnajdywania i monitorowania rzadziej i wykonuj zapytania dotyczące określonych zasobów, zamiast wielokrotnie wyliczać wszystkie zasoby w ramach całej subskrypcji, jeśli jest to możliwe.

Poczekaj co najmniej tyle, ile wynosi wartość Retry-After w rzeczywistej odpowiedzi, przed ponowną próbą.

Przed ponownym przesłaniem operacji zarządzania sprawdź, czy oryginalna operacja nadal trwa. W przypadku zaakceptowanej operacji asynchronicznej postępuj zgodnie ze zwróconym adresem URL stanu operacji i wskazówkami dotyczącymi sondowania zamiast wielokrotnie przesyłać tę samą zmianę.

Zastosuj dodatkowe środki zaradcze w razie potrzeby:

  • Rozłóż zmiany w czasie i pozwól na ukończenie poprzedniej operacji przed wprowadzeniem kolejnej.
  • Rozważ dystrybucję nowych wdrożeń między subskrypcjami lub regionami po potwierdzeniu zakresu danego limitu.

Więcej informacji