Puede utilizar el programa de utilidad xscmd para completar las tareas de administrador, por ejemplo ver los servicios y sus clasificaciones que están siendo utilizados por cada contenedor y actualizar el entorno de ejecución para utilizar las nuevas versiones de los paquetes.
Los administradores son responsables de copiar, instalar e iniciar manualmente paquetes en la infraestructura OSGi. eXtreme Scale incluye un ServiceTrackerCustomizer OSGi para realizar un seguimiento de los servicios que se han identificado como plug-ins de eXtreme Scale en el archivo XML de descriptor de ObjectGrid. Utilice el programa de utilidad xscmd para validar qué versión del plug-in se utiliza, qué versiones están disponibles para utilizarse y para realizar actualizaciones de paquete.
eXtreme Scale utiliza el número de clasificación de servicio para identificar la versión de cada servicio. Cuando se cargan dos o más servicios con la misma referencia, eXtreme Scale utiliza automáticamente el servicio con la clasificación más alta.
Dado que eXtreme Scale elige automáticamente la referencia de servicio con la clasificación más alta, es posible que la cuadrícula de datos empiece con varias clasificaciones de un servicio de plug-in.
Si el mandato detecta una discrepancia de clasificaciones o si no puede encontrar un servicio, se establece un nivel de error distinto de cero. Si el mandato se ha completado satisfactoriamente, el nivel de error se establece en 0.
El siguiente ejemplo muestra la salida del mandato osgiCurrent cuando dos plug-ins se instalan en la misma cuadrícula en cuatro servidores. El plug-in loaderPlugin utiliza la clasificación 1 y txCallbackPlugin utiliza la clasificación 2.
OSGi Service Name Current Ranking ObjectGrid Name MapSet Name Server Name
----------------- --------------- --------------- ----------- -----------
loaderPlugin 1 MyGrid MapSetA server1
loaderPlugin 1 MyGrid MapSetA server2
loaderPlugin 1 MyGrid MapSetA server3
loaderPlugin 1 MyGrid MapSetA server4
txCallbackPlugin 2 MyGrid MapSetA server1
txCallbackPlugin 2 MyGrid MapSetA server2
txCallbackPlugin 2 MyGrid MapSetA server3
txCallbackPlugin 2 MyGrid MapSetA server4
OSGi Service Name Current Ranking ObjectGrid Name MapSet Name Server Name
----------------- --------------- --------------- ----------- -----------
loaderPlugin 1 MyGrid MapSetA server1
loaderPlugin 2 MyGrid MapSetA server2
loaderPlugin 1 MyGrid MapSetA server3
loaderPlugin 1 MyGrid MapSetA server4
txCallbackPlugin 2 MyGrid MapSetA server1
txCallbackPlugin 2 MyGrid MapSetA server2
txCallbackPlugin 2 MyGrid MapSetA server3
txCallbackPlugin 2 MyGrid MapSetA server4
Al iniciar paquetes que contienen servicios a los que una configuración ObjectGrid hace referencia, el entorno de ejecución de eXtreme Scale realiza automáticamente un seguimiento del plug-in, pero no lo utiliza inmediatamente. El mandato osgiAll muestra qué plug-ins están disponibles para cada servidor.
Cuando se ejecuta sin parámetros, se muestran todos los servicios para todas las cuadrículas y servidores. Se pueden especificar filtros adicionales, incluido el filtro -serviceName <nombre_servicio>, para limitar la salida a un solo servicio o a un subconjunto de la cuadrícula de datos.
Server: server1
OSGi Service Name Available Rankings
----------------- ------------------
loaderPlugin 1, 2
txCallbackPlugin 1
Server: server2
OSGi Service Name Available Rankings
----------------- ------------------
loaderPlugin 1, 2
txCallbackPlugin 1
Summary - All servers have the same service rankings.
Server: server1
OSGi Service Name Available Rankings
----------------- ------------------
loaderPlugin 2
txCallbackPlugin 1
Server: server2
OSGi Service Name Available Rankings
----------------- ------------------
loaderPlugin 1, 2
txCallbackPlugin 1
Summary - The following servers are missing service rankings:
Server OSGi Service Name Missing Rankings
------ ----------------- ----------------
server1 loaderPlugin 1
Server: server2
OSGi Service Name Available Rankings
----------------- ------------------
invalidPlugin No service found
Server: server1
OSGi Service Name Available Rankings
----------------- ------------------
invalidPlugin No service found
Summary - All servers have the same service rankings.
El mandato osgiCheck acepta uno o más conjuntos de clasificaciones de servicio en el formato: -serviceRankings <nombre de servicio>;<clasificación>[,<nombreServicio>;<clasificación>]
Cuando las clasificaciones están todas disponibles, el método vuelve con un nivel de error de 0. Si una o más clasificaciones no están disponibles, se establece un nivel de error de no cero. Se visualiza una tabla con todos los servidores que no incluyen las clasificaciones de servicio especificadas. Se pueden utilizar filtros adicionales para limitar la comprobación de servicio a un subconjunto de los servidores disponibles en el dominio de eXtreme Scale.
Server OSGi Service Unavailable Rankings
------ ------------ --------------------
server1 loaderPlugin 3
server2 loaderPlugin 3
El mandato acepta uno o más conjuntos de clasificaciones de servicio con el formato: -serviceRankings <nombre de servicio>;<clasificación>[,<nombreServicio>;<clasificación>] -g <nombre de cuadrícula> -ms <nombre de conjunto de correlaciones>
El proceso de actualización es idempotent, de modo que si un cliente no puede completar ninguna tarea, la operación se retrotrae. Si un cliente no puede realizar la retrotracción o se interrumpe durante el proceso de actualización, se puede emitir el mismo mandato de nuevo y continúa en el paso adecuado.
Si el cliente no puede continuar y el proceso se reinicia desde otro cliente, utilice la opción -force para permitir que el cliente realice la actualización. El mandato osgiUpdate impide que varios clientes actualicen el mismo conjunto de correlaciones simultáneamente. Para obtener más detalles sobre el mandato osgiUpdate, consulte Actualización de servicios OSGi para plug-ins de eXtreme Scale con xscmd.