You are on page 1of 5

VARIOS BISERVER EN UNA MISMA MQUINA

Escrito por Csar Bautista Martes, 20 de Diciembre de 2011 10:24

Atendiendo una consultora de Pentaho, el cliente me planteo un escenario muy interesante: instalar ms 0 de un BIServer con sus respectivos Pentaho Administration Console (desde ahora PAC) y sus bases internas excluyentes. A fuerza de ser sincero, dir que jams me haban pedido tal cosa, en teora saba Twittear que se poda hacer aunque no saba exactamente cmo. Despus de investigar un rato encontr el mtodo para hacer tal cosa (ejecutar ms de un Servidor Pentaho en la misma mquina), todo es cuestin de jugar con los puertos en los archivos de configuracin, tanto del BIServer como del PAC y el Hypersonic (sta aplicacin es una base de datos que usa de manera embebida Pentaho y donde almacena informacin cmo usuarios, roles, conexiones JNDI, permisos, etctera). Por default, Pentaho atiende los siguientes puertos: PAC o o o BIServer o o o o Hypersonic o 9001 8080 8443 8009 8005 8099 8022 8043

Empecemos con el administration-console

PASO 1. Abrimos el archivo administration-console/resource/config/console.properties

Buscamos las siguientes lneas: console.start.port.number=8099 console.stop.port.number=8022 console.ssl.port.number=8043

Y las cambiamos por el nuevo puerto que elijamos, por ejemplo: console.start.port.number=9099

console.stop.port.number=9022 console.ssl.port.number=9043

Ahora cambiemos los puertos del BIServer

PASO 2. Abrimos el archivo biserver-ce/tomcat/conf/server.xml

Buscamos las siguientes lneas: <Server port="8005" shutdown="SHUTDOWN"> <Connector URIEncoding="UTF-8" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Connector URIEncoding="UTF-8" port="8009" protocol="AJP/1.3" redirectPort="8443" />

Y se cambian los puertos, por ejemplo: <Server port="9005" shutdown="SHUTDOWN"> <Connector URIEncoding="UTF-8" port="9080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="9443" /> <Connector URIEncoding="UTF-8" port="9009" protocol="AJP/1.3" redirectPort="9443" />

PASO 3. Abrimos el archivo biserver-ce/tomcat/webapps/pentaho/WEB-INF/web.xml

Buscamos las siguientes lneas: <context-param> <param-name>base-url</param-name> <param-value>http://localhost:8080/pentaho/</param-value> </context-param>

Y cambiamos el puerto por el mismo que pusimos como Connecto port en nuestro archivo server.xml del paso anterior (en nuestro caso el puerto es 9080) <context-param>

<param-name>base-url</param-name> <param-value>http://localhost:9080/pentaho/</param-value> </context-param>

Muy bien, ahora solamente falta configurar nuestro Hypersonic, al cual le voy a asignar el puerto 9002, esto se hace con los siguientes pasos: PASO 4. Abrimos el archivo biserver-ce/tomcat/webapps/pentaho/META-INF/context.xml

Buscamos las siguientes lneas: driverClassName="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:hsql://localhost/hibernate" driverClassName="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:hsql://localhost/quartz"

Aadimos despus del localhost un signo de dos puntos : y el puerto elegido (en nuestro caso es el 9002): driverClassName="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:hsql://localhost:9002/hibernate" driverClassName="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:hsql://localhost:9002/quartz"

PASO 5. Abrimos el archivo (con un editor de textos y no con doble clic) biserver-ce/data/start_hypersonic.sh

Buscamos la lnea: "%_PENTAHO_JAVA%" -cp %tempclasspath% org.hsqldb.Server -database.0 hsqldb\sampledata -dbname.0 sampledata -database.1 hsqldb\hibernate -dbname.1 hibernate -database.2 hsqldb\quartz -dbname.2 quartz

Y le agregamos al final la instruccin port 9002 "%_PENTAHO_JAVA%" -cp %tempclasspath% org.hsqldb.Server -database.0 hsqldb\sampledata -dbname.0 sampledata -database.1 hsqldb\hibernate -dbname.1 hibernate -database.2 hsqldb\quartz -dbname.2 quartz -port 9002

PASO 6. Abrimos el archivo (con un editor de textos y no con doble clic) biserver-ce/data/stop_hypersonic.sh

Buscamos la lnea: "%_PENTAHO_JAVA%" -cp %tempclasspath% org.hsqldb.util.ShutdownServer -url "jdbc:hsqldb:hsql://localhost/%1" -user "SA" -password ""

Aadimos despus del localhost un signo de dos puntos : y el puerto elegido (en nuestro caso es el 9002): "%_PENTAHO_JAVA%" -cp %tempclasspath% org.hsqldb.util.ShutdownServer -url "jdbc:hsqldb:hsql://localhost:9002/%1" -user "SA" -password ""

PASO 7. Abrimos el archivo biserver-ce/pentaho-solutions/system/hibernate/hsql.hibernate.cfg.xml

Buscamos la lnea: <property name="connection.url">jdbc:hsqldb:hsql://localhost:9001/hibernate</property>

Le cambiamos el puerto <property name="connection.url">jdbc:hsqldb:hsql://localhost:9002/hibernate</property>

PASO 8. Abrimos el archivo biserver-ce/pentaho-solutions/system/applicationContext-spring-security-hibernate.properties

Buscamos la lnea: jdbc.url=jdbc:hsqldb:hsql://localhost:9001/hibernate

Le cambiamos el puerto: jdbc.url=jdbc:hsqldb:hsql://localhost:9002/hibernate

PASO 9. Abrimos el archivo biserver-ce/pentaho-solutions/system/applicationContext-spring-security-jdbc.xml

Buscamos la lnea: <property value="jdbc:hsqldb:hsql://localhost:9001/hibernate" />

Le cambiamos el puerto <property value="jdbc:hsqldb:hsql://localhost:9002/hibernate" />

PASO 10 Abrimos el archivo biserver-ce/tomcat/webapps/pentaho/WEB-INF/web.xml

Buscamos las siguientes lneas: <context-param> <param-name>hsqldb-databases</param-name> <param-value>sampledata@../../data/hsqldb/sampledata, hibernate@../../data/hsqldb/hibernate, quartz@../../data/hsqldb/quartz</param-value> </context-param>

Y aadimos inmediatamente despus las siguientes lneas: <context-param> <param-name>hsqldb-port</param-name> <param-value>9002</param-value> </context-param>

Listo! Nuestro BIServer, nuestro PAC y el Hypersonic apuntan a puertos diferentes, ahora podemos levantar varios servicios de Pentaho al mismo tiempo en la misma mquina.

Comentarios a: cbautista@bi-ppr.com.mx
ltima actualizacin el Martes, 20 de Diciembre de 2011 10:35

Share

You might also like