![[8.5.5.4 oder höher]](../ng_v8554.gif)
Skalierungsrichtlinien zur Verwaltung der Workload definieren
Skalierungsrichtlinien werden verwendet, um dynamische Cluster-Member ausgehend von konfigurierbaren Metriken zu starten und zu stoppen. Eine Skalierungsrichtlinie kann für alle oder für bestimmte Cluster definiert werden. Wenn keine Richtlinie definiert ist, wird eine integrierte Richtlinie verwendet.
Informationen zu diesem Vorgang
- Es werden mindestens zwei Cluster-Member aktiv gehalten, sofern verfügbar. Die minimale Anzahl kann möglicherweise nicht eingehalten werden, wenn einige oder alle Member die Metrikschwellenwerte überschreiten.
- Es wird ein zusätzliches Cluster-Member gestartet, wenn die durchschnittliche CPU-Auslastung, Heapspeicher- oder Hauptspeicherbelegung aller aktiven Member 90 % überschreitet.
- Ein Cluster-Member wird gestoppt, wenn die durchschnittliche CPU-Auslastung und Heapspeicherbelegung unter 30 % fällt.
Es kann eine Skalierungsrichtlinie für alle Cluster mit der Standardskalierungsrichtlinie definiert werden. Die Standardskalierungsrichtlinie übernimmt integrierte Skalierungsrichtlinienmetriken, einschließlich der Werte für die minimale und die maximale Anzahl an Instanzen. Alle vom Benutzer an der Standardskalierungsrichtlinie vorgenommenen Änderungen überschreiben die integrierten Werte. Werte, die in der Standardskalierungsrichtlinie nicht angegeben sind, werden von der integrierten Skalierungsrichtlinie übernommen.
Anders als die Standardskalierungsrichtlinie werden die Skalierungsrichtlinienmetriken nicht von der integrierten bzw. Standardskalierungsrichtlinie übernommen. Die minimale und die maximale Anzahl an Instanzen werden jedoch mit den Werten aus der integrierten Richtlinie initialisiert. Da Skalierungsmetriken als optionale Werte betrachtet werden, werden nur die in der Richtlinie angegebenen Metriken in Skalierungsentscheidungen einbezogen. Nicht in die Skalierungsrichtlinie eingeschlossene Metriken werden bei Skalierungsentscheidungen nicht analysiert.
- Standardskalierungsrichtlinie (defaultScalingPolicy)
Sie können eine Standardskalierungsrichtlinie definieren, um alle Cluster zu verwalten, für die keine spezifischere Skalierungsrichtlinie definiert werden muss. .
Das folgende Beispiel zeigt, wie eine Standardskalierungsrichtlinie definiert wird, bei der die Mindestanzahl der aktiven Cluster-Member auf drei gesetzt ist.<scalingDefinitions> <defaultScalingPolicy min="3"/> </scalingDefinitions>
- Skalierungsrichtlinie (scalingPolicy)
Sie können eine Skalierungsrichtlinie definieren, um einen oder mehrere Cluster mit zielgruppenspezifischen Kriterien, die in der Skalierungsrichtlinie definiert werden, zu verwalten. Da Skalierungsrichtliniendefinitionen keine Metrikschwellenwerte übernehmen, werden nur angegebene Metrikschwellenwerte überwacht. Alle anderen Schwellenwerte werden ignoriert, da sie sich auf Skalierungsrichtlinien beziehen. Die integrierten Skalierungsrichtlinienwerte für die minimale und die maximale Anzahl an Instanzen werden auch dann berücksichtigt, wenn sie nicht angegeben sind.
Das folgende Beispiel zeigt, wie eine Skalierungsrichtlinie definiert wird, mit der die Schwellenwerte der CPU-Nutzung für das Starten und Stoppen von Server in einem Cluster mit dem Namen cluster1 geändert werden.<scalingDefinitions> <scalingPolicy id="cluster1Policy"> <bind clusters="cluster1"/> <metric name="CPU" min="10" max="70"/> </scalingPolicy> </scalingDefinitions>
Der Wert des Attributs clusters des Element bind ist eine Liste mit durch Kommata getrennten Clusternamen. Einen Stern als Platzhalter für null oder mehr Zeichen können Sie nur am Ende des Namens verwenden. Beispiel:
In diesem Beispiel gilt die Skalierungsrichtlinie für einen Cluster mit dem Namen west und für alle Cluster, deren Name mit south beginnt. Wenn ein Clustername zu mehreren Richtlinien passt, verwendet der Skalierungscontroller die folgenden Regeln für die Wahl einer Richtlinie:<bind clusters="west,south*"/>
- Eine exakte Übereinstimmung hat Vorrang vor einer Platzhalterübereinstimmung.
- Wenn es mehrere Platzhalterübereinstimmungen gibt, wird die Richtlinie mit dem längsten Präfix verwendet.
Die Richtlinie führt die Skalierung auf den Standardwerten für die minimale und maximale Anzahl durch. Im vorherigen Beispiel werden die Cluster nur basierend auf den angegebenen CPU-Werten (min=10 und max=70) skaliert.
Metrikbasierte Skalierungsentscheidungen werden auf Clusterebene getroffen. Jedes Cluster-Member überwacht seine eigenen Metriken. Die CPU- und Hauptspeichermetrikwerte für einen Server entweder die des Server-JVM-Prozesses oder die des Server-Hosts, je nachdem, welche Werte höher sind. Der Metrikwert für den Heapspeicher wird nur vom Server-JVM-Prozess übernommen. Bei der Erkennung einer messbaren Änderung einer überwachten Metrik wird diese Metrik zur Analyse an den Controller gesendet. Alle Cluster-Member-Metriken werden summiert und dann wird für jede Metrik ein Clusterdurchschnittswert ermittelt. Der berechnete Wert für jede Metrik wird dann mit den definierten oberen und/oder unteren Schwellenwerten verglichen, um festzustellen, ob eine Skalierungsentscheidung ausgelöst wird.
Scale-out-Entscheidungen werden auf der Basis einer einzelnen Metrik getroffen. Alle überwachten Metriken werden für den Cluster analysiert, und falls eine der Metriken den maximalen Schwellenwert der Richtlinie überschreitet, wird ein Scale-out-Ereignis ausgelöst. Scale-in-Entscheidungen werden basierend auf allen überwachten Metriken getroffen. Der Clusterdurchschnittswert für jede überwachte Metrik wird analysiert. Wenn alle Metriken unterhalb des Mindestschwellenwerts der Richtlinie liegen, wird ein Scale-in-Ereignis ausgelöst.
Nachdem eine Skalierungsentscheidung getroffen wurde, wird ein Skalierungsziel ausgewählt. Das Skalierungsziel ist der Host, auf dem die Aktion zum Stoppen des Servers (für Scale-in) bzw. zum Starten des Servers (für Scale-out) ausgeführt wird. Bei der Bestimmung eines Ziels für eine Scale-out-Aktion werden Metriken auf Hostebene berücksichtigt. Wenn eine der Metriken auf Hostebene ihren maximalen Richtlinienschwellenwert überschreitet, wird dieser Host umgangen und ein anderer Host für die Scale-out-Aktion ausgewählt.
Vorgehensweise
Ergebnisse
Ihre Skalierungsrichtlinien sind jetzt definiert.