Monitorando Weblogic em DomainRuntime com Zabbix
Sempre monitorei Jboss com zabbix, mas recentemente recebi uma demanda e encontrei algumas dificuldades que gostaria de compartilhar com a comunidade. O cenário do artigo foi RHEL6, Weblogic 11g com jrockit 1.6, zabbix 2.4, porém entendendo o cenário, pode ser customizado para outras versões.
Servidores MBean em Weblogic
A Oracle tem um servidor Mbean chamado DomainRuntime, que está disponível no AdminServer.
Conectando-se nesse servidor ,é possível coletar todas informações das JVM e do domínio. Assim, não será necessário exportar JMX de cada JVM.
Com essa solução, ganha-se tempo de configuração, segurança, melhor administração de itens e gráficos agregados, além de não haver necessidade de abrir porta JMX em nenhuma JVM. Então, se tenho um domínio com 10 instancias(JVM), será possível apenas com a URL do console admin, pegar todos Mbeans desse domínio.
O Middleware Weblogic é composto por três MBeanServers próprios que são exportados via RMI/IIOP como JSR-160. Estes podem ser consultados por meio de nome JNDI como mostra a lista abaixo. Além disso, existe a PlatformMBeanServer que pode ser exportado juntamente com o MbeanServer do weblogic.
O MbeanServer que vamos utilizar para buscar toda árvore do domínio weblogic será o Domínio Runtime MBean Servidor (weblogic.management.mbeanservers.domainruntime).
Esse Mbean só está disponível na JVM do AdminServer.
Ative os seguintes itens abaixo no AdminServer do Weblogic:
Domínio->Geral->Avançado
Entre em cada JVM e adicione a seguinte linha no argumento que se encontra na aba Inicialização dos servidores.
Domínio->Ambientes->Servidores->"NAME JVM"->Inicialização do Servidor
-Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder *Será necessário reiniciar o AdminServer e as JVM do domínio.
Conectando-se nesse servidor ,é possível coletar todas informações das JVM e do domínio. Assim, não será necessário exportar JMX de cada JVM.
Com essa solução, ganha-se tempo de configuração, segurança, melhor administração de itens e gráficos agregados, além de não haver necessidade de abrir porta JMX em nenhuma JVM. Então, se tenho um domínio com 10 instancias(JVM), será possível apenas com a URL do console admin, pegar todos Mbeans desse domínio.
O Middleware Weblogic é composto por três MBeanServers próprios que são exportados via RMI/IIOP como JSR-160. Estes podem ser consultados por meio de nome JNDI como mostra a lista abaixo. Além disso, existe a PlatformMBeanServer que pode ser exportado juntamente com o MbeanServer do weblogic.
- Domain Runtime MBean Server
- Runtime MBean Server
- Edit MBean Server
O MbeanServer que vamos utilizar para buscar toda árvore do domínio weblogic será o Domínio Runtime MBean Servidor (weblogic.management.mbeanservers.domainruntime).
Esse Mbean só está disponível na JVM do AdminServer.
Ative os seguintes itens abaixo no AdminServer do Weblogic:
Domínio->Geral->Avançado
- Servidor MBean de Compatibilidade Ativado
- Servidor MBean da Plataforma Ativado
- Servidor MBean da Plataforma Usado
Entre em cada JVM e adicione a seguinte linha no argumento que se encontra na aba Inicialização dos servidores.
Domínio->Ambientes->Servidores->"NAME JVM"->Inicialização do Servidor
-Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder *Será necessário reiniciar o AdminServer e as JVM do domínio.
Você poderia me informar onde encontro template que monitore o datasource, managed servers, para WebLogic?
Grato!