:::: MENU ::::

domingo, 6 de setembro de 2015

Zorka

Estava pesquisando uma maneira de monitorar o WildFly, já que o método convencional via JMX não estava funcionando, e encontrei o Zorka. Ele é um agente de monitoramento, que possui uma série de funcionalidades. São muitas, destacando algumas:
  • Funcionalidades básicas: Acesso JMX, Zorka Stats, Audit logs...
  • Ele consegue monitorar os componentes: HTTP, SQL, EJB, LDAP,JMS;
  • Suporta sistemas monitorados e protocolos: Zabbix, Nagios, syslog, SNMP, arquivos locais, ZICO colletor (e da família do Zorka);
  • Suporta servidores de aplicações: Tomcat 6/7, JBoss 4/5/6/7, EAP 6, Jetty 6/7/8/9, IBM Websphere 7/8, Mule ESB.
recomendo você ler aqui: http://zorka.io/features.html

Configuração do laboratório
host 01: CentOS 6.6 + Zabbix 2.4.6
host 02: CentOS 6.6 + WildFly 9.0.1, modo standalone

Instalação

Acesse a página de downloads e baixe a última versão do zorka. No nosso exemplo, a 1.0.14:
wget  http://zorka.io/files/zorka-1.0.14.zip

Após o download, descompacte o seu conteúdo dentro do diretório do seu WildFly. Digamos que ele esteja no /opt/wildfly:
unzip -l /opt/wildfly zorka-1.0.14.zip
E essa foi a instalação :)
O Zorka funcionará como o zabbix-agent, então, fica a seu critério instalá-lo ou não - a não ser que queira também as informações do host, que são importantes.

Configuração

$WILDFLY_HOME/zorka/zorka.properties

Acesse o diretório zorka, dentro do home do WildFly
cd /opt/wildfly/zorka
Existe um arquivo chamado zorka.properties. Vamos editar esse arquivo e setar alguns parâmetros:
Descomente a linha e adicione o parâmetro -XX:-UseSplitVerifier. Vai ficar assim:
scripts = jvm.bsh, zabbix.bsh, jboss/jboss7.bsh
-XX:-UseSplitVerifier
Um pouco mais embaixo, você setará os parâmetros para o Zabbix:
# Add IP addresses of your zabbix servers here.
# Only servers from this list will be allowed to access agent using zabbix protocol.
zabbix.server.addr = 192.168.0.3

# Default port Zabbix protocol will listen on.
zabbix.listen.port = 10055

# Enter name of your application and host here.
# Should be unique for every monitored application.
zorka.hostname = wildfy

 São bem intuitivos: server.addr para endereço do servidor, listen.port para a porta que o zabbix server irá consultar e hostname, para o nome do host a ser monitorado.
Após isso, salve o arquivo e vamos para o próximo.

$WILDFLY_HOME/bin/standalone.conf

Procure pela linha
if [ "x$JBOSS_MODULES_SYSTEM_PKGS" = "x" ]; then   JBOSS_MODULES_SYSTEM_PKGS="org.jboss.byteman"
fi

E adicione ",com.jitlogic.zorka.core.spy", logo após o byteman. Vai ficar assim (recomendo que copie e cole)

if [ "x$JBOSS_MODULES_SYSTEM_PKGS" = "x" ]; then   JBOSS_MODULES_SYSTEM_PKGS="org.jboss.byteman,com.jitlogic.zorka.core.spy"
fi
 E, após as definições de variáveis, adicione a sua.
ZORKA="/opt/wildfly/zorka"
JAVA_OPTS="$JAVA_OPTS -javaagent:$ZORKA/zorka.jar=$ZORKA"
 Feito isso, salve o arquivo e reinicie o WildFly para carregar as novas configurações definidas no standalone.conf.

Zabbix

Importação dos templates

Pois bem, o Zorka já possui templates bem completos para te ajudar nessa labuta. No diretório zorka/templates, existem vários.
E dentro dos diretórios ainda tem mais!

Bom proveito. 

Criação do host

A parte do Zabbix é bem simples: Crie o host e defina a porta 10055.
Na aba templates, adicione os que preferir. Nos meus testes, adicionei o Template_Zorka_JBoss7_RequestProcessors, Template_Zorka_JBoss7_Servlets e Template_Zorka_JVM. Olha o que obtive:

Legal né :D
Bem amigos, é isso aí. Maiores informações ou dúvidas, recomendo o pai da criança, em http://zorka.io/install/jboss7.html ou a sua lista de email, no google groups https://groups.google.com/forum/?fromgroups#!forum/zorka-user

Abraço e até a próxima.

0 comentários:

Postar um comentário

Só não vale xingar a mãe ou puxar cabelo nos comentários =)

Posts populares