Ir al contenido principal

OpenSolaris, Clúster de Glassfish y Sun Java Web Server Loadbalancer

Pues estuve necesitando un clúster de Glassfish V2U2 para lo cual encontré rápidamente mucha información en Internet, el que más me gustó fue un blog de Ryan Wilson, pero también necesitaba poner el balanceador de cargas (loadbalancer) asi que para eso utilicé la documentación de Glassfish. Aquí el resúmen:

  • Instalar OpenSolaris 200805 y despues realizar lo que les sugieren en los Release Notes, en donde te dicen que actualices su herramienta para instalar paquetes.
  • NOTA: Antes de hacer esto, asegurarse de tener todas las máquinas que van a participar dentro del cluster mapeadas con un DNS, de no ser esto posible sus archivos de hosts deben de tener la información suya y de cada una de las máquinas que van a participar. (Gracias a equipo Telcel)
  • Despues de esto seguir las instrucciones de Ryan. Con esto vas a tener el cluster de glassfish funcionando. Solo que en la configuración del segundo servidor puedes hacer lo siguiente para evitar los pasos 4 al 6 (lo siguiente todo en una sola linea)
  • ant -f setup-cluster.xml create-node-agent -Ddas.host=hostname -Dnodeagent.name=g2-a1
  • Sigues con los pasos 7 en adelante.
  • Luego para el balanceo de cargas necesitas bajar el Sun Java Web Server 7 siguiendo las instrucciones de Sriram Natarajan. Con esto ya tienes instalado el Web Server ahora hay que configurarlo para que balancee las cargas.
  • Del tutorial de Glassfish seguimos las instrucciones de Installing and Configuring Glassfish and the Web Server pero desde donde dice bajar y extraer el aslib, solo que busquen la ultima version que no es la que viene ahi. Y no usen el lbplugin.sh, porque como ahi lo especifica es para la version 6 del webserver. Seguimos las instrucciones que vienen despues de esa desde crear las carpetas. Y en el paso 9 (en la modificación del magnus.conf) el bloque de texto que hay que pegar, las lineas Init fn="load modules"... y funcs="init-passthrough..." son una sola linea. En el paso 10 no busques nametrans sino NameTrans (en caso que estes usando vi). Luego nos seguimos a Configuring de Loadbalancer Plugin. En ese hay que cambiar instance-one-host:instance-one-port por la ip o el hostname del servidor uno y el puerto en el que esta escuchando, en mi configuración por defecto era el 38080 (revisa cual es el tuyo), también hay que cambiar el dos. En el script para levantar el webserver (startserve) que se encuentra /https-/bin en la parte de LD_SHARED_LIB(el segundo) al final hay que agregarle el directorio lbplugin del application server para que no tenga problemas para levantarlo, das de baja el webserver y lo vuelves a levantar para que tome los cambios.
  • Seguimos con Deploying and Running the clusterjsp Sample Application para probar que el cluster esta funcionando como debe.
  • Listo!

Comentarios

ivsli dijo…
Hola David!! Te acuerdas de nosotros, en agosto tomamos el curso de cluster contigo, somos de Telcel.
Tenemos una duda en cuenta a la configuracion de un HADB. No se si se tenga que tener alguna configuracion especial para que se almacenen las sesiones en el HADB.
Ayer realizamos unas pruebas y no lo hizo, por eso de la pregunta
ivsli dijo…
Hola!! Nos puedes proporcionar tu correo, es para explicarte mas a detalle la duda que tenemos.
Gracias.
David Mendoza dijo…
Hola, ¿cómo están? Pues miren, a mi me suena a que tienen problemas con los hosts de los equipos, revisen que cada uno de los equipos tenga el nombre de cada uno de los otros.

Entradas más populares de este blog

Reporte Excel con JasperReports

Pues no funcionó el reporte con Jasper, pude hacer que evitara paginar con estas opciones ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); JRXlsExporter exporterXLS = new JRXlsExporter(); exporterXLS.setParameter(JRXlsExporterParameter.JASPER_PRINT, jasperPrint); // exporterXLS.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE); exporterXLS.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE); exporterXLS.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE); exporterXLS.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS, Boolean.TRUE); exporterXLS.setParameter(JRXlsExporterParameter.IS_COLLAPSE_ROW_SPAN, Boolean.TRUE); exporterXLS.setParameter(JRXlsExporterParameter.IGNORE_PAGE_MARGINS, Boolean.TRUE); exporterXLS.s...

JQuery Image Upload en Spring MVC

Utilizar el jQuery File Upload de blueimp  en Grails es una delicia. Pero necesito hacer una aplicación grande y no sé lo suficiente como para mantenerla óptima dentro de Grails, así que decidí portarla a Spring MVC, pero no encontré una implementación de esta herramienta en Java que hiciera lo que hace el plugin, que simplemente implementa lo que la herramienta ya hace en otras plataformas. Así que me puse a implementarla y ya quedó. La pueden encontrar en github ... Sólo necesitan clonarla, y ejecutarla con maven: mvn tomcat7:run