Tecnologia de JMX para a gerência remota
|
Gerência remota
|
Fazer um agente de JMX acessível das aplicações da gerência fora do usuário de JVM MBean do agente confia em adaptadores e em conectores do protocolo. Bàsicamente os adaptadores fornecem uma vista com um protocolo específico para todo o MBeans registado no usuário de MBean (por exemplo um adaptador do HTML poderia indicar um MBean em um web browser). a relação do Gerente-lado forneceu pelos conectores que segura a comunicação entre o gerente e o agente de JMX. Quando uma aplicação da gerência remota usa tal relação, conecta a um agente de JMX transparente através da rede não obstante o protocolo.
Para aplicações remotas usando-se a tecnologia remota do Invocation do método (RMI) JMX exporta a instrumentação de JMX API. Define também um protocolo opcional baseado diretamente nos soquetes do TCP chamados o protocolo do Messaging de JMX (JMXMP). Mas este este protocolo não é suportado em J2SE 5.0.
A especificação remota de JMX API 1.0 (JSR 160) descreve como anunciar e encontrar os agentes de JMX que usam infrastructures existentes da descoberta e do lookup. Na outra maneira a especificação não define seu próprio serviço da descoberta e do lookup. Usar serviços existentes da descoberta e do lookup é opcional; você pode codificar o endereço de seus agentes de JMX API no formulário de URLs e fazer estes URLs disponível ao gerente.
|
Conector do RMI
|
O exemplo 4 mostra um exemplo de usar o conector do RMI, que é uma modificação ligeira do exemplo 3.
|
Codificar a amostra 4: SimpleAgent.java
<pre>import javax.management.*; importação java.lang.management.*; importação javax.management.remote.*;
classe pública SimpleAgent { MBeanServer confidencial mbs = zero;
SimpleAgent público () {
<em>Get de // a plataforma MBeanServer</em> mbs = ManagementFactory.getPlatformMBeanServer ();
identificação do <em>Unique de // de MBeans</em>
Hello Hello helloBean = novo (); helloName = zero de ObjectName;
tentativa { // <em>Uniquely identifica o MBeans e regista-os com o MBeanServer</em>
helloName = ObjectName novo (" SimpleAgent: name=hellothere"); mbs.registerMBean (helloBean, helloName);
<em>Create de <strong>//um conector do RMI e um começo it</em> JMXServiceURL URL = JMXServiceURL novo (" serviço: jmx: rmi: ///jndi/rmi: //localhost: 9999/server"); Cs de JMXConnectorServer = JMXConnectorServerFactory.newJMXConnectorServer (URL, zero, mbs); cs.start (); </strong> } prendedor (exceção e) { e.printStackTrace ();
}
}
cano principal público do vácuo da estática (argv da corda []) { Agente de SimpleAgent = SimpleAgent novo (); System.out.println (" SimpleAgent está funcionando… o ");
} } </pre>
|
Para executar esta aplicação, fazer o seguinte:
- Se você quiser executar a aplicação em J2SE 1.4, você necessita mudar a linha
mbs = ManagementFactory.getPlatformMBeanServer (); . a mbs = MBeanServerFactory.createMBeanServer (“SimpleAgent”);
- Compilar o
SimpleAgent.java revisado da amostra 4 do código.
- Começar o rmiregistry no porto 9999 (
prompt> 9999 rmiregistry ).
- Funcionar
SimpleAgent (prompt> java SimpleAgent ).
- Quando
SimpleAgent funcionar, o jconsole do funcionamento e então usa a aba avançada e incorpora a informação como mostrado na seguinte figura.
|
Figura 4: Configurando o jconsole para a gerência remota
6. Uma vez que você é conectado, você pode browse o MBeans e controlá-los que usam a aba de MBeans como mostrado em figura 5.
|
Figure 5: Browsing and managing remote MBeans
Keywords: jmx tutorial,
jmx MBeans,
java jmx,
jmx ObjectName,
jmx mbean,
jmx jboss,
jmx api,
tomcat jmx,
SNMP jmx,
jmx example,
jmx timer,
jmx weblogic,
jmx monitoring,
jmx sun,
jmx jar,
websphere jmx,
jmx console,
jmx jconsole,
jmx notification,
jmx implementation,
jmx client,
jmx agent,
jmx sample,
jmx connector,
jmx invoke,
jmx monitor,
jmx rmi,
jmx configuration,
jmx standard,
implementation management,
jmx adaptor,
remote client.
|