Udostępnij przez


Zarządzanie poziomym skalowaniem klastra (scale-out) w usłudze Azure Data Explorer w celu dostosowania do zmieniających się potrzeb.

Odpowiednie ustalanie rozmiaru klastra ma kluczowe znaczenie dla wydajności usługi Azure Data Explorer. Rozmiar klastra statycznego może prowadzić do niedostatecznego wykorzystania lub nadmiernego wykorzystania, z których żaden nie jest idealny. Ponieważ zapotrzebowanie na klaster nie może być przewidywane z bezwzględną dokładnością, lepiej jest skalować klaster, dodając i usuwając pojemność i zasoby procesora CPU ze zmieniającym się zapotrzebowaniem.

Istnieją dwa przepływy pracy do skalowania klastra usługi Azure Data Explorer:

  • Skalowanie w poziomie, nazywane również skalowaniem w górę i w dół.
  • Skalowanie w pionie, nazywane również skalowaniem w górę i w dół. W tym artykule wyjaśniono proces skalowania poziomego.

Konfigurowanie skalowania w poziomie

Za pomocą skalowania w poziomie można automatycznie skalować liczbę wystąpień na podstawie wstępnie zdefiniowanych reguł i harmonogramów. Aby określić ustawienia autoskalowania dla klastra:

  1. W witrynie Azure Portal przejdź do zasobu klastra usługi Azure Data Explorer. W obszarze Ustawienia wybierz pozycję Skaluj w poziomie.

  2. W oknie Skalowanie w poziomie wybierz metodę autoskalowania: Skalowanie ręczne, Zoptymalizowane autoskalowanie lub Autoskalowanie niestandardowe.

Skalowanie ręczne

W przypadku opcji skalowania ręcznego klaster ma pojemność statyczną, która nie zmienia się automatycznie. Wybierz pojemność statyczną przy użyciu paska Liczba wystąpień . Skalowanie klastra pozostaje w wybranym ustawieniu do momentu zmiany.

Metoda skalowania ręcznego.

Zoptymalizowane autoskalowanie jest ustawieniem domyślnym podczas tworzenia klastra i zalecaną metodą skalowania. Ta metoda optymalizuje wydajność i koszty klastra w następujący sposób:

  • Jeśli klaster jest niedostatecznie wykorzystany, zmniejsza się jego rozmiar, co prowadzi do obniżenia kosztów bez wpływu na wymaganą wydajność.
  • Jeśli klaster jest nadmiernie wykorzystany, skaluje się w poziomie, aby zachować optymalną wydajność.

Aby skonfigurować zoptymalizowane autoskalowanie:

  1. Wybierz pozycję Zoptymalizowane autoskalowanie.

  2. Określ minimalną i maksymalną liczbę wystąpień. Zakres automatycznego skalowania klastra waha się między tymi wartościami w zależności od obciążenia.

  3. Wybierz Zapisz.

    Zoptymalizowana metoda autoskalowania.

Zoptymalizowane autoskalowanie zaczyna działać. Możesz wyświetlić jego akcje w dzienniku aktywności klastra na platformie Azure.

Logika zoptymalizowanego autoskalowania

Zoptymalizowane autoskalowanie używa logiki predykcyjnej lub reaktywnej. Logika predykcyjna śledzi wzorzec użycia klastra, a gdy identyfikuje sezonowość z dużą pewnością, zarządza skalowaniem klastra. W przeciwnym razie logika reaktywna, która śledzi rzeczywiste użycie klastra, służy do podejmowania decyzji dotyczących operacji skalowania klastra na podstawie bieżącego poziomu użycia zasobów.

Główne metryki dla przepływów predykcyjnych i reaktywnych to:

  • CPU
  • Współczynnik wykorzystania pamięci podręcznej
  • Wykorzystanie pozyskiwania

Zarówno logika predykcyjna, jak i reaktywna są powiązane z granicami rozmiaru klastra, minimalną i maksymalną liczbą wystąpień zgodnie z definicją w zoptymalizowanej konfiguracji skalowania automatycznego. Częste powiększanie i zmniejszanie klastra są niepożądane ze względu na wpływ na zasoby klastra oraz czas potrzebny na dodawanie lub usuwanie instancji, jak również na ponowne równoważenie gorącej pamięci podręcznej we wszystkich węzłach.

Automatyczne skalowanie predykcyjne

Logika predykcyjna prognozuje użycie klastra następnego dnia na podstawie wzorca użycia w ciągu ostatnich kilku tygodni. Prognoza służy do tworzenia harmonogramu operacji skalowania wewnętrznego lub skalowania zewnętrznego w celu dostosowania rozmiaru klastra z wyprzedzeniem. Takie podejście umożliwia skalowanie klastra i ponowne równoważenie danych w czasie, gdy obciążenie ulegnie zmianie. Ta logika jest szczególnie skuteczna w przypadku wzorców sezonowych, takich jak dzienny lub tygodniowy wzrost użycia.

Jednak w scenariuszach, w których unikatowy wzrost użycia przekracza prognozę, zoptymalizowane autoskalowanie powraca do logiki reaktywnej. Kiedy taka sytuacja ma miejsce, nieplanowane operacje skalowania w dół lub skalowania w górę odbywają się na podstawie najnowszego poziomu użycia zasobów.

Reaktywne automatyczne skalowanie

Skalowanie w poziomie

Gdy klaster zbliża się do stanu nadmiernego wykorzystania, operacja skalowania w poziomie odbywa się w celu zachowania optymalnej wydajności. Operacja skalowania w poziomie odbywa się, gdy wystąpi co najmniej jeden z następujących warunków:

  • Wykorzystanie pamięci podręcznej jest wysokie przez ponad godzinę
  • Obciążenie procesora jest wysokie od ponad godziny.
  • Wykorzystanie przetwarzania danych jest na wysokim poziomie przez ponad godzinę.

Zmniejsz skalę

Gdy klaster jest niedostatecznie wykorzystany, skalowanie w operacji odbywa się w celu obniżenia kosztów przy zachowaniu optymalnej wydajności. Wiele metryk potwierdza, że bezpiecznie jest przeprowadzić skalowanie w obrębie klastra.

Aby upewnić się, że nie ma przeciążenia zasobów, przed wykonaniem skalowania zostaną ocenione następujące metryki:

  • Wykorzystanie pamięci podręcznej nie jest wysokie
  • Procesor JEST poniżej średniej
  • Wykorzystanie pozyskiwania jest poniżej średniej
  • Jeśli jest używane pozyskiwanie strumieniowe, wykorzystanie pozyskiwania strumieniowego nie jest wysokie
  • Metryka keep-alive jest powyżej zdefiniowanego minimum, przetwarzana prawidłowo i na czas, co wskazuje, że klaster jest responsywny.
  • Usługa nie ogranicza zapytań.
  • Liczba zakończonych niepowodzeniem zapytań pozostaje poniżej zdefiniowanego minimum.

Uwaga / Notatka

Logika zwężania wymaga jednodniowej oceny, zanim będzie mogła zaimplementować zoptymalizowane zwężanie. Ta ocena odbywa się co godzinę. Jeśli potrzebujesz natychmiastowej zmiany, użyj skalowania ręcznego.

Niestandardowe skalowanie automatyczne

Chociaż zoptymalizowane autoskalowanie jest zalecaną opcją skalowania, niestandardowe autoskalowanie platformy Azure jest również obsługiwane. Za pomocą niestandardowego skalowania automatycznego można dynamicznie skalować klaster na podstawie podanych metryk. Wykonaj poniższe kroki, aby skonfigurować niestandardowe skalowanie automatyczne.

Reguła skalowania.

  1. W polu Nazwa ustawienia skalowania wprowadź nazwę, na przykład skalowanie poziome: wykorzystanie pamięci podręcznej.

  2. W Trybie skalowania wybierz Skaluj na podstawie metryki. Ten tryb zapewnia dynamiczne skalowanie. Możesz również wybrać opcję Skaluj do określonej liczby wystąpień.

  3. Wybierz pozycję + Dodaj regułę.

  4. W sekcji Reguła skalowania po prawej stronie wprowadź wartości dla każdego ustawienia.

    Criteria

    Setting Opis i wartość
    Agregacja czasu Wybierz kryteria agregacji, takie jak Średnia.
    Nazwa metryki Wybierz metryka, na której ma być oparta operacja skalowania, na przykład Wykorzystanie pamięci podręcznej.
    Statystyka szczegółowości czasowej Wybierz jedną z opcji Średnia, Minimalna, Maksymalna i Suma.
    Operator Wybierz odpowiednią opcję, taką jak Większe niż lub równe.
    Threshold Wybierz odpowiednią wartość. Na przykład w przypadku wykorzystania pamięci podręcznej 80 procent jest dobrym punktem wyjścia.
    Czas trwania (w minutach) Wybierz odpowiedni czas, aby system spojrzał wstecz podczas obliczania metryk. Zacznij od wartości domyślnej 10 minut.

    Action

    Setting Opis i wartość
    Operacja Wybierz odpowiednią opcję skalowania w górę lub skalowania w dół.
    Liczba wystąpień Wybierz liczbę węzłów lub wystąpień, które chcesz dodać lub usunąć po spełnieniu warunku metryki.
    Schładzanie (minuty) Wybierz odpowiedni interwał wyczekiwania między operacjami skalowania. Zacznij od wartości domyślnej pięciu minut.
  5. Wybierz Dodaj.

  6. W sekcji Limity wystąpień po lewej stronie wprowadź wartości dla każdego ustawienia.

    Setting Opis i wartość
    Minimum Liczba wystąpień, których klaster nie skaluje poniżej, niezależnie od wykorzystania.
    maksymalna Liczba wystąpień, których klaster nie skaluje powyżej, niezależnie od wykorzystania.
    Wartość domyślna Domyślna liczba wystąpień. To ustawienie jest używane, jeśli występują problemy z odczytywaniem metryk zasobów.
  7. Wybierz Zapisz.

Teraz skonfigurowano skalowanie w poziomie dla klastra usługi Azure Data Explorer. Dodaj kolejną regułę skalowania w pionie. Jeśli potrzebujesz pomocy dotyczącej problemów ze skalowaniem klastra, otwórz wniosek o pomoc techniczną w witrynie Azure Portal.