[8.5.5.4 oder höher]

Automatische Skalierung für Liberty-Verbünde einrichten

Bei der automatischen Skalierung handelt es sich um eine autonome Skalierungsfunktion von Liberty-Servern. Die automatische Skalierung wird über zwei Liberty-Features aktiviert, den Skalierungscontroller und das Skalierungsmember. Bei der automatischen Skalierung wird die Anzahl der für Ihre Workload verwendeten JVMs dynamisch angepasst. Dieses Feature sorgt für operative Beweglichkeit und senkt den Verwaltungsaufwand. Damit wird die Flexibilität Ihrer Middlewareumgebung verbessert. Die Bedingungen für die automatische Skalierung werden in Skalierungsrichtlinien definiert. Zu diesen Bedingungen gehören die Mindestanzahl und die maximale Anzahl der Serverinstanzen und die Schwellenwerte für die einzelnen Serverressourcen.

Vorbereitende Schritte

Für dieses Feature muss nicht Dynamic Routing verwendet werden. Allerdings klappt die automatische Skalierung gut, wenn beide Features zusammen verwendet werden. Die Verwendung beider Features wird daher auch empfohlen. Weitere Informationen zu Dynamic Routing finden Sie unter Dynamic Routing für Liberty-Verbünde einrichten.

Liberty-Verbundcontroller können das RXA-Toolkit (Tivoli Remote Execution and Access) verwenden, um ausgewählte Operationen für Verbundmember auszuführen. Informieren Sie sich anhand der Tasks in RXA für Operationen des Liberty-Verbunds einrichten über die Installation und Verwendung von SSH.

Bevor Sie die automatische Skalierung einrichten, müssen Sie auch Ihren JAVA_HOME-Pfad festlegen. Sehen Sie sich dazu die Tasks in Variable JAVA_HOME für Liberty-Verbundmember setzen an.

Informationen zu diesem Vorgang

Ein Cluster mit automatischer Skalierung ist ein Server-Cluster, der sich abhängig von der Workload in Ihrer Umgebung ausdehnen oder schrumpfen kann. Der Liberty-Skalierungscontroller steuert das Starten und Stoppen von Skalierungsmembern ausgehend von Leistungsdaten, die von den Skalierungsmembern gesammelt werden, und von konfigurierbaren Skalierungsrichtlinien. Ein Liberty-Skalierungscontroller, der ein Skalierungsmember eines Server-Clusters sein soll, muss auch ein Member eines Liberty-Verbunds sein. Ein Server-Cluster hat innerhalb eines Liberty-Verbunds einen eindeutigen Namen. Alle Liberty-Profile, die in demselben Verbund denselben Clusternamen angegeben, sind Member desselben Server-Clusters. Die Funktionalität für automatische Skalierung wird durch Richtlinien gesteuert, wenn der Ressourcenverbrauch über einen oberen Schwellenwert ansteigt oder unter einen unteren Schwellenwert abfällt.

Die automatische Skalierung wird über zwei Liberty-Features aktiviert, den Skalierungscontroller und das Skalierungsmember.
  • scalingController-1.0

    Der Skalierungscontroller entscheidet, wann sich ein Cluster mit automatischer Skalierung ausdehnen oder schrumpfen soll. Verbundcontroller sind erforderlich, weil sie Verwaltungsfunktionen bereitstellen, mit denen der Verbundcontroller den Skalierungscontroller verwalten kann. Nur einer der aktiven Skalierungscontroller kann Entscheidungen treffen. Weitere Informationen zu Verbundcontrollern und zum Konfigurieren von Controllern für hohe Verfügbarkeit finden Sie unter Liberty-Verbund konfigurieren. Der Skalierungscontroller kann in Reaktion auf eine erhöhte Ressourcennutzung ein Member eines Clusters mit automatischer Skalierung starten oder ein solches Member bei abgefallener Ressourcennutzung im gesamten Cluster stoppen. Wenn Replikatgruppen verwendet werden, müssen alle Verbundcontrollermember Skalierungscontroller sein. Wenn bei Verwendung von Replikatgruppen ein Controller gestoppt wird, übernimmt ein anderer aktiver Skalierungscontroller dessen Funktion. Weitere Informationen zu Replikatgruppen finden Sie unter Liberty-Verbundreplikatgruppen konfigurieren.

    Anmerkung: Der Skalierungscontroller merkt sich den letzten bekannten Status der Skalierungsmember. Das Stoppen des Skalierungscontrollers und das Ändern des Status der Skalierungsmember kann beim Neustart des Skalierungscontrollers zu ungültigen Aktionen führen, bis der Skalierungscontroller den neuesten Status der Skalierungsmember erfasst hat.
    Der Skalierungscontroller unterstützt die folgenden Einsatzszenarien:
    • JVM-Elastizität

      Der Skalierungscontroller startet und stoppt vorhandene Liberty-Server ausgehend von der Ressourcennutzung und optional von Skalierungsrichtlinien. Es werden keine neuen Server bereitgestellt.

  • scalingMember-1.0

    Skalierungsmember überwachen die Workload innerhalb des Servers und des Hosts. Wenn es erforderlich ist, werden entsprechende Informationen an den Skalierungscontroller gesendet. Das Feature für Skalierungsmember muss als Verbundmember in einem Verbund aktiviert werden.

    Anmerkung: Alle Skalierungsmember-Server müssen auch zu einem Cluster gehören, weil alle Richtlinieninformationen auf Cluster-Member angewendet werden.

    Wenn es auf einem Host zwei oder mehr Skalierungsmember gibt, werden diese so organisiert, dass nur ein Skalierungsmember mit dem Skalierungscontroller kommuniziert. Von den Skalierungsmembern auf einem Host wird ein Member als Host-Leader nominiert. Wenn der Host-Leader gestoppt wird, übernimmt ein anderes Skalierungsmember die Aufgaben des Host-Leaders.

    Jedes Skalierungsmember muss ein Element hostSingleton mit einem Port in der Datei server.xml definieren. Alle Skalierungsmember eines Hosts und eines Clusters müssen denselben Port verwenden. Dieser Port wird von einem Auswahlservice verwendet, um einen Host-Leader zu bestimmen. Der Host-Leader ist das einzige Skalierungsmember, das mit dem Skalierungscontroller kommuniziert. Die Host-Leader teilt dem Controller Metrikdaten von den Membern und den Membern vom Controller getroffene Skalierungsentscheidungen mit. Beispiel:

    <hostSingleton name="ScalingMemberSingletonService" port="5164" />

    Weitere Informationen zum Element hostSingleton finden Sie unter Collective Member.

    Das Skalierungsmember überwacht die Verwendung folgender Ressourcen innerhalb des Serverprozesses:
    • CPU
    • Heapspeicher
    • Hauptspeicher
    Das Skalierungsmember überwacht die Verwendung folgender Ressourcen auf Hostebene:
    • CPU
    • Hauptspeicher

Vorgehensweise

  1. Erstellen Sie einen Verbund für die automatische Skalierung.
  2. Definieren Sie Skalierungsrichtlinien, um die Kriterien zu ändern, nach denen der Skalierungscontroller die Workload verwaltet. Weitere Informationen finden Sie unter Skalierungsrichtlinien zur Verwaltung der Workload definieren.

Ergebnisse

Bei aktiviertem Feature für automatische Skalierung können Sie die Anzahl der JVMs, die für Ihre Workload verwendet werden, dynamisch anpassen.

Anmerkung: Die Leistungsmerkmale eines Clusters mit automatischer Skalierung sind nur in WebSphere Application Server Liberty Network Deployment und WebSphere Application Server Liberty für z/OS verfügbar.

Symbol das den Typ des Artikels anzeigt. Taskartikel

Nutzungsbedingungen für Information Center | Feedback


Symbol für Zeitmarke Letzte Aktualisierung: 25.08.2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_wve_autoscaling
Dateiname: twlp_wve_autoscaling.html