Diferencia entre revisiones de «Java Management Extensions»

m (Texto reemplazado: «<div align="justify"> » por «»)
 
(No se muestran 7 ediciones intermedias de 3 usuarios)
Línea 26: Línea 26:
 
|web=http://java.sun.com/jmx
 
|web=http://java.sun.com/jmx
 
}}
 
}}
<div align="justify">
+
 
'''Java Management eXtensions (JMX).''' La [[tecnología]] [[java]] es la que define una arquitectura de gestión, una API estándar para la gestión y control de recursos tales como aplicaciones, dispositivos, servicios y la máquina virtual Java. Esta tecnología permite que los desarrolladores Java integren sus aplicaciones con las soluciones existentes de gestión y operación. A partir de la plataforma J2SE 5.0, la tecnología [[JMX]] está incluida en la plataforma Java SE.  
+
'''Java Management Extensions (JMX).''' La [[tecnología]] [[java]] es la que define una [[arquitectura]] de gestión, una API estándar para la gestión y control de recursos tales como aplicaciones, dispositivos, servicios y la [[máquina]] virtual [[Java]]. Esta tecnología permite que los desarrolladores Java integren sus aplicaciones con las soluciones existentes de gestión y operación. A partir de la plataforma J2SE 5.0, la tecnología JMX está incluida en la plataforma [[Java SE]].  
  
 
==Principales funciones==
 
==Principales funciones==
Línea 38: Línea 38:
 
==Arquitectura==
 
==Arquitectura==
  
La arquitectura JMX se define en tres niveles:
+
La [[arquitectura]] JMX se define en tres niveles:
 
   
 
   
 
*Nivel de Agente.
 
*Nivel de Agente.
Línea 46: Línea 46:
 
*Nivel de Gestión o adaptación.
 
*Nivel de Gestión o adaptación.
  
[[Archivo:Arquitectura JMX.jpg]]
+
El '''nivel de agente''' es el que facilita una [[interfaz]] para el manejo de los componentes del nivel de instrumentación. Está representado por el [[servidor]] de [[MBean]] donde los diferentes MBean se registran, gestiona un conjunto de agentes representado por los MBeans.  
 
 
El '''nivel de agente''' es el que facilita una [[interfaz]] para el manejo de los componentes del nivel de instrumentación. Está representado por el servidor de [[MBean]] donde los diferentes MBean se registran, gestiona un conjunto de agentes representado por los MBeans.  
 
  
 
El '''nivel de instrumentación''' es donde residen los componentes que facilitan la información necesaria para la gestión de una aplicación. Estos componentes son desarrollados según las necesidades de gestión específicas de cada aplicación.
 
El '''nivel de instrumentación''' es donde residen los componentes que facilitan la información necesaria para la gestión de una aplicación. Estos componentes son desarrollados según las necesidades de gestión específicas de cada aplicación.
Línea 58: Línea 56:
 
Los Managed Beans o MBeans  son los objetos JMX que exponen la información manejable en forma de  propiedades y operaciones.
 
Los Managed Beans o MBeans  son los objetos JMX que exponen la información manejable en forma de  propiedades y operaciones.
 
          
 
          
 +
Existen varios tipos de MBeans como estándar MBean, Dynamic MBean, Model MBean y
 +
Open MBean, se deberá escoger uno u otro según las necesidades de instrumentación que se tenga.
  
Existen varios tipos de MBeans como Estandar MBean, Dynamic MBean, Model MBean y
+
'''Standard MBean'''. La forma más sencilla de instrumentar un recurso. Es similar al  modelo de componentes de Java Beans y con una interfaz de gestión  estática. Posee métodos para obtener y asignar valores a los atributos  que se definen en el objeto implementado. Los métodos que expone el  objeto son determinados en el momento de la compilación del mismo y no  pueden ser modificados en tiempo de ejecución.
Open MBean, se deberá escoger uno u  otro  según las necesidades de instrumentación que se tenga.
 
 
 
'''Standard MBean'''. La forma más sencilla de instrumentar un recurso. Es similar al  modelo de componentes de JavaBeans y con una interface de gestión  estática. Posee métodos para obtener y asignar valores a los atributos  que se definen en el objeto implementado. Los métodos que expone el  objeto son determinados en el momento de la compilación del mismo y no  pueden ser modificados en tiempo de ejecución.
 
  
'''Dynamic MBean'''. Posee métodos genéricos para obtener, asignar valores e invocar callback. Los métodos toman entre sus argumentos el nombre del atributo cuyo valor se desea obtener, el nombre del atributo y el valor que se le  quiere asignar.
+
'''Dynamic MBean'''. Posee métodos genéricos para obtener, asignar valores e invocar callback. Los métodos toman entre sus argumentos el nombre del atributo cuyo valor se desea obtener, el nombre del atributo y el valor que se le  quiere asignar.
  
 
'''Model MBean'''. Constituye un MBean dinámico, genérico y configurable que se utiliza  para instrumentar recursos en tiempo de ejecución.
 
'''Model MBean'''. Constituye un MBean dinámico, genérico y configurable que se utiliza  para instrumentar recursos en tiempo de ejecución.
  
'''Open MBean'''. Este tipo de MBean permite utilizar objetos gestionados que son descubiertos en tiempo de ejecución.
+
'''Open MBean'''. Este tipo de MBean permite utilizar objetos gestionados que son descubiertos en tiempo de ejecución.
  
 
==Servidor MBeans==
 
==Servidor MBeans==
Línea 89: Línea 86:
 
Los cambios ha considerar son  de  dos tipos:
 
Los cambios ha considerar son  de  dos tipos:
 
          
 
          
1-Cambio en un atributo: este es el caso que se produce cuando se cambia una propiedad del  MBean (y por lo tanto, del servicio que éste instrumenta).  
+
'''1-Cambio en un atributo''': este es el caso que se produce cuando se cambia una propiedad del  MBean (y por lo tanto, del servicio que este instrumenta).  
 +
 
 +
'''
  
2-Ejecución de una operación: cuando se ejecuta una                 operación de un MBean puede que no se cambie ninguna de sus  propiedades                 pero que sí se realicen acciones que deben ser replicadas en otros                 servidores del cluster para conservar la homogeneidad del entorno de                  ejecución.  
+
'''2-Ejecución de una operación''': cuando se ejecuta una operación de un MBean puede que no se cambie ninguna de sus  propiedades pero que sí se realicen acciones que deben ser replicadas en otros servidores del cluster para conservar la homogeneidad del entorno de                  ejecución.  
 
      
 
      
 
El servidor de aplicaciones  WAS en          su versión V. 5.0 usa JMX para monitorizar sus procesos internos y  dispone          de servicios para realizar notificaciones en su jerarquía y permitir  así una          administración centralizada.
 
El servidor de aplicaciones  WAS en          su versión V. 5.0 usa JMX para monitorizar sus procesos internos y  dispone          de servicios para realizar notificaciones en su jerarquía y permitir  así una          administración centralizada.
Línea 97: Línea 96:
 
==Fuentes==
 
==Fuentes==
  
*[http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=jmx  Instrumentación de componentes Java usando JMX]
+
*[http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=jmx  Instrumentación de componentes Java usando JMX]. Consultado: 9 de noviembre de 2012.
*[http://docs.jboss.org/hibernate/orm/3.5/reference/es-ES/html/architecture.html  Arquitectura en niveles]
+
*[http://docs.jboss.org/hibernate/orm/3.5/reference/es-ES/html/architecture.html  Arquitectura en niveles]. Consultado: 9 de noviembre de 2012.
*[http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html Java Management Extensions]  
+
*[http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html Java Management Extensions]. Consultado: 9 de noviembre de 2012.
  
[[Category:Software Libre]]
+
[[Category:Software libre]]

última versión al 21:31 22 ago 2019

JMX
Información sobre la plantilla
JMX.jpg
JMX es la tecnología que define una arquitectura de gestión
GéneroAdministración de servidores de aplicaciones
Sistemas Operativos compatiblesLinux, Windows, Unix, etc.
Sitio web
http://java.sun.com/jmx

Java Management Extensions (JMX). La tecnología java es la que define una arquitectura de gestión, una API estándar para la gestión y control de recursos tales como aplicaciones, dispositivos, servicios y la máquina virtual Java. Esta tecnología permite que los desarrolladores Java integren sus aplicaciones con las soluciones existentes de gestión y operación. A partir de la plataforma J2SE 5.0, la tecnología JMX está incluida en la plataforma Java SE.

Principales funciones

  • Aplicación de consultoría y cambiar la configuración.
  • La acumulación de estadísticas sobre el comportamiento de las aplicaciones y ponerlas a disposición.
  • Notificar los cambios de estado y las condiciones erróneas.
  • incluye acceso remoto.

Arquitectura

La arquitectura JMX se define en tres niveles:

  • Nivel de Agente.
  • Nivel de Instrumentación.
  • Nivel de Gestión o adaptación.

El nivel de agente es el que facilita una interfaz para el manejo de los componentes del nivel de instrumentación. Está representado por el servidor de MBean donde los diferentes MBean se registran, gestiona un conjunto de agentes representado por los MBeans.

El nivel de instrumentación es donde residen los componentes que facilitan la información necesaria para la gestión de una aplicación. Estos componentes son desarrollados según las necesidades de gestión específicas de cada aplicación.

El nivel de adaptadores, consiste en uno o más conectores (o adaptadores de protocolo) que proporcionan acceso desde los sistemas de monitorización remotos.

Uso del MBeans en JMX

Los Managed Beans o MBeans son los objetos JMX que exponen la información manejable en forma de propiedades y operaciones.

Existen varios tipos de MBeans como estándar MBean, Dynamic MBean, Model MBean y Open MBean, se deberá escoger uno u otro según las necesidades de instrumentación que se tenga.

Standard MBean. La forma más sencilla de instrumentar un recurso. Es similar al modelo de componentes de Java Beans y con una interfaz de gestión estática. Posee métodos para obtener y asignar valores a los atributos que se definen en el objeto implementado. Los métodos que expone el objeto son determinados en el momento de la compilación del mismo y no pueden ser modificados en tiempo de ejecución.

Dynamic MBean. Posee métodos genéricos para obtener, asignar valores e invocar callback. Los métodos toman entre sus argumentos el nombre del atributo cuyo valor se desea obtener, el nombre del atributo y el valor que se le quiere asignar.

Model MBean. Constituye un MBean dinámico, genérico y configurable que se utiliza para instrumentar recursos en tiempo de ejecución.

Open MBean. Este tipo de MBean permite utilizar objetos gestionados que son descubiertos en tiempo de ejecución.

Servidor MBeans

El Servidor constituye un entorno que permite a los gestores interactuar con los MBeans, entre los que se encuentra:

  • Localización
  • Filtrado por nombre o expresión
  • Monitorización de atributos
  • Descubrir otros agentes
  • Establecer relaciones entre MBeans
  • Carga dinámica
  • Programación de tareas
  • Definir jerarquías de agentes

Instrumentación

Una vez que se ha mostrado que los MBeans permiten instrumentar servicios, el principal reto que plantea un entorno cluster es la propagación de los cambios que sufre un MBean en un determinado servidor a sus homólogos en los otros servidores del cluster.

Los cambios ha considerar son de dos tipos:

1-Cambio en un atributo: este es el caso que se produce cuando se cambia una propiedad del MBean (y por lo tanto, del servicio que este instrumenta).

2-Ejecución de una operación: cuando se ejecuta una operación de un MBean puede que no se cambie ninguna de sus propiedades pero que sí se realicen acciones que deben ser replicadas en otros servidores del cluster para conservar la homogeneidad del entorno de ejecución.

El servidor de aplicaciones WAS en su versión V. 5.0 usa JMX para monitorizar sus procesos internos y dispone de servicios para realizar notificaciones en su jerarquía y permitir así una administración centralizada.

Fuentes