Migración de O3 5.x.x a 6.x.x

Como migrar de una versión 5.x.x a 6.x.x

Por el momento no hay un wizard de migración entre este tipo de versiones, por lo cual el procedimiento es manual.

Procedimiento de migración

  1. Bajar los servicios.
    1. Respaldar bases de datos (solo sí la configuración de o3 y eportal se encuentra en base de datos).
  2. Renombrar la carpeta IdeaSoft/O3 a IdeaSoft/O3v5.x.x
  3. Copiar de la instalación vieja el directorio <o3>/jboss/server/default/ideasoft-o3/server en la raíz de la instalación nueva.

Si se tiene en base de datos la información del admserver y los usuarios

  1. HowTo Configurar JBoss 7 con Diferentes Bases de Datos 
  2. Definir usuario internal (usr: internal / pass: internal) en el admserver. El nuevo usuario deberá estar asociado al rol System y tener definido cómo atributo runAsEnabled de tipo Boolean.

Si se tiene los usuarios en base de datos externa pero los datos del admserver en archivo

  1. Copiar de la instalación vieja el archivo <o3>/jboss/server/default/ideasoft-o3/O3Server.cfg en la raíz de la nueva instalación.
  2. HowTo Configurar JBoss 7 con Diferentes Bases de Datos
  3. Definir usuario internal (usr: internal / pass: internal) en el admserver. El nuevo usuario deberá estar asociado al rol System y tener definido cómo atributo runAsEnabled de tipo Boolean.

 

Si se tiene los usuarios en base de datos hypersonic pero los datos del admserver en archivo

 

  1. Copiar de la instalación vieja el archivo <o3>/jboss/server/default/ideasoft-o3/O3Server.cfg en la raíz de la nueva instalación.
  2. Los usuarios/roles y permisos de O3 deberán ser redfinidos en la nueva instalación 


Si no se tiene usuarios en base de datos y datos del admserver en archivo (version 4.x de O3 o anteriores)

  1. Realizar exportación desde admserver de o3v5 y la importación en el admserver de o3v6.
    (Requiere seguir la siguiente secuencia: Levantar jboss v5 -> exportar en admserver v5 -> bajar v5 -> Levantar jboss v6 -> importar en admserver v6 -> bajar jboss v6.)

Los usuarios no serán exportados y deberán ser creados manualmente.

Solo en caso de tener escritorios, se debe editar cada uno de los archivos .desk que se encuentran en <o3>/server/istore/jdesktop/desktops/ y modificar el puerto 1099 por 4447.

<initParam>otp://localhost:4447/...</initParam>

Si se usa eportal

  1. Renombrar (puede no existir) <o3>/liferay/data/document_library como #document_library y copiar de la instalación vieja la carpeta <o3>/jboss/server/default/data/liferay/document_library
  2. Renombrar <o3>/liferay/data/jackrabbit como #jackrabbit y copiar de la instalación vieja la carpeta <o3>/jboss/server/default/data/liferay/jackrabbit
  3. Renombrar <o3>/liferay/data/lucene como #lucene y copiar de la instalación vieja la carpeta <o3>/jboss/server/default/data/liferay/lucene

Si además se usa eportal con hypersonic

  1. Renombrar el archivo <o3>/liferay/data/hsql/lportal.script como #lportal.script
  2. Copiar de la instalación vieja el archivo <o3>/jboss/server/default/data/hypersonic/lportal.script en <o3>/liferay/data/hsql
  3. En la nueva instalación versión 6, editar el archivo <o3>/liferay/tomcat/webapps/eportal/WEB-INF/classes/portal-ext.properties
    1. Cambiar el valor (6) de la property: permissions.user.check.algorithm por 2 (permissions.user.check.algorithm=2).
    2. Descomentar la property: #image.hook.impl=com.liferay.portal.image.DatabaseHook quitando el numeral (image.hook.impl=com.liferay.portal.image.DatabaseHook).

Si se usa eportal con base de datos 

  1. Copiar de la instalación vieja los datos de conexión definidos en el archivo <o3>/jboss/server/default/deploy/liferay-xxxxxx-ds.xml (siendo xxxx la base de datos).
  2. En la nueva instalación versión 6, editar el archivo <o3>/liferay/tomcat/webapps/eportal/WEB-INF/classes/portal-ext.properties
    1. Cambiar el valor (6) de la property: permissions.user.check.algorithm por 2 (permissions.user.check.algorithm=2).
    2. Descomentar la property: #image.hook.impl=com.liferay.portal.image.DatabaseHook quitando el numeral (image.hook.impl=com.liferay.portal.image.DatabaseHook).
  3. HowTo Configurar Liferay con Diferentes Bases de Datos

Otras consideraciones

Las siguientes consideraciones podrán aplicarse o no dependiendo de cada instalación.

Si se usa portal

  1. Verificar que se este usando el tema adecuado, si no copiarlo de la instalación vieja en <o3>/jboss/server/default/deploy/gserver/0o3.ear/o3portal.war/themes/mi_tema en <o3>/jboss/standalone/deployments/o3-server.ear/o3web.war/themes

Si se usa Sistema de Información Geográfico (SIG- Geoserver)

  1. Copiar de la instalación vieja la carpeta <o3>/jboss/server/default/deploy/gserver/geoserver.war en <o3>/liferay/tomcat/webapps y renombrar la carpeta cómo geoserver (<o3>/liferay/tomcat/webapps/geoserver).
  2. Así mismo copiar los archivos *Mapping.xml y *.plugins, asociados.

Nombre de la máquina para accesos WEB

  1. Revisar el archivo de la instalación anterior
    /jboss/server/default/deploy/gserver/0o3.ear/o3portal.war/WEB-INF/webapp.properties
  2. En particular verificar el valor de la property
    gclient.server.host
  3. Si tuviera un valor diferente a localhost, dicho valor deberá ser asignado también en la nueva instalación (<o3>/jboss/standalone/deployments/o3-server.ear/o3web.war/WEB-INF/webapp.properties)

Uso de LDAP

O3 puede ser integrado con un servidor LDAP donde almacenar la configuración de usuarios y roles.

Si la versión anterior hubiera sido personalizada para conectarse con un servidor de estas características se deben ejecutar los siguientes pasos:

  1. Copiar archivo de properties correspondiente a la configuración de ldap desde la carpeta <o3>\jboss\server\default\ideasoft-o3\config\rbac de la instalación anterior a la nueva instalación (<o3>\config\rbac).
  2. Crear en la nueva instalación el archivo <o3>\O3Server_custom.properties y configurarlo según se indica en la guía de configuración de LDAP (HowTo Seguridad de O3 en LDAP y Active Directory). Se puede considerar la configuración definida en la versión actual (<o3>\jboss\server\default\ideasoft-o3\GServer.properties).

Uso de puertos personalizados en JBoss

  1. Revisar en la instalación anterior si hay cambio de puertos.
    Para ello se debe verificar el archivo /jboss/server/default/conf/jboss-service.xml
  2. Si dijera otro valor diferente a ports-default significa que los puertos han sido modificados.
    Si existe el archivo custom.properties verificar que las rutas sean correctas y estén definidos los puertos correctamente en ese archivo
    verificar que las urls sean las correctas en  el archivo o3server.properties y coincidan con los puertos de comunicaciones previamente implementadas en las lineas:

    http.host=localhost
    http.port=8080

     

    rest.host=${http.host}
    rest.port=${http.port}
    rest.user=internal
    rest.pass=internal

     

    liferay.port=8380


    eportal.url = http://{localhost.name}:${liferay.port}/eportal

    <mbean code="org.jboss.services.binding.ServiceBindingManager" name="jboss.system:service=ServiceBindingManager"> <attribute name="ServerName">ports-default</attribute> <attribute name="StoreURL">${jboss.server.home.url}/port-bindings.xml</attribute> <attribute name="StoreFactoryClassName">org.jboss.services.binding.XMLServicesStoreFactory</attribute> </mbean> 
  3. Luego verificar la correcta relación de los puertos de comunicaciones en los archivos properties que se detallan en esta sección del wiki.

    HowTo Cambiar puertos del Servidor O3 (JBoss y Liferay)
    https://www.ideasoft.biz/wiki/x/vxfXAw

     

  4. En tal caso deberá replicarse el cambio en la nueva versión:

     

    HowTo Cambiar puertos del Servidor O3 (JBoss y Liferay)

    Para el caso de liferay, debemos editar el archivo <o3>/liferay/tomcat/conf/server.xml y modificar los valores para los puertos 8305, 8380, 8309.

     

  5. Revisar si se cambió el puerto del tomcat en la instalación vieja.
    Revisar el archivo jboss/server/default/deploy/jbossweb-tomcat55.sar/server.xml
    Buscar el código

    <Connector port="8080" address="${jboss.bind.address}"> 

    El puerto por defecto es el 8080. Si hubiera otro definido se debe modificar también en la nueva instalación.
    En la versión 6 editar el archivo <o3>/jboss/standalone/configuration/o3bi.xml y modificar la siguiente línea, cambiando el valor de port por el valor deseado.

     

    <socket-binding-group name="standard-sockets" default-interface="public">
     <socket-binding name="http" port="8080"/>
     ...
    </socket-binding-group> 


Uso de Drivers JDBC adicionales

  1. Revisar los drivers de conexión a bases de datos en /classes/jdbc y pasar a la nueva instalación los que sean necesarios.
  2. Para el uso de drivers adicionales en O3 Report, ir a la siguiente documentación

Configuración del Mailer

  1. Revisar configuración del mail en el archivo jboss\server\default\deploy\mail-service.xml y configurar en la nueva instalación de acuerdo al siguiente wiki: HowTo configurar el Servicio de Mail de JBoss

Verificando la nueva instalación

  1. Setear la property sync.data.scheduler.runAtStartup definida en <o3>/O3Server.properties con el valor true.
  2. Iniciar el Servidor de O3 (JBoss)  y Liferay.
  3. Ingresar al O3 Server Administrator y loguarse con el usuario administrador.
  4. Verificar la publicación de cubos.
    Esto implica que están presentes y disponibles, y que los perfiles asociados se leyeron sin problemas.
  5. Verificar que los usuarios, roles, permisos son los correctos.
  6. Abrir el portal y loguearse, cargar cubos, tableros, escritorios, dashboards, etc. según corresponda.
  7. Levantar el browser y cargar algún cubo.
  8. Construir con el builder algún cubo para comprobar que el ambiente de construcción no se alteró
  9. Setear la property sync.data.scheduler.runAtStartup definida en <o3>/O3Server.properties con el valor false.