Member aus einem Liberty-Verbund entfernen

Sie können den Befehl remove des Verbunddienstprogramms verwenden, um einen Member-Server aus einem Verbund zu entfernen. Der Befehl remove hebt die Registrierung des Member-Servers im Verbund auf und entfernt Memberdateien, die zum Verbund gehören. Mit dem Befehl remove wird der Member-Server nicht gelöscht und die Memberdatei server.xml wird auch nicht geändert.

Informationen zu diesem Vorgang

Administratoren eines Verbunds können mit dem Befehl join einen Server zu einem Verbund hinzufügen und, nachdem der Member-Server nicht mehr benötigt wird, den Server mit dem Befehl remove aus dem Verbund entfernen.

Der Befehl remove kann einen Member-Server entfernen, der nicht vorhanden ist. Der Befehl kann beispielsweise Informationen über den Member aus dem Verbundcontroller in den folgenden Situationen entfernen:

  • Das Member wurde versehentlich oder absichtlich gelöscht.
  • Die Implementierung schlägt fehl und das Member wird teilweise erstellt oder die Memberkonfiguration enthält Fehler, der Befehl join wurde jedoch ausgeführt.

Außerdem werden nach der Ausführung des Befehls remove vom Member zugeordnete Portwerte zur Wiederverwendung freigegeben.

Wenn das ganze Benutzerverzeichnis wlp/usr auf dem Member-Host gelöscht wurde, müssen Sie möglicherweise einen Client wie beispielsweise JConsole verwenden, um Referenzen zum Member-Server aus dem Verbund zu löschen.

Vorgehensweise

  1. Stoppen Sie den Member-Server oder entfernen Sie die Elemente aus der Konfiguration des Member-Servers, die sich auf den Verbund beziehen.
    Zum Stoppen des Member-Servers führen Sie in einer Befehlszeile den Serverbefehl stop aus:
    wlp/bin/server stop Member-Server-Name
    Wenn der Member-Server weiterhin ausgeführt werden soll, entfernen Sie alle folgenden Elemente aus der Datei server.xml des Member-Servers:
    <featureManager>
       <feature>collectiveController-1.0</feature>
       <feature>collectiveMember-1.0</feature>
    </featureManager>
    <collectiveMember ... />
    <hostAuthInfo ... />
  2. Verwenden Sie eine Befehlszeile, um einen Member-Server zu entfernen.
    1. Führen Sie den Verbundbefehl remove in einer Befehlszeile aus.
      wlp/bin/collective remove Name_des_Member-Servers --host=Verbund-Controller-Host --port=HTTPS-Port_des_Verbundcontrollers --user=Administrator-ID_des_Verbundcontrollers --password=Administratorkennwort_des_Verbundcontrollers

      [18.0.0.1 und höher]Wenn Sie die Anzahl der erforderlichen Optionen verringern möchten, verwenden Sie die Option --controller anstelle der Optionen --user, --password, --host und --port:

      wlp/bin/collective remove Name_des_Member-Servers --controller=Administrator-ID_des_Verbundcontrollers:Administratorkennwort_des_Verbundcontrollers@Host_des_Verbundcontrollers:HTTPS-Port_des_Verbundcontrollers

      Wenn Sie beispielsweise bei einem Verbundcontroller auf dem Host machineA mit dem Port 1090 und der Administrator-ID Admin1 für den Verbundcontroller und dem zugehörigen Kennwort Admin1pwd sowie dem Member-Server member1 einen Member-Server entfernen möchten, führen Sie den folgenden Befehl aus:

      wlp/bin/collective remove member1 --host=machineA --port=1090 --user=Admin1 --password=Admin1pwd

      [18.0.0.1 und höher]Wenn Sie die Anzahl der erforderlichen Optionen verringern möchten, verwenden Sie die Option --controller anstelle der Optionen --user, --password, --host und --port:

      wlp/bin/collective remove Member1 --controller=Admin1:Kennwort_Admin1@MaschineA:1090

      In diesem Beispiel sind die erforderlichen Einstellungen für den Befehl remove enthalten:

      --host=Host_des_Verbundcontrollers
      Die Einstellung host gibt den Namen des Hosts an, auf dem sich der Verbundcontroller befindet. Über die Variable defaultHostName in der Datei server.xml des Verbundcontrollers wird der Hostname festgelegt.
      --port=HTTPS-Port_des_Verbundcontrollers
      Die Einstellung für port gibt die HTTPS-Portnummer des Zielverbundcontrollers an. Über die Variable httpsPort in der Datei server.xml des Verbundcontrollers wird die Portnummer festgelegt.
      --user=Administrator-ID_für_Verbundcontroller
      Die Einstellung für user gibt einen Benutzer mit Verwaltungsaufgaben des Zielverbundcontrollers an. Über die Variable userName in der Datei server.xml des Verbundcontrollers wird ein Benutzername festgelegt.
      --password=Administratorkennwort_für_Verbundcontroller
      Die Einstellung für password gibt das Kennwort des Benutzers mit Verwaltungsaufgaben für den Zielverbundcontroller an. Über die Variable userPassword in der Datei server.xml des Verbundcontrollers wird ein Benutzerkennwort festgelegt. Wenn kein Kennwort definiert wird, werden Sie aufgefordert, das Kennwort für den Benutzer mit Verwaltungsaufgaben, der über die Einstellung --user definiert ist, anzugeben.
    2. Wenn Sie aufgefordert werden, eine Zertifizierungskette zu akzeptieren, geben Sie y ein.

      Der Befehl remove löscht das Verzeichnis wlp/usr/servers/member1/resources/collective. Das Produkt gibt Nachrichten ähnlich den folgenden aus:

      Die Registrierung des Servers member1 wurd erfolgreich aufgehoben.
      
      Es wird versucht, Ressourcen für den Verbund aus dem Server zu entfernen...
      Die Ressourcen für die Verbundzugehörigkeit wurden erfolgreich entfernt.
      
      Aktualisieren Sie die Datei server.xml und entfernen Sie die folgenden Elemente:
      
          <featureManager>
              <feature>collectiveController-1.0</feature>
              <feature>collectiveMember-1.0</feature>
          </featureManager>
          <collectiveMember ... />
          <hostAuthInfo ... />
    3. Wenn Sie den Server beibehalten möchten, befolgen Sie alle in den Nachrichten genannten Anweisungen. Entfernen Sie beispielsweise die in den Nachrichten genannten Elemente aus der Datei server.xml des entfernten Member-Servers.

      Wenn Sie den Server nicht mehr benötigen, löschen Sie das Serververzeichnis. Löschen Sie beispielsweise das Verzeichnis wlp/usr/servers/member1.

  3. Wenn vor der Ausführung des Befehls remove das ganze Benutzerverzeichnis wlp/usr auf dem Member-Host gelöscht wurde, löschen Sie alle Referenzen zum fernen Member-Server aus dem Verbund, indem Sie die Operation delete auf einem Client wie beispielsweise JConsole verwenden.
    1. Verbinden Sie JConsole mit dem Verbundcontrollerprozess.
      1. Stellen Sie sicher, dass der Verbundcontroller aktiv ist.
        wlp/bin/server status Name_des_Verbundcontrollers
      2. Starten Sie JConsole, wenn sie noch nicht aktiv ist. Führen Sie unter Windows die Datei Java-Installation\bin\jconsole.exe aus.
      3. Wählen Sie den Prozess für den Verbundcontroller aus.

      Wenn Sie den REST-Connector mit JConsole verwenden möchten, um über eine zugrunde liegende HTTPS-Verbindung fern auf MBeans zugreifen zu können, lesen Sie die Informationen unter Creating remote JMX connections in Liberty.

    2. Führen Sie die CollectiveRepository-Operation getDescendantData in JConsole aus, um die Ausgabe anschließend auf Referenzen zum fernen Member-Server zu überprüfen.
      1. Wählen Sie auf der JConsole-Registerkarte MBeans die CollectiveRepository-Operation getDescendantData aus und geben Sie den Namen des Knotens an, auf dem sich der Verbund befindet. Der Knotennamen hat das Format /sys.was.collectives/local/hosts/Hostname. Beispiel: /sys.was.collectives/local/hosts/machineA.
      2. Suchen Sie in der Liste der Daten nach Referenzen für den fernen Member-Server. Wenn der Name des fernen Member-Servers nicht in der Liste von Daten enthalten ist, ist der Server kein Verbundmember mehr. Das Member wurde erfolgreich aus dem Verbund entfernt.

        Wenn in den Daten jedoch Referenzen zum Member vorhanden sind, fahren Sie mit dem nächsten Schritt fort. Sie müssen die Operation delete ausführen, um das Member zu entfernen.

    3. Führen Sie die CollectiveRepository-Operation delete in JConsole aus, um die verbleibenden Referenzen zum fernen Member-Server aus dem Verbund zu entfernen.
      1. Wählen Sie auf der JConsole-Registerkarte MBeans die CollectiveRepository-Operation delete aus.
      2. Geben Sie für nodeName den vollständig qualifizierten Knotennamen des Member-Servers an, den Sie löschen möchten. Die Operation löscht den Member-Server-Knoten und alle Knoten darunter.

        Der Knotenname in einem lokalen Prozess, in dem sich der Verbundcontroller auf dem Host machineA befindet und der Memberpfad C:\wlp\usr\servers\member1 auf einem Windows-Computer ist, sieht beispielsweise wie folgt aus:

        /sys.was.collectives/local/hosts/machineA/userdirs/C%3A%2Fwlp%2Fusr/servers/member1
      3. Klicken Sie auf Delete.
    4. Wiederholen Sie Schritt 2b, um sicherzustellen, dass der Server kein Verbundmember mehr ist. Führen Sie die CollectiveRepository-Operation getDescendantData in JConsole aus, um die Ausgabe anschließend auf Referenzen zum fernen Member-Server zu überprüfen.

Symbol das den Typ des Artikels anzeigt. Taskartikel

Dateiname: tagt_wlp_remove_member.html