jueves, 29 de agosto de 2013

CAMBIAR CONTRASEÑA POR LINEA DE COMANDO




1° Ejecutar el script setDomainEnv.sh

Que se encuentra en  la siguiente ruta cd /Midd12/Inst/user_projects/domains/base_domain/bin

2°Realizar un respaldo del siguiente archivo DefaultAuthenticatorInit.ldift 

Que se encuentra en la siguiente ruta cd /Midd12/Inst/user_projects/domains/base_domain/security
mv   DefaultAuthenticatorInit.ldift   DefaultAuthenticatorInit.ldift_bck

3°Ejecutar la siguiente sentencia en la dirección anterior

java weblogic.security.utils.AdminAccount <NuevoUser> <PasswordNew> .

4°Realizar un respaldo del  directorio data 

Que se encuentra en la ruta  cd /Midd12/Ins/user_projects/domains/base_domain/servers/AdminServer
mv data data_bck

5° Realizar un respaldo del archivo boot.properties

Que se encuentra en la ruta cd /Midd12/Ins/user_projects/domains/base_domain/servers/AdminServer/security
mv boot.properties boot.properties_bck

6.Iniciar weblogic


jueves, 22 de agosto de 2013

Canales de red (Network channels)


Un canal de red es un recurso configurable que define los atributos de una conexión de red con el Servidor WebLogic. Por ejemplo, un canal de red puede definir:
  • El protocolo que soporta la conexión.
  • La dirección de escucha.
  • Los puertos escucha para la comunicación, segura (SSL) y no segura.
  • Propiedades de la conexión, como el valor de tiempo de espera de inicio de sesión y el tamaño máximo de mensaje.
  • Ya sea que la conexión se puede utilizar para comunicarse con otros servidores WebLogic en el dominio, o se utiliza sólo para la comunicación con los clientes.


Los canales de red permiten gestionar la calidad de servicio, cumplir con los requisitos de conexión diferentes, y mejorar la utilización de los sistemas y recursos de red.


Separar los distintos tipos de tráfico de red.
Usted puede configurar si un canal es compatible o no con conexiones salientes. Mediante la asignación de dos canales para una instancia de servidor, una que soporta conexiones de salida y uno que no lo hace, usted puede configurar de forma independiente el tráfico de red para conexiones de cliente y conexiones de servidor y de cliente separado físicamente y el tráfico de red del servidor de escuchar diferentes direcciones o escuchar los puertos.

Estándar Servidor WebLogic Canales

Weblogic Server proporciona canales pre-configurados que usted no tiene que definir explícitamente.



Configuración de Canales de Red.

Configurar un canal para acceder  a la consola de Administración.

Dirigirse a Entorno  > Servidores > AdminServer(Admin) > Protocolos > Canales; seleccione el botón "Nuevo y se proporcionan los siguientes datos:


















Al terminar se mostrara la siguiente configuración:


Para acceder a la consola a través del canal se escribe en el navegador web lo siguiente: http://192.168.72.1:9001/console.




  

Configurar un canal para acceder a un despliegue del Server1

Dirigirse a Servidores-->Server1 -->Protocolos-->Canales seleccionar el botón "Nuevo"


Y se proporcionan los siguientes datos:






Al terminar se mostrara la siguiente configuración:



Para comprobar el canal, basta con  dirigirse a la siguiente ruta en el navegador web( en este ejemplo se accede a un despliegue previamente instalado).





Reglas para la configuración de canales

 Siga estas pautas al configurar un canal.
  • Se puede asignar un canal en particular a una sola instancia de servidor.
  • Puede asignar varios canales a una instancia de servidor.
  • Cada canal asignado a una instancia de servidor particular, debe tener una combinación única de dirección escucha, puerto de escucha, y el protocolo.
  • Si asigna canales no SSL y SSL para la misma instancia de servidor, asegúrese de que no utilizan el mismo número de puerto.


viernes, 16 de agosto de 2013

Herramientas JAVA y JROCKIT


USO DE HERRAMIENTAS JAVA


jconsole: 

  •  jconsole JMX es una herramienta compatible con interfaz gráfica de usuario que se conecta a una JVM en ejecución, que se inicia con el agente de administración.
  • jconsole permite ver el interior de la JVM y la aplicación mientras se está ejecutando.
  • jconsole proporciona visualización en tiempo real del rendimiento de las aplicaciones y muestra su consumo de recursos.

jconsole se puede conectar a una JVM que se ejecuta en las siguientes maneras:

  • Local
- Se conecta a la JVM que se ejecuta en el sistema local utilizando RMI.

  • Remoto
- Se conecta a un agente JMX mediante un conector RMI.

  • Avanzado.
- Se conecta a un agente JMX mediante un conector no RMI (por ejemplo SNMP).

Para utilizar esta herramienta debemos primero setear variables, y aquí presento varias formas de hacerlo:
1.- La primera opción es setear variables de Weblogic con setDomainEnv.sh ejecutandolo asi (esto hacerlo preferentemente con un usuario weblogic):

# . /Middleware/Weblogic10/user_projects/domains/base_domain/bin/setDomainEnv.sh

2.- Otra forma es setear variables java con los siguientes comandos (como root o como weblogic):

# export JAVA_HOME=/home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0 (ruta de tu jdk)
# export PATH=$JAVA_HOME/bin:$PATH

3.- Para iniciar jconsole ejecutamos el siguiente comando:
# jconsole
Nos manda la siguiente ventana donde podemos observar los procesos que se estan ejecutando dentro de una JVM.

4.- Damos clic en un proceso o aplicación que tengamos en ejecución y damos en Connect.


La interfaz de jconsole costa de seis pestañas:
  1. Pestaña Overview: Resumen de la informacion sobre la JVM y los valores monitorizados.
  2. Pestaña Memory: Informacion sobre el uso de la memoria.
  3. Pestaña Threads: Informacion sobre el uso del hilo.
  4. Pestaña Classes: Informacion sobre la carga de clases.
  5. Pestaña MBeans: Informacion sobre MBeans.
  6. Pestaña VM Summary: Informacion sobre la JVM (Java Virtual Machine).

jps

  • Esta herramienta proporciona información sobre el estado de un proceso JVM.
  • En este se enumeran todas las maquinas virtuales que corren en modo de monitoreo en un equipo determinado.
  • Si jps se ejecuta sin especificar un identificador, busca maquinas virtuales instrumentadas en el host local.
  • Si jps se inicia con un identificador de anfitrion, busca la JVM en el host indicado, utilizando el protocolo y puerto especificado.
  • Esta herramienta se puede utilizar para recuperar el vmid (identificador de la maquina virtual) o el lvmid (identificador de la maquina virtual local).
jstat

  • Se trata de una herramienta de Monitoreo de Estadisticas de Java Virtual Machine.
  • Esta herramienta muestra las estadisticas de rendimiento para una JVM HotSpot.
  • Se puede conectar a una JVM local utilizando un lvmid.
  • Tambien se puede conectar a una JVM remota con un vmid.
  • Se puede recuperar el lvmid en un equipo de destino.

Podemos obtener las siguientes estadisticas JVM dinamicamente usando jstat:
  • Estadísticas Compiler.
  • Class loader statistics (estadisticas del cargador de clases)
  • Garbage collection statistics (estadisticas de recoleccion de basura).

Estadísticas de GC (Garbage Collection) incluyen:
  • Capacidad
  • Utilización.

Como podemos utilizar jstat?
Por ejemplo con el siguiente comando:
$ jstat -gc 5179 

 
Esto proporciona estadísticas sobre el comportamiento de la pila (heap) de recolección de basura.

jinfo

jinfo imprime información de la configuración Java para un proceso Java dado. Podemos visualizar todas las propiedades del sistema Java VM y banderas con esta herramienta.

  • Podemos utilizar jinfo para encontrar la siguiente información sobre una maquina virtual corriendo en forma local o remota:
  • Versión de la Maquina Virtual en ejecución.
  • Opciones del compilador que se utilizan actualmente.
  • Classpath que estamos utilizando actualmente.
  • Información de la configuración regional.
  • Opciones de linea de comandos establecidos durante el inicio de la Maquina Virtual.

Para poder utilizar jinfo en la linea de comandos nos vamos a ayudar de una de las herramientas que hemos visto anteriormente, la cual es jps; la usaremos para ver los procesos en ejecución y rescataremos de esta el pid.


 

jmap


Mapa de memoria para Java. Permite imprimir los mapas de memoria de objetos compartidos o detalles de la memoria de la pila de un proceso o archivo central o un servidor de depuración remoto.

Jmap [opcion] pid
Jmap [opcion] nucleo ejecutable
Jmap [opcion] [server-id @] a distancia-host-o-IP

Un ejemplo de como usar el jmap, igual como en el ejercicio anterior nos hacemos ayuda de jps:

[Weblogic@station8 ~]$ jps
4435 Server
4914 NodeManager
5151 Jps
4775 Server
4756 Server
[Weblogic@station8 ~]$ jmap 4914
Attaching to process ID 4914, please wait...
sun.jvm.hotspot.debugger.NoSuchSymbolException: Could not find symbol "gHotSpotVMTypes" in any of the known library names (libjvm.so, libjvm_g.so, gamma_g)
at sun.jvm.hotspot.HotSpotTypeDataBase.lookupInProcess(HotSpotTypeDataBase.java:585)
at sun.jvm.hotspot.HotSpotTypeDataBase.readVMTypes(HotSpotTypeDataBase.java:150)
at sun.jvm.hotspot.HotSpotTypeDataBase.<init>(HotSpotTypeDataBase.java:85)
at sun.jvm.hotspot.bugspot.BugSpotAgent.setupVM(BugSpotAgent.java:569)
at sun.jvm.hotspot.bugspot.BugSpotAgent.go(BugSpotAgent.java:493)
at sun.jvm.hotspot.bugspot.BugSpotAgent.attach(BugSpotAgent.java:331)
at sun.jvm.hotspot.tools.Tool.start(Tool.java:163)
at sun.jvm.hotspot.tools.PMap.main(PMap.java:67)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at sun.tools.jmap.JMap.runTool(JMap.java:197)
at sun.tools.jmap.JMap.main(JMap.java:128)
Debugger attached successfully.
0x0000000000400000 263K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/bin/java
0x0000003b7ca00000 153K /lib64/ld-2.12.so
0x0000003b7ce00000 22K /lib64/libdl-2.12.so
0x0000003b7d200000 1877K /lib64/libc-2.12.so
0x0000003b7d600000 142K /lib64/libpthread-2.12.so
0x0000003b7de00000 584K /lib64/libm-2.12.so
0x0000003b8d200000 113K /lib64/libnsl-2.12.so
0x0000003f3ce00000 45K /lib64/librt-2.12.so
0x00007fa9e1886000 13K /Middleware/Weblogic10/wlserver_10.3/server/native/linux/x86_64/libnodemanager.so
0x00007fa9e1a89000 236K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/liborii.so
0x00007fa9e1d10000 43K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/libnio.so
0x00007fa9e1e18000 111K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/libnet.so
0x00007faa3c269000 90K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/libzip.so
0x00007faa3c5cd000 54K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/native_threads/libhpi.so
0x00007faa3c758000 229K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/libjava.so
0x00007faa3c887000 64K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/libverify.so
0x00007faa3d339000 274K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/libjfr.so
0x00007faa3d549000 64K /lib64/libnss_files-2.12.so
0x00007faa3e258000 228K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/libjrutil.so
0x00007faa3e465000 485K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/libjrosal.so
0x00007faa3e687000 23187K /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/jre/lib/amd64/jrockit/libjvm.so
[Weblogic@station8 ~]$

jstack

SEGUIMIENTO DE PILA: Se utiliza para imprimir un seguimiento de pila de todos los procesos actualmente en ejecución en una maquina virtual.
jstack es diferente del proceso de volcado de hilo normal en las siguientes maneras:
  • imprime pila de subprocesos de VM en ejecución remota.
  • imprime hilos de pila de archivos central
  • imprime pila de subprocesos en la salida estándar en el que se ejecuta este comando.

Opciones de jstack:

-F Forzar un volcado de la pila cuando “jstack -l pid” no responde.
-L Lista larga. Imprime información adicional sobre los bloqueos.
-M Imprime en modo mixto (tanto Java y nativos C / C++) seguimientos de pila.
-H Imprime un mensaje de ayuda.
-Help

jstack [opción] pid
jstack [opción] nucleo ejecutable
jstack [opción] [server-id @] a distancia-host-o-IP

Aquí tenemos un ejemplo de como utilizar la herramienta jstack:

$ jstack -l 4914

===== FULL THREAD DUMP ===============
Wed Aug 14 16:50:57 2013
Oracle JRockit(R) R28.2.7-7-155314-1.6.0_45-20130329-0641-linux-x86_64

"Main Thread" id=1 idx=0x4 tid=4915 prio=5 alive, in native
at __accept_nocancel+34(:0)@0x3b7d60e84b
at java/net/PlainSocketImpl.socketAccept(Ljava/net/SocketImpl;)V(Native Method)
at java/net/PlainSocketImpl.accept(PlainSocketImpl.java:408)
^-- Holding lock: java/net/SocksSocketImpl@0xf001dca8[biased lock]
at java/net/ServerSocket.implAccept(ServerSocket.java:462)
at javax/net/ssl/impl/SSLServerSocketImpl.accept()Ljava/net/Socket;(Unknown Source)
at weblogic/nodemanager/server/SSLListener.run(SSLListener.java:98)
at weblogic/nodemanager/server/NMServer.start(NMServer.java:207)
at weblogic/nodemanager/server/NMServer.main(NMServer.java:382)
at weblogic/NodeManager.main(NodeManager.java:31)
at jrockit/vm/RNI.c2java(JJJJJ)V(Native Method)
-- end of trace
.
.
.

 
Ejemplo N° 2. utilizando jstack con la opcion -m seguido del pid del proceso:

[Weblogic@station8 ~]$ jstack -m 4914
Attaching to process ID 4914, please wait...
sun.jvm.hotspot.debugger.NoSuchSymbolException: Could not find symbol "gHotSpotVMTypes" in any of the known library names (libjvm.so, libjvm_g.so, gamma_g)
at sun.jvm.hotspot.HotSpotTypeDataBase.lookupInProcess(HotSpotTypeDataBase.java:585)
at sun.jvm.hotspot.HotSpotTypeDataBase.readVMTypes(HotSpotTypeDataBase.java:150)
at sun.jvm.hotspot.HotSpotTypeDataBase.<init>(HotSpotTypeDataBase.java:85)
at sun.jvm.hotspot.bugspot.BugSpotAgent.setupVM(BugSpotAgent.java:569)
at sun.jvm.hotspot.bugspot.BugSpotAgent.go(BugSpotAgent.java:493)
at sun.jvm.hotspot.bugspot.BugSpotAgent.attach(BugSpotAgent.java:331)
at sun.jvm.hotspot.tools.Tool.start(Tool.java:163)
at sun.jvm.hotspot.tools.JStack.main(JStack.java:86)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at sun.tools.jstack.JStack.runJStackTool(JStack.java:136)
at sun.tools.jstack.JStack.main(JStack.java:102)
Debugger attached successfully.
jstack requires a java VM process/core!
[Weblogic@station8 ~]$

Ejemplo 3. Usando la ayuda de la herramienta jstack:

[Weblogic@station8 ~]$ jstack -h
Usage:
jstack [-l] <pid>
(to connect to running process)
jstack -F [-m] [-l] <pid>
(to connect to a hung process)
jstack [-m] [-l] <executable> <core>
(to connect to a core file)
jstack [-m] [-l] [server_id@]<remote server IP or hostname>
(to connect to a remote debug server)

Options:
-F to force a thread dump. Use when jstack <pid> does not respond (process is hung)
-m to print both java and native frames (mixed mode)
-l long listing. Prints additional information about locks
-h or -help to print this help message

JROCKIT Y MISSION CONTROL


  • WebLogic JRockit JVM está diseñado para el lado del servidor de aplicaciones.
  • Emplea optimización adaptativa para mejorar significativamente el rendimiento en tiempo de ejecución.
  • Tiene la recolección de basura adaptativa y la gestión de pilas.
  • Ofrece soporte completo para JRockit de 32 y 64 bits de Intel en EM64T/AMD64 y compatibles.
  • JRockit también es compatible con la arquitectura de Solaris / SPARC.
  • Ofrece soporte para grandes pilas en las plataformas de 64 bits.
  • La suite de herramientas para JRockit Mission Control ofrece mejor manejo, tuning y solución de problemas.


Generational Heap: Jrockit

En los dos modelos generacionales, una pila esta dividida en dos generaciones:
- Generacion Joven (Nursery)
- Generacion Vieja
En un modulo de solo un espacio, todos los objetos se asignan en un unico espacio de la pila.

JRockit Mission Control

JRockit Mission Control proporciona un conjunto de herramientas que se puede utilizar para recopilar y analizar la información del tiempo de ejecución de JRockit de diferentes maneras.
El objetivo principal de JRockit Mission Control es hacer la instrumentación necesaria con el menor impacto posible en el sistema.
JRockit con JRockit Mission Control.
Este es un grupo de herramientas de gestión y monitoreo:
  • JRockit Management Console: herramienta de control compatible con JMX.
  • JRockit Runtime Analyzer: Permite Registros y ayuda a analizar la JVM y aplicación en ejecución.
  • JRockit Memory Leak Detector (Detector de fugas de memoria): Detecta y encuentra la causa de las pérdidas de memoria.

JRockit Mission Control: Architecture 

La imagen muestra las interfaces de la Consola de administración de JRockit con el agente JMX. El Rockit Runtime Analyzer es capaz de analizar y mostrar los resultados de las grabaciones JRA. Las interfaces detector de fugas de memoria (Memory Leak Detector) con el servidor de pérdida de memoria.

JRockit Management Console

La Consola de administración de JRockit es una consola basada en JMX utilizado para gestionar y supervisar la JRockit JVM.
El JRockit Management Console se puede utilizar para monitorear y administrar múltiples instancias JRockit.
Captura y presenta datos en tiempo real sobre pausas Garbage Collention (GC), uso de memoria y CPU, así como información de cualquier JMX MBean desplegado en el servidor MBean interno JVM.

Para usar la herramienta de JRockit Mission Control ejecutamos el siguiente comando:

# java -jar /home/Weblogic/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/missioncontrol/mc.jar

el cual nos mandara la siguiente ventana:

Le damos clic en la opcion: The Management Console y nos muestra la siguiente ventana:

Monitoreo de procesos Java con Aplicaciones de Terceros.


Monitoreando aplicaciones JAVA con jAMON y VisualVM.

Existen varias alternativas al momento de monitorear una aplicación java dependiendo de lo que se necesita monitorear, además hay que tener en cuenta que algunas soluciones son más intrusivas que otras y esto en algunos casos puede resultar interesante si es que se necesita mas precisión. En particular, si interesa monitorear el  tiempo de respuesta en todos los puntos de entrada de una aplicación mas una análisis del uso de los recursos, les presento dos soluciones complementarias:

jAMON

jAMON es una solución libre (licencia BSD) que nos provee varias alternativas al momento de monitorear una aplicación pero de forma intrusiva, que quiero decir con “intrusiva”? Que es necesario integrarlo a la aplicación de alguna manera y esto va a requerir una modificación o extensión (sería lo adecuado) del sistema a monitorear. De mas está decir que la manera de agregar este tipo de comportamiento se puede (y debe) hacerse sin alterar nada de lo que originalmente hace el sistema .. y si si, tal como están pensando .. esa manera es ASPECTOS. No es que si no utilizamos aspectos no podemos integrarlo.. pero difinitivamente de esta manera nos provee una separación clara de responsabilidad con la opción de habilitar o deshabilitar el monitor sin tener que tocar una linea de código del sistema a monitorear.
Esta librería es por demas simple y por cada aspecto que queremos monitorear podemos visualizar el tiempo medio de respuesta, la desviación estandard, mínimo tiempo de respuesta, máximo tiempo de respuesta, timestamp del primer  y último estimulo, etc etc. Esta información se puede visualizar ya sea con unas páginas jsp que nos prevee jAMON las cuales deben agregarse a la webapp (en el caso que sea una aplicación web) o bien utilizar un appender de log4j para persistirlo a disco.

 Visual VM

Con respecto a VisualVM, es una aplicación libre muy liviana orientada a plugins que fue liberada a partir de la jdk 1.5 que reune varios de los utilitarios para monitoreo no intrusivo que proveía Sun por linea de comando como  jprof y jmap pero mucho mejor presentados además de una serie de nuevas features que lo hacen una solución liviana para monitorear aplicaciones (no es profiling aunque provee algunos plugins para poder hacerlo). VisualVM puede correr como un binario ajeno a la aplicación o también como un plugin para Eclipse
En particular hay cuatro cosas muy interesantes de esta herramienta:
  1. Monitoreo de recursos como heap, permgem, CPU usage , theads, comportamiento de Garbage Collector, etc etc
  2. Posibilidad de monitorear procesos JAVA de manera remota o local
  3. Profiler (plugin) donde podemos ver la cantidad de instancias por clase (muy bueno para detectar problemas sin la necesidad de usar un profiler de los típicos pesados como NetBeans o Eclipse Profiler Plugin)
  4. Monitor de Mbeans (podríamos publicar con Spring los Mbeans de Hibernate, Spring,Dozer,wicket, etc y monitorearlos desde VisualVM)
Ejemplo de Reporte de uso de memoria :
 
Actividad de los threads:

 
Cantidad de instancias por clase, uso de momoria, etc.





REFERENCIAS:


Instalar y Desplegar un Deploy en WebLogic 12c y Versiones Anteriores

Introducción

Que es un Deploy?
Un deploy no es nada menos que un archivo en formato .war .jar .ear .zip .ejb que en su interior pueden contener una página web, una aplicación web, una aplicación, librerias entre otras cosas.

Existen dos tipos de Deploys:
Aplicaciones: son aquellas paginas o aplicaciones, que se desplegaran mediante el uso del servidor o cluster, y que interactúa con el cliente.

Librerías: son aquellas librerías que serán utilizadas por las aplicaciones o las mismas instancias de WLS.

Instalación




Para la instalación del Deploy es necesario dirigirse a la sección de “Despliegues” en la consola de administración de WebLogic.



Clic en “Instalar”,
para hacer la instalación de un nuevo despliegue/librería






Lo siguiente para esta instalación es la buscaqueda del Deploy para ello, es necesario dejar el deploy en un lugar de facil acceso. Clic en Siguiente.


Este paso se indicara de que se trata el Deploy, en este caso es una aplicación. Clic en siguiente











Asignar a que servidor y/o cluster se instalara el Deploy. Clic en Siguiente










A partir de aquí, vamos a dejar todo por defecto, y se terminara la instalación. Clic en Terminar.





Despliegue

Estando de vuelta en el Resumen de Despliegues




Hacer clic en el despliegue instalado para entrar a su configuración, una vez dentro dirigirse a la pestaña de control.







Solamente queda iniciar con la opción de servir todas las peticiones.





Para finalizar se comprueba la plicacion fnciona correctamente.
Ir a la pestaña de prueba abrir cualquiera de las aplicaciones.







Si la configuración ha sido exitosa, la aplicación se desplegara sin problema alguno. 



Felicidades! su Deploy ah sido configurado con éxito.

Configuración De Coherence 3.7 En WebLogic 10.3.X y 12.1.1

Introducción a Coherence


Coherence proporciona gestión de datos replicados y distribuidos, así como servicios de almacenamiento en caché que puede utilizar para hacer que los objetos y datos de una aplicación estén disponibles de forma fiable para todos los servidores de un Coherence Cluster. Para ello, WebLogic Server retiene la información de configuración utilizada para ubicar y comunicarse con un Coherence Cluster.

Coherence es un data grid en memoria que ayuda a eliminar los puntos de falla y los puntos únicos de cuellos de botella en la solicitud mediante la distribución de objetos de la aplicación y la lógica a través de múltiples servidores físicos.

Características de Coherence

  • Coherence es una ideal solución por aplicaciones que se enfrentan aumento explosivo de la base de usuarios y cuando la tasa de cambio es más rápido para rediseñar los sistemas.
  • La información está disponible en memoria (vs almacenamiento) en un entorno distribuido. Así que no hay ningún retraso de E / S en el disco involucrados.
  • Los datos son tolerantes a fallos, por tanto fiable.
  • Los datos se mantienen como objetos dentro de JVM (almacenado en memoria).
  •  Funcionamiento continuo mantiene sin interrupción del servicio o la pérdida de datos cuando los servidores fallan.
  • Cuando JVM se bloquea sin necesidad de intervención. Servidores supervisar el estado de cada otra.
  • Conmutación automática por error.
  • No se requiere la intervención humana para mantener clúster
  • Evite el punto único de fallo y el punto de cuello de botella

Ediciones de Coherence

  1.  Oracle Coherence Standard Edition
  2.  Oracle Coherence Enterprise Edition
  3.  Oracle Coherence Grid Edition

Términos importantes

  • Coherence Node: un proceso Java - es una instancia de servidor de la coherencia - ha conocido los puertos y la dirección para comunicarse con otros nodos.
  • Coherence Cluster: Grupo de almacenamiento de los nodos del clúster habilitados - especifica un nombre de clúster común.
  • Coherence Client: Los nodos de almacenamiento con discapacidad.
  • Coherence Server: nodos habilitados almacenamiento.
  • Cache: espacio de memoria local que contiene los datos solicitados con frecuencia.

Configuración De Coherence

Oracle Coherence se encuentra instalado por defecto en Oracle WebLogic 10.3.6 y localizado en el mismo nivel de folder de WEBLOGIC_HOME. Justo con el nombre de folder coherence_3.7
Implementar las bibliotecas y dirigirlos al clúster Weblogic. Estas bibliotecas están disponibles en:
  •  $COHERENCE_HOME/lib/coherence-web.jar
  • $COHERENCE_HOME/lib/coherence.jar
  • $Weblogic_Home/common/deployable-libraries/active-cache-1.0.jar
 Para desplegar las librerías hay que dirigirse a la sección de “Despliegues” en la consola de administración de WebLogic.













  Clic en “Instalar”,  para hacer la instalación de un nuevo despliegue/librería 




Seleccionar las rutas especificadas de las librerías Coherence. Y hacer clic en siguiente.



**Nota: recordar que solo se puede seleccionar una por instalacion.
Debido a la naturaleza del objeto, marcara un error, no es de gravedad, y hace adelantar un paso a la instalación auto-indicando que se trata de una librería. 
En este paso, se selecciona el clúster. Clic en siguiente.




En el siguiente paso se indicara con el botón “Terminar” el término de la configuración de instalación.
Repetimos los pasos para las librerías que hacen falta.

Creación de Coherence Cluster


Para la creación del Coherence Cluster se dirige a la sección de “Cluster de Coherence en la “Estructura del Dominio”











Clic “Nuevo” para efectuar la creación del Cluster de Coherence.

Se asigna el nombre del Cluster de Coherencia. Clic en siguiente.
 


En el siguiente paso se configurara la dirección de recepción unicast puede ser la dirección de la maquina host y el puerto de recepción unicast (puede ser cualquiera, tomar en cuenta que no debe estar ocupado por alguna otra instancia); se configura la dirección de recepción de Multidifusión y el puerto de recepción de multidifusión (puede ser cualquiera), en esta práctica dejamos el ajuste automático.


En este paso se indicara que instancias o clusters de WebLogic podrán acceder al cluster de coherence. Clic en Terminar.

Creación de Coherence Servers


 
En este paso se replicaran los pasos para que cada Servidor del Cluster de WLS quede con su respectivo Servidor de Coherence 
















Clic “Nuevo” para efectuar la creación del Servidor de Coherence.   




 

  • Agregar nombre del Server Coherence
  • Asignar la maquina
  •  Asignar cluster coherence
  • Agregar Direccion de recepcion
  • Agregar Puerto

Se efectuaran todos los cambios que requiera el Servidor de Coherence, evitando repetir los puertos de los servidores. Clic en Terminar.



**Nota: la ip y el puerto de Unicast del Servidor de Coherence debe ser el mismo que el del Cluster de Coherence.**
  
Para iniciar los servidores de coherencia, actualice la pestaña "start server" de estas máquinas virtuales de Java, proporcionando valores relevantes relacionados con

  • Directorio raíz de java: Java con el que instalamos weblogic
  • Proveedor de Java: el proveedor de nuestro java (Oracle, Sun, etc.)
  • Directorio Raiz BEA: Ruta de nuestro <WL_HOME>
  • Directorio Raiz: Ruta a nuestro dominio
Nos dirigimos en la consola de administracion al servidor coherence que acabamos de crear para su configuracion en Servidores Coherence > CServer_1 > Configuracion > Inicio de servidor


Finalización y Ejecución

  • Una vez terminado las configuraciones del servidor y que han sido guardadas.
  • Hay que volver a la sección de “Servidores de Coherence” y esta vez, dirigirse a la pestaña Control”
  • Seleccionar el servidor de coherence.
  • Dar clic en iniciar.
**Nota tomar en cuenta de que debemos tener el gestor de nodos de la maquina accesible**


Si todos los cambios y configuraciones se encuentran bien, el estado del servidor se encontrara “En Ejecución”.


Felicidades!! 
Ha creado y configurado el  Servidor de Coherence con éxito.