Sunteți pe pagina 1din 8

COMANDOS UTILES

DAS SECURITY
asadmin --host [host] --port [port] enable-secure-admin

ROLLBACK

asadmin --host [host] --port [port] disable-secure-admin

Instalacion

Descargar instalacin para linux desde http://glassfish.java.net/downloads/3.1.1-


final.html

wget http://download.java.net/glassfish/3.1.1/release/glassfish-3.1.1-
unix.sh

Hacer aplicacion ejecutable

sudo chmod +x glassfish-3.1.1-unix.sh

Instalar glassfish

#-s instala glassfish en Silent Mode (requerido en consola sin entorno


grfico)
sudo ./glassfish-3.1.1-unix.sh -s

Para hacer que se ejecute al inicio, editar el fichero /etc/rc.local

aadir antes de la lnea de exit 0

/<directorio de instalacin del glassfish>/bin/asadmin start-domain


domain1
Introduccin

Para el correcto funcionamiento de las aplicaciones en glassfish 3 es necesario


personalizar los parmetros de los que dispone. stos parmetros vara dependiendo de
las aplicaciones desplegadas, servidor o nmero de usuarios, pero en esta gua
ofreceremos una configuracin estndar para un servidor medio o mquina virtual de 64
bit con al menos 4Gb de RAM.

Parmetros de JVM

-server

Entre otras diferencias con el modo cliente es el nmero de iteraciones antes de


compilar una zona de cdigo, 10000 frente a 1500. Nota: la opcin -client puede ser la
adecuada si lo que necesitas es buen tiempo de arranque o en situaciones en las que
cambian mucho los JSP (cada JSP recompila a una nueva versin de la clase Servlet
generada), pero algunas de las siguientes opciones no funcionarn.

-Dfile.encoding=UTF8

Fuerza el formato de codificacin a UTF-8

-Xmx2000m

tamao mximo del heap, an no tengo claro si incluye o no la zona de PermGen. Regla
de oro: curiosamente la mquina donde se ejecutan JVM JAMS debe utilizar el swap a
disco, la GC sera un desastre si tiene que ir moviendo pginas de un lado a otro. En
caso de consultas grandes a las bases de datos, este valor debera incrementarse, por
ejemplo a 4000m

-Xms2000m

tamao inicial del heap, en todos los sitios se recomienda igualarlo al mximo por rollos
de fragmentacin. Nota: esto no significa que el proceso consuma desde el principio esa
cantidad de memoria fsica.

-Xmn1000m

Este valor controla la cantidad de espacio del almacenamiento dinmico que puede
consumir la generacin joven. Si se ajusta correctamente este parmetro se reduce la
actividad general de recogida de basura y se mejoran la productividad y el tiempo de
respuesta del servidor. Generalmente, el valor por omisin para esta opcin es muy
bajo, lo que da como resultado un nmero elevado de recogidas de basura sin
importancia.
-XX:+UseParallelGC

Este mandato habilita la recogida de basura paralela para la nueva generacin. Si se


emite este mandato en un sistema de varios procesadores, puede reducir la cantidad de
tiempo que la JVM tarda en completar un ciclo de recogida de basura parcial.

-XX:ParallelGCThreads=20

Reduces the number of garbage collection threads. The default would be equal to the
processor count, which would probably be unnecessarily high on a 32 thread capable
system.

-XX:PermSize=512m

La seccin del almacenamiento dinmico reservado para la generacin permanente


contiene todos los datos reflectivos de la JVM. Este tamao debe aumentarse para
optimizar el rendimiento de las aplicaciones que carga y descarga dinmicamente
muchas clases. Si se especifica un valor de 128 megabytes se elimina la actividad
general de aumentar esta parte del almacenamiento dinmico.

-XX:MaxPermSize=512m

Mximo permSize

-XX:+CMSClassUnloadingEnabled

Permite que el recolector de basura tambin funcione en el permgen space si hiciese


falta

-XX:+AggressiveOpts

Habilita aquellas opciones de rendimiento que se prevn como habilitadas por defecto
en siguientes releases del JDK, por ejemplo, es posible que al habilitar esta opcin, ya
se habilite -XX:+CMSClassUnloadingEnabled y/o -XX:+UseParallelGC entre otras en
algunas versiones del JDK.

-XX:+CMSPermGenSweepingEnabled This setting includes the PermGen in a garbage


collection run. By default, the PermGen space is never included in garbage collection
(and thus grows without bounds).

Conexiones a bases de datos

En el pool de conexiones, avanzado, activar la opcin de Connection Validation, algn


Validation Method, por ejemplo table y algn Table name, por ejemplo Variables o
Giconfig.

Esta opcin nos permite verificar si hay conexin a la base de datos y recuperarla si se
ha perdido con anterioridad sin ser necesario que se reinicie todo el servidor de
aplicaciones.
Thread pool

El http-thread-pool (en configurations/server-config/Network config/thread pools/http-


thread-pool) determina cuntas peticiones http se procesarn simultneamente, su
tiempo de respuesta y timeout. Por defecto aparece con unos valores ridculos. Para una
configuracin ms o menos estable modificar los siguientes valores:

Max Queue Size: -1

The maximum number of threads in the queue. A value of 1 indicates that there is no
limit to the queue size.

Max Thread Pool Size 100

The maximum number of threads in the thread pool

Min Thread Pool Size: 10

The minimum number of threads in the thread pool

Idle Thread Timeout 300 Seconds

The maximum amount of time that a thread can remain idle in the pool. After this time
expires, the thread is removed from the pool.

Procesos automticos del servidor

En Domain / Applications Configuration deshabilitar las siguientes opciones

Reload:

Enables dynamic reloading of applications.

Auto Deploy:

Automatically deploys applications in the autodeploy directory.

Cluster

Conceptos Bsicos
Clusters en un servidor de aplicaciones mejorar la escalabilidad y disponibilidad, que son
conceptos relacionados.

Con el fin de proporcionar una alta disponibilidad de servicio, un sistema de software debe
tener las siguientes capacidades:

El sistema debe ser capaz de crear y ejecutar varias instancias del servicio que prestan las
entidades-. En el caso de servidores de aplicaciones, las entidades que prestan el servicio son
Java EE instancias del servidor de aplicaciones configuradas para ejecutarse en un clster, y el
servicio es un despliegue de aplicaciones Java EE.

El sistema debe ser capaz de escalar a grandes despliegues por la adicin de instancias del
servidor de aplicaciones para las agrupaciones con el fin de aceptar crecientes cargas de
servicio.

Si una instancia de servidor de aplicaciones en un clster falla, debe ser capaz de conmutar
por error a otra instancia de servidor para que el servicio no se interrumpa. Aunque el fallo de
una instancia de servidor o mquina fsica significa disminuir la calidad global del servicio, la
interrupcin total del servicio no es aceptable en un entorno de alta disponibilidad.

Si un proceso hace que los cambios en el estado de sesin de un usuario, el estado de sesin
se debe preservar en todo proceso se reinicia. El mecanismo ms simple consiste en mantener
una rplica fiable de estado de sesin de modo que, si un proceso se interrumpe, el estado de
sesin se pueden recuperar cuando el proceso se reinicia. El principio es similar a la utilizada
en sistemas de alta fiabilidad de almacenamiento RAID.

Tomadas en conjunto, estas demandas se traduce necesariamente en un sistema que sacrifica


alta eficiencia para alcanzar una alta disponibilidad.

Con el fin de apoyar los objetivos de escalabilidad y alta disponibilidad, el servidor de


aplicaciones GlassFish ofrece las siguientes entidades del lado del servidor:

Instancia de servidor-A instancia del servidor es el proceso Java EE del servidor (el servidor
de aplicaciones GlassFish) que aloja las aplicaciones Java EE. Segn los requisitos de la
especificacin Java EE, cada instancia de servidor est configurado para los diversos
subsistemas que se espera para ejecutarse.

Nodo1 - Un nodo es una configuracin del software GlassFish que existe en cada mquina
fsica donde se ejecuta una instancia de servidor. El ciclo de vida de una instancia de servidor
es administrado ya sea por el Servidor de administracin de dominio (DAS) se describe ms
adelante en este artculo y / o por los servicios locales de sistemas operativos que son
responsables de iniciar y administrar la instancia. Los nodos son de dos tipos: Secure Shell
(SSH) y config. Un nodo SSH proporciona una administracin centralizada de los casos
utilizando el protocolo SSH. Un nodo de configuracin proporciona slo informacin de
configuracin sin la administracin centralizada.

Cluster - Un cluster es una entidad lgica que determina la configuracin de las instancias
del servidor que conforman el cluster. Por lo general, la configuracin de un clster implica
que todas las instancias del servidor dentro de la agrupacin tienen una configuracin
homognea. Un administrador general considera que el grupo como una entidad nica y utiliza
la Consola de administracin de GlassFish o una interfaz de lnea de comandos (CLI) para
administrar las instancias de servidor del clster.

Nodos, instancias de servidor y clsteres se pueden crear en tiempo de instalacin de


GlassFish, como se describe al final de este artculo. Las agrupaciones e instancias se organizan
en dominios administrativos, que se describen a continuacin, que se caracterizan por el
Servidor de administracin de dominio (DAS).
Arquitectura del DAS

Central de la arquitectura de agrupamiento GlassFish es el concepto de un dominio


administrativo. El dominio administrativo es una representacin de los derechos de acceso de
un administrador o grupo de administradores. La siguiente figura muestra una visin general
de la arquitectura de administracin de dominio, en el contexto de un nico dominio.
Crear un nuevo dominio en Glassfish

La idea es crear un dominio que vamos a utilizar para desarrollo denominado [development],
con la clave de administracin
[development-egrunce].
1. Abrimos una consola de comandos, y vamos al directorio de instalacin del Glassfish y al
subdirectorio bin, en mi caso
[cd /opt/glassfish/bin]
2. Luego, ejecutamos el siguiente comando
[./asadmin create-domain --adminport 4949 --instanceport 9090 development] Donde:
* adminport es el puerto por donde Glassfish escuchara las peticiones de la consola de
administracin
* instanceport es el puerto por donde se atendern las solicitudes de clientes http.
* development es el nombre del dominio que queremos crear.
3. Luego, el comando nos solicita nombre de usuario y password
Please enter de admin user name> development
Please enter de admin password> development-egrunce
Please enter de admin password again> development-egrunce
4. Por ltimo nos solicita el master password del servicio y su confirmacin, podemos cargar
uno o lo dejamos por omisin.
>Please enter the master password [Enter to accept the default]:
> Please enter the master password again [Enter to accept the default]:
5. El resultado en consola queda mas o menos asi
> Using port 4949 for Admin.
>Using port 9090 for HTTP Instance.
>Default port 7676 for JMS is in use. Using 50684
> Default port 3700 for IIOP is in use. Using 50685
> Default port 8181 for HTTP_SSL is in use. Using 50686
> Default port 3820 for IIOP_SSL is in use. Using 50687
> Default port 3920 for IIOP_MUTUALAUTH is in use. Using 50688
> Default port 8686 for JMX_ADMIN is in use. Using 50689
> Domain being created with profile:developer, as specified by variable AS_ADMIN_PROFILE
in configuration file.
>Security Store uses: JKS
>Domain lportal development.

Listo!

S-ar putea să vă placă și