Eliminación de miembros de un colectivo de Liberty

Puede utilizar el mandato remove del programa de utilidad de colectivo para eliminar un servidor miembro de un colectivo. El mandato remove desregistra el servidor miembro del colectivo y elimina los archivos de miembro que pertenecen al colectivo. El mandato remove no suprime el servidor miembro ni cambia el archivo server.xml del miembro.

Acerca de esta tarea

Los administradores de un colectivo pueden añadir un servidor al colectivo utilizando el mandato join y, cuando el servidor miembro ya no sea necesario, eliminarlo del colectivo utilizando el mandato remove.

El mandato remove puede eliminar un servidor miembro que no existe. Por ejemplo, el mandato puede eliminar información sobre el miembro del controlador de colectivo en las situaciones siguientes:

  • Si el miembro se suprime de forma accidental o intencionada
  • Si el despliegue falla y el miembro se crea parcialmente o la configuración del miembro contiene errores, pero el mandato join se ha completado

Además, después de que se ejecute el mandato remove, los valores de puerto asignados por el miembro se liberan para su reutilización.

Si la totalidad del directorio de usuario wlp/usr del host miembro se ha suprimido, puede que tenga que utilizar un cliente como JConsole para suprimir las referencias al servidor miembro del colectivo.

Procedimiento

  1. Detenga el servidor miembro o elimine elementos relacionados con el colectivo de la configuración del servidor miembro.
    Para detener el servidor miembro, ejecute el mandato stop del servidor en una línea de mandatos:
    wlp/bin/server stop memberServerName
    Si desea mantener el servidor miembro en ejecución, elimine cualquiera de los siguientes elementos del archivo server.xml del servidor miembro:
    <featureManager>
       <feature>collectiveController-1.0</feature>
       <feature>collectiveMember-1.0</feature>
    </featureManager>
    <collectiveMember ... />
    <hostAuthInfo ... />
  2. Utilice una línea de mandatos para eliminar un servidor miembro.
    1. Ejecute el mandato remove de colectivo en una línea de mandatos.
      wlp/bin/collective remove nombreServidorMiembro --host=hostControladorColectivo
      --port=puertoHTTPSControladorColectivo --user=IDUsuarioControladorColectivo
      --password=contraseñaUsuarioAdminControladorColectivo

      [18.0.0.1 and later]Para reducir el número de opciones necesarias, utilice la opción --controller en lugar de --user, --password, --host y --port:

      wlp/bin/collective remove nombreServidorMiembro --controller=IdUsuarioAdminControladorColectivo:contraseñaUsuarioAdminControladorColectivo@hostControladorColectivo:puertoHTTPSControladorColectivo

      Por ejemplo, para un controlador de colectivo en el host machineA que utiliza el puerto 1090 y que tiene un usuario administrativo de controlador de colectivo Admin1 con la contraseña Admin1pwd y el servidor miembro member1, ejecute el mandato siguiente para eliminar el servidor miembro:

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

      [18.0.0.1 and later]Para reducir el número de opciones necesarias, utilice la opción --controller en lugar de --user, --password, --host y --port:

      wlp/bin/collective remove member1 --controller=Admin1:Admin1pwd@machineA:1090

      Este ejemplo incluye los valores necesarios para el mandato remove:

      --host=hostControladorColectivo
      El valor host especifica el nombre del host en el que reside el servidor del controlador de colectivo. La variable defaultHostName del archivo server.xml del servidor de controlador de colectivo establece el nombre de host.
      --port=puertoHTTPSControladorColectivo
      El valor port especifica el número de puerto HTTPS del controlador de colectivo de destino. La variable httpsPort del archivo server.xml del servidor de controlador de colectivo establece el número de puerto.
      --user=IDUsuarioAdminControladorColectivo
      El valor user especifica un usuario administrativo del controlador de colectivo de destino. Una variable userName del archivo server.xml del servidor de controlador de colectivo establece un nombre de usuario.
      --password=contraseñaUsuarioAdminControladorColectivo
      El valor password especifica la contraseña del usuario administrativo del controlador de colectivo de destino. Una variable userPassword del archivo server.xml del servidor de controlador de colectivo establece una contraseña de usuario. Si no se define ninguna contraseña, se le solicitará la contraseña del usuario administrativo especificado por el valor --user.
    2. Si se le solicita que acepte una cadena de certificados, especifique y (sí).

      El mandato remove suprime el directorio wlp/usr/servers/member1/resources/collective. El producto genera mensajes parecidos a los siguientes:

      Servidor miembro1 desregistrado satisfactoriamente.
      
      Intentando eliminar recursos para el colectivo del servidor...
      Los recursos de pertenencia al colectivo se han eliminado satisfactoriamente.
      
      Actualice el archivo server.xml y elimine cualquiera de los elementos siguientes:
      
          <featureManager>
              <feature>collectiveController-1.0</feature>
              <feature>collectiveMember-1.0</feature>
          </featureManager>
          <collectiveMember ... />
          <hostAuthInfo ... />
    3. Si desea conservar el servidor, siga todas las instrucciones de los mensajes. Por ejemplo, elimine los elementos listados en los mensajes del archivo server.xml del servidor miembro eliminado.

      Si ya no necesita el servidor, suprima el directorio del servidor. Por ejemplo, suprima wlp/usr/servers/member1.

  3. Si la totalidad del directorio de usuario wlp/usr se ha suprimido en el host del miembro antes de ejecutar el mandato remove, suprima cualquier referencia al servidor miembro eliminado del colectivo utilizando la operación delete en un cliente como, por ejemplo, JConsole.
    1. Conecte JConsole al proceso de controlador de colectivo.
      1. Asegúrese de que el controlador de colectivo está en ejecución.
        wlp/bin/server status nombre_controlador_colectivo
      2. Inicie JConsole si no está en ejecución. En Windows, ejecute instalación_Java\bin\jconsole.exe.
      3. Seleccione el procese del controlador de colectivo.

      Para utilizar el conector REST con JConsole para acceder a MBeans de forma remota a través de una conexión HTTPS subyacente, consulte la sección Creación de conexiones JMX remotas en Liberty.

    2. Ejecute la operación getDescendantData de CollectiveRepository en JConsole para comprobar las referencias al servidor miembro eliminado.
      1. En la pestaña de JConsole MBeans, seleccione la operación getDescendantData de CollectiveRepository y especifique el nombre del nodo en el que reside el colectivo. El nombre de nodo es parecido a /sys.was.collectives/local/hosts/nombre_host; por ejemplo, /sys.was.collectives/local/hosts/machineA.
      2. Busque las referencias al servidor miembro eliminado en la lista de datos. Si el nombre del servidor miembro eliminado no está en la lista de datos, significa que el servidor ya no es miembro del colectivo. El miembro se ha eliminado satisfactoriamente del colectivo.

        Sin embargo, si existen referencias al miembro en los datos, continúe en el paso siguiente. Debe ejecutar la operación delete para eliminar el miembro.

    3. Ejecute la operación delete de CollectiveRepository en JConsole para suprimir el resto de referencias al servidor miembro eliminado del colectivo.
      1. En la pestaña de JConsole MBeans, seleccione la operación delete de CollectiveRepository.
      2. Para nodeName, especifique el nombre de nodo completo del servidor miembro que desea suprimir. La operación suprime el nodo del servidor miembro y todos los nodos bajo el mismo.

        El nombre de nodo en un proceso local donde el controlador de colectivo se encuentra en el host machineA y la vía de acceso del miembro es C:\wlp\usr\servers\member1 en un sistema Windows es parecido:

        /sys.was.collectives/local/hosts/machineA/userdirs/C%3A%2Fwlp%2Fusr/servers/member1
      3. Pulse Suprimir.
    4. Para confirmar que el servidor ya no es un miembro del colectivo, repita el paso 2b. Ejecute la operación getDescendantData de CollectiveRepository en JConsole y compruebe las referencias al servidor miembro eliminado.

Icono que indica el tipo de tema Tema de tarea

Nombre de archivo: tagt_wlp_remove_member.html