Freigeben über


Verwaltung der horizontalen Skalierung des Clusters (Skalieren und Herunterskalieren) im Azure-Daten-Explorer zur Berücksichtigung sich ändernder Anforderungen

Die geeignete Größenanpassung eines Clusters ist für die Leistung von Azure Data Explorer von entscheidender Bedeutung. Eine statische Clustergröße kann zu Unternutzung oder Überlastung führen, von denen keiner ideal ist. Da die Nachfrage nach einem Cluster nicht mit absoluter Genauigkeit vorhergesagt werden kann, ist es besser, einen Cluster zu skalieren , Kapazität und CPU-Ressourcen mit sich ändernder Nachfrage hinzuzufügen und zu entfernen.

Es gibt zwei Workflows zum Skalieren eines Azure Data Explorer-Clusters:

  • Horizontale Skalierung, auch als Skalierung hinauf und hinunter bezeichnet.
  • Vertikale Skalierung, auch als Skalierung nach oben und unten bezeichnet. In diesem Artikel wird der Workflow für die horizontale Skalierung erläutert.

Konfigurieren der horizontalen Skalierung

Mithilfe der horizontalen Skalierung können Sie die Anzahl der Instanzen basierend auf vordefinierten Regeln und Zeitplänen automatisch skalieren. So geben Sie die Einstellungen für die automatische Skalierung für Ihren Cluster an:

  1. Wechseln Sie im Azure-Portal zu Ihrer Azure Data Explorer-Clusterressource. Wählen Sie unter Einstellungen die Option Aufskalieren aus.

  2. Wählen Sie im Fenster " Verkleinerung " die gewünschte Autoscale-Methode aus: Manuelle Skalierung, optimierte Autoskala oder benutzerdefinierte Autoskalierung.

Manuelle Skalierung

In der Option für die manuelle Skalierung verfügt der Cluster über eine statische Kapazität, die sich nicht automatisch ändert. Wählen Sie die statische Kapazität mithilfe der Instanzanzahlsleiste aus. Die Skalierung des Clusters bleibt bei der ausgewählten Einstellung, bis sie geändert wurde.

Manuelle Skalierungsmethode.

Optimierte Automatische Skalierung ist die Standardeinstellung während der Clustererstellung und die empfohlene Skalierungsmethode. Diese Methode optimiert die Clusterleistung und -kosten wie folgt:

  • Wenn der Cluster nicht genutzt wird, skaliert er sich auf niedrigere Kosten, ohne die erforderliche Leistung zu beeinträchtigen.
  • Wenn der Cluster überbeansprucht ist, skaliert er nach außen, um eine optimale Leistung aufrechtzuerhalten.

Um die optimierte Autoskalierung zu konfigurieren:

  1. Wählen Sie "Optimierte Automatische Skalierung" aus.

  2. Geben Sie eine mindeste und maximale Anzahl von Instanzen an. Die Cluster-Autoskalierung liegt zwischen diesen Werten, basierend auf der Auslastung.

  3. Wählen Sie Speichern aus.

    Optimierte Autoskalierung

Optimierte Auto-Skalierung beginnt zu arbeiten. Sie können ihre Aktionen in der Aktivitätsanmeldung des Clusters in Azure anzeigen.

Logik der optimierten automatischen Skalierung

Optimierte Autoskalen verwenden entweder prädiktive oder reaktive Logik. Predictive Logic verfolgt das Verwendungsmuster des Clusters und wenn sie Saisonalität mit hoher Vertrauenswürdigkeit identifiziert, verwaltet sie die Skalierung des Clusters. Andernfalls wird reaktive Logik, die die tatsächliche Verwendung des Clusters verfolgt, verwendet, um Entscheidungen für Clustermaßstabvorgänge basierend auf der aktuellen Ressourcenauslastung zu treffen.

Die wichtigsten Metriken für prädiktive und reaktive Flüsse sind:

  • Prozessor
  • Cacheauslastungsfaktor
  • Erfassungsauslastung

Sowohl predictive als auch reaktive Logik sind an die Größengrenzen des Clusters, die minimale und maximale Anzahl von Instanzen gebunden, wie in der optimierten Autoskalenkonfiguration definiert. Häufige Scale-out- und Scale-in-Vorgänge sind aufgrund der Auswirkungen auf die Ressourcen des Clusters sowie der benötigten Zeit zum Hinzufügen oder Entfernen von Instanzen und zur Neuverteilung des heißen Caches über alle Knoten hinweg unerwünscht.

Vorhersagbare Autoskalierung

Predictive Logic prognostiziert die Nutzung des Clusters für den nächsten Tag basierend auf seinem Verwendungsmuster in den letzten Wochen. Die Prognose wird verwendet, um einen Zeitplan für Skalierung berein- oder Skalierung heraus-Vorgänge zu erstellen, um die Größe des Clusters im Voraus anzupassen. Mit diesem Ansatz kann die Clusterskalierung und die Datenumbalanierung rechtzeitig abgeschlossen werden, wenn sich die Last ändert. Diese Logik ist besonders effektiv für saisonale Muster, z. B. tägliche oder wöchentliche Nutzungsspitzen.

In Szenarien, in denen ein einzigartiger Anstieg der Nutzung jedoch die Prognose überschreitet, greift optimierte Auto-Skalierung auf reaktive Logik zurück. Wenn diese Situation auftritt, finden Scale-in- oder Scale-out-Operationen ungeplant basierend auf dem aktuellen Stand der Ressourcenauslastung statt.

Reaktive automatische Skalierung

Verkleinerung

Wenn sich der Cluster einem Zustand der Übernutzung nähert, erfolgt ein Scale-Out, um eine optimale Leistung aufrechtzuerhalten. Ein Scale-out-Vorgang erfolgt, wenn mindestens eine der folgenden Bedingungen auftritt:

  • Die Cacheauslastung ist länger als eine Stunde hoch.
  • Die CPU ist länger als eine Stunde hoch
  • Die Aufnahmeauslastung ist für mehr als eine Stunde hoch.

Verkleinern

Wenn der Cluster nicht genutzt wird, erfolgt eine Skalierung im Betrieb, um die Kosten zu senken und gleichzeitig eine optimale Leistung zu gewährleisten. Mehrere Metriken stellen sicher, dass sie im Cluster sicher skaliert werden können .

Um sicherzustellen, dass keine Überlastung von Ressourcen vorhanden ist, werden die folgenden Metriken ausgewertet, bevor die Skalierung durchgeführt wird:

  • Die Cacheauslastung ist nicht hoch.
  • CPU liegt unter dem Durchschnitt
  • Die Aufnahmeauslastung liegt unter dem Durchschnitt.
  • Wenn Streaming-Ingest verwendet wird, ist die Streaming-Ingest-Nutzung nicht hoch.
  • Die Metrik "Keep Alive" liegt über einem definierten Minimum, wird ordnungsgemäß und zeitgerecht verarbeitet und zeigt an, dass der Cluster reaktionsfähig ist.
  • Der Dienst drosselt keine Abfragen.
  • Die Anzahl der fehlgeschlagenen Abfragen bleibt unter einem definierten Minimum.

Hinweis

Die scale in-Logik benötigt eine 1-tägige Auswertung, bevor sie einen optimierten scale in implementieren kann. Diese Auswertung erfolgt einmal pro Stunde. Wenn Sie eine sofortige Änderung benötigen, verwenden Sie die manuelle Skalierung.

Benutzerdefinierte Autoskala

Obwohl optimierte Autoskalierung die empfohlene Skalierungsoption ist, wird auch die benutzerdefinierte Azure-Autoscale unterstützt. Mithilfe der benutzerdefinierten Autoskalierung können Sie Ihren Cluster dynamisch basierend auf den von Ihnen angegebenen Metriken skalieren. Führen Sie die folgenden Schritte aus, um benutzerdefinierte Autoskalen zu konfigurieren.

Skalierungsregel.

  1. Geben Sie im Namen der Autoskaleneinstellung einen Namen ein, z. B. Scale-out: Cache-Auslastung.

  2. Wählen Sie für den Skalierungsmodus die Option "Skalieren" basierend auf einer Metrik aus. Dieser Modus bietet eine dynamische Skalierung. Sie können auch "Skalieren" auf eine bestimmte Instanzanzahl auswählen.

  3. Wählen Sie +Regel hinzufügen.

  4. Geben Sie im Abschnitt "Skalierungsregel " auf der rechten Seite Werte für jede Einstellung ein.

    Kriterien

    Setting Beschreibung und Wert
    Zeitaggregation Wählen Sie ein Aggregationskriterien aus, z. B. "Mittelwert".
    Metrikname Wählen Sie die Metrik aus, auf der der Skalierungsvorgang basieren soll, z. B. "Cacheauslastung".
    Zeitgranularitätsstatistik Wählen Sie zwischen Mittelwert, Minimum, Maximum und Summe aus.
    Operator Wählen Sie die entsprechende Option aus, z. B. Größer als oder gleich.
    Schwelle Wählen Sie einen geeigneten Wert aus. Für die Cachenutzung ist beispielsweise 80 Prozent ein guter Ausgangspunkt.
    Dauer (in Minuten) Wählen Sie einen geeigneten Zeitraum für das System aus, um bei der Berechnung von Metriken zurückzusehen. Beginnen Sie mit der Standardeinstellung von 10 Minuten.

    Action

    Setting Beschreibung und Wert
    Operation Wählen Sie die entsprechende Option zum Verkleinern oder Erweitern aus.
    Instanzanzahl Wählen Sie die Anzahl der Knoten oder Instanzen aus, die Sie hinzufügen oder entfernen möchten, wenn eine Metrikbedingung erfüllt ist.
    Abkühlen (Minuten) Wählen Sie ein geeignetes Zeitintervall aus, um zwischen Skalierungsvorgängen zu warten. Beginnen Sie mit der Standardeinstellung von fünf Minuten.
  5. Wählen Sie Hinzufügen aus.

  6. Geben Sie im Abschnitt " Instanzenbeschränkungen " auf der linken Seite Werte für jede Einstellung ein.

    Setting Beschreibung und Wert
    Minimum Die Anzahl der Instanzen, unter die Ihr Cluster unabhängig von der aktuellen Auslastung nicht skaliert.
    Maximum Die Anzahl der Instanzen, die ihr Cluster oben nicht skaliert, unabhängig von der Auslastung.
    Vorgabe Die Standardanzahl der Instanzen. Diese Einstellung wird verwendet, wenn Probleme beim Lesen der Ressourcenmetriken auftreten.
  7. Wählen Sie Speichern aus.

Sie haben jetzt die horizontale Skalierung für Ihren Azure Data Explorer-Cluster konfiguriert. Fügen Sie eine weitere Regel für die vertikale Skalierung hinzu. Wenn Sie Unterstützung bei Clusterskalierungsproblemen benötigen, öffnen Sie eine Supportanfrage im Azure-Portal.