Ubuntu JOO PESSOA-PB OUT/2013 Histrico de Atualiza!es Data Verso Responsvel Alteraes 20 jun 2012 1.0 Acio Pires Verso inicial para o Zabbix Proxy 2.0.0 11 jul 2012 1.1 Acio Pires Ajustes no contedo e na instalao do ZB Proxy 2.0.1 usando !"ite 0# a$o 2012 1.2 Acio Pires Ajustes no contedo e na instalao do ZB Proxy 2.0.2 usando !"ite 2% a$o 2012 1.% Acio Pires Ajustes na con&i$urao 1' out 2012 1.( Acio Pires Ajustes no contedo e na instalao do ZB Proxy 2.0.% usando !"ite 12 abr 201% 1.) Acio Pires Ajustes no contedo e na instalao do ZB Proxy 2.0.) usando !"ite 1' jun 201% 1.* Acio Pires Ajustes no contedo e na instalao do ZB Proxy 2.0.* usando !"ite 1' out 201% 1.# Acio Pires Ajustes no contedo e na instalao do ZB Proxy 2.0.+ usando !"ite A"cio dos Sa#tos Pires http://aeciopires.com aeciopires@gmail.com Especialista em Segurana da nformao iDEZ, tecnlogo em Redes de Computadores FPB, administrador de sistemas da Dynavdeo e membro da comunidade Zabbix Brasil. $ice#a de Uso Este trabalho est licenciado sob uma Licena Creative Commons Atribuio- Uso No-Comercial 2.5 Brasil. Para ver uma cpia desta licena, visite http://creativecommons.org/licenses/by-nc/2.5/br/ ou envie uma carta para Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA. 2 ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", Su%&rio 1. .ntroduo .................................................................................................... ( 2. .nstalando e con&i$urando as depend/ncias ................................................ * %. .nstalando o Zabbix Proxy ............................................................................ * %.1. 0riando o banco de dados ...................................................................... # %.2. 0o1pilando o Zabbix Proxy .................................................................... # %.%. 0on&i$urando o Zabbix Proxy ................................................................. # %.(. cripts de iniciali2ao do Zabbix ......................................................... + %.). 0adastrando o Zabbix Proxy na inter&ace 3eb do Zabbix .................... 11 %.*. 0on&i$urando o Zabbix Proxy no ar4ui5o 2abbix6a$entd.con& dos 7osts clientes ........................................................................................................ 12 %.#. 0on&i$urando os 7osts clientes para sere1 1onitorados pelo Zabbix Proxy ........................................................................................................... 1% (. 0onsidera8es &inais ................................................................................... 1( ). 9e&er/ncias ................................................................................................. 1( % ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", 1' (#trodu)o Zabbix um sistema web, gratuito e de cdigo aberto usado para o monitoramento e gerenciamento de equipamentos de rede (cmera de segurana, roteador, computador, etc) criado por Alexei Vladishev e, atualmente, desenvolvido pela Zabbix SA. Ele monitora vrios parmetros de rede e checa a integridade dos equipamentos, usando um mecanismo de notificao flexvel que permite aos usurios configurarem o envio de alertas por e-mail, SMS ou Jabber (gtalk). Esta caracterstica permite uma rpida reao aos problemas que forem detectados. O Zabbix composto de vrios componentes de software, os principais so: *a++i, Ser-er => o centro do sistema Zabbix. Ele pode verificar remotamente os servios de rede (como servio web e e-mail), utilizando a checagem simples, mas tambm o componente central para que os agentes enviem informaes e estatsticas a cerca da disponibilidade e integridade do equipamento que est sendo monitorado. Depois que o servidor recebe essas informaes, ele processa, gerencia os equipamentos, exibe relatrios, envia alertas e executa comandos remotos dependendo da configurao. Os tutoriais de instalao do servidor Zabbix podem ser encontrados nesta pgina: http://zabbixbrasil.org/?p=272 *a++i, Pro,. => uma parte opcional do Zabbix. O Proxy coleta dados de desempenho e disponibilidade, em nome de um servidor Zabbix com a vantagem de coletar milhares de informaes por segundo, utilizando um hardware modesto. A/e#te *a++i, => aplicao cliente do Zabbix que coleta informaes do equipamento e envia ao servidor. O agente capaz de acompanhar ativamente o uso dos recursos e aplicaes locais, tais como: discos rgidos, memria, processador, processos, servios e aplicativos em execuo. Neste tutorial ser mostrada a instalao do componente *a++i, Pro,.. Por isso assumido que j existe um servidor Zabbix instalado e um computador com o sistema operacional GNU/Linux sendo monitorado via agente Zabbix. Na pgina http://zabbixbrasil.org/?page_id=7 so encontrados tutoriais de instalao do servidor Zabbix e dos agentes. Antes de iniciar a instalao, veja um caso de uso adequado para usar o Zabbix Proxy. ( ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", 0i/ura 11 2aso de uso do *a++i, Pro,.' Como pode ser visto na Figura 1, tem um servidor Zabbix instalado na "Rede A, atrs de um firewall, que est monitorando hosts clientes instalado na "Rede B onde todos os dados esto sendo trafegados na nternet. Neste cenrio pode ocorrer perda de pacotes e h um volume muito alto de dados sendo enviados dos agentes para o servidor Zabbix. sso pode causar falsos-negativos e falsos-positivos atrapalhando o monitoramento. Alm disso, se houver uma queda do link de acesso nternet em uma das redes, os dados coletados pelos agentes no sero retransmitidos ao servidor Zabbix e voc no ficar sabendo de algo que possa ter acontecido neste meio tempo. O componente Zabbix Proxy foi criado para resolver estes problemas. Ele instalado na mesma rede que possui os hosts clientes e recebe os dados enviados pelos agentes em nome de um servidor Zabbix. Ele possui um banco de dados prprio para armazenamento temporrio dos dados para o caso de haver perda de conexo com o servidor Zabbix. Quando a conexo for restabelecida, os dados sero repassados e assim, voc ficar sabendo o que aconteceu neste meio tempo. Antente para o fato de que deve haver um servidor proxy instalado em cada rede remota que tiver hosts clientes sendo monitorados. Para a elaborao deste tutorial, foi utilizada uma mquina virtual com as seguintes configuraes: Processador1 ntel Dual Core 1.8 GHz 3e%oria 4A31 2 GB H51 10 GB Siste%a o6eracio#al1 Ubuntu Desktop 12.04 32 bits. OBS'1 Depois de instalar o Zabbix Proxy, acesse os sites mostrados nas Referncias deste tutorial para obter mais informaes sobre o sistema. ) ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", 2' (#stala#do e co#7i/ura#do as de6e#d8#cias OBS'1 Neste tutorial ser adotado o SQLite, mas voc pode optar pelo BM DB2, MySQL, Oracle ou PostgreSQL. OBS'1 Os smbolos "9, ": que precedero os comandos ao longo deste tutorial, representam, respectivamente, o prompt de comando do usurio comum e do root. Para instalar os pacotes, execute os comandos abaixo de acordo com o tipo da distro GNU/Linux. OBS'1 S execute os comandos abaixo se estiver usando o U+u#tu 5es;to6 ou Ser-er 12'0<: $ sudo apt-get install -y python-software-properties $ sudo add-apt-repository -y ppa:webupd8team/java $ sudo apt-get update $ sudo apt-get install -y --force-yes make flex gcc gpp libpq5 libpq-dev snmp libiksemel-dev libcurl4-gnutls-dev vim libssh2-1-dev libssh2-1 libopenipmi-dev libsnmp-dev oracle-java7-installer curl sqlite3 libsqlite3-dev fping 3. Instalando o Zabbix Proxy Agora que as dependncias esto instaladas, instale o Zabbix. Hoje (18/10/2013) a verso mais nova a 2'0'=. Para instal-la preciso baixar e compilar o cdigo fonte seguindo os passos abaixo. Obtenha e descompacte o pacote de instalao do Zabbix. $ wget http://downloads.sourceforge.net/project/zabbix/ZABBX%20Latest %20Stable/2.0.9/zabbix-2.0.9.tar.gz $ tar xzvf zabbix-2.0.9.tar.gz $ sudo chmod -R +x zabbix-2.0.9 Os comandos acima so usados para obter o pacote de instalao do Zabbix, salvar no diretrio atual e descompactar o pacote, criando o diretrio za++i,-2'0'= com os arquivos de instalao. Veja qual o diretrio que voc est, usando o comando 6>d e informe-o no comando "tar xzvf acima. Crie no sistema operacional, o usurio a ser usado pelo Zabbix. $ sudo adduser zabbix * ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", 3'1' 2ria#do o +a#co de dados OBS'1 O banco de dados do Zabbix Proxy no o mesmo banco de dados usado pelo servidor Zabbix. Cada um tem o seu. O Zabbix Proxy usa o banco de dados local para armazenar os dados dos hosts clientes temporariamente quando a conexo com o servidor Zabbix perdida. Execute os comandos abaixo para criar e popular o banco de dados. $ cd zabbix-2.0.9/database/sqlite3/ $ sudo mkdir /var/lib/sqlite3/ $ sudo sqlite3 /var/lib/sqlite3/zabbix.db < schema.sql $ sudo chown -R zabbix:zabbix /var/lib/sqlite3/ 3'2' 2o%6ila#do o *a++i, Pro,. Compile o Zabbix Proxy executando os comandos abaixo. $ cd ../../ $ sudo ./configure --enable-proxy --enable-agent --enable-java --with-sqlite3 --with-net-snmp --with-libcurl=/usr/bin/curl-config --with-ssh2 --with-openipmi $ sudo make install $ cd .. Sobre os paretros de !opilao... ""enable"proxy: 7abilita o Zabbix proxy. ""enable"a#ent: 7abilita o a$ente Zabbix. ""enable"$ava: 7abilita o ;a5a $ate3ay< u1 no5o co1ponente do Zabbix 2.0 usado para 1onitorar aplica8es ;a5a. ""%it&"s'lite3: in&or1a 4ue ser= usado o banco de dados !"ite. ""%it&"net"snp: 7abilita o 1onitora1ento >?P. ""%it&"lib!(rl)*(sr*bin*!(rl"!on+i#: 7abilita o uso da biblioteca curl< usada no 1onitora1ento de aplica8es @eb. Apcional1ente 5oc/ pode in&or1ar a locali2ao do co1ando curlBcon&i$ Cuse o co1ando D%&ereis !(rl"!on+i#, para descobrir o ca1in7oE. ""%it&"ss&-: 7abilita o 1onitora1ento 5ia F. ""%it&"openipi: 7abilita o 1onitora1ento de e4uipa1entos 5ia .P?. C7ttp:GG$oo.$lGAH(uiE. Para con7ecer 1ais op8es de co1pilao< execute o co1ando D.*!on+i#(re ""&elpI dentro do diretJrio de instalao do Zabbix. 3'3' 2o#7i/ura#do o *a++i, Pro,. Os arquivos de configurao do Zabbix 2.0 ficam em /usr/local/etc. Edite o arquivo /usr/local/etc/za++i,?a/e#td'co#7 e configure conforme mostrado abaixo. # ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", PidFile=/tmp/zabbix_agentd.pid LogFile=/tmp/zabbix_agentd.log LogFileSize=2 DebugLevel=3 Server=<P do servidor Proxy> ListenPort=10050 Hostname=informe o nome exato do host, do jeito que aparece no prompt de comandos antes dos smbolos "9 ou ": Timeout=3 O parmetro $o/0ileSize significa o tamanho mximo que o arquivo de log pode ter em mega byte (MB). Edite o arquivo /usr/local/etc/za++i,?6ro,.'co#7 e informe os seguintes dados, como mostra o exemplo abaixo: ProxyMode=0 Server=<P Pblico do servidor Zabbix> Hostname=informe o nome exato do proxy Zabbix, do jeito que aparece no prompt de comandos antes dos smbolos "9 ou": LogFile=/tmp/zabbix_proxy.log LogFileSize=2 DebugLevel=3 PidFile=/tmp/zabbix_proxy.pid DBName=/var/lib/sqlite3/zabbix.db ProxyOfflineBuffer=2 DataSenderFrequency=1 StartPMPollers=1 Timeout=3 FpingLocation=/usr/bin/fping Como neste tutorial est sendo usado o SQLite, os parmetros 5BHost@ 5BUser e 5BPass>ord so ignorados. Basta apenas informar a localizao do banco de dados SQLite em 5BAa%e. O SQLite tem a vantagem de ser um arquivo simples que pode ser recriado na inicializao do Zabbix Proxy, caso seja removido. sto adequado ao uso do Proxy, j que todos os dados so armazenados temporariamente. O parmetro $o/0ileSize significa o tamanho mximo que o arquivo de log pode ter em mega byte (MB). O parmetro Pro,.O77li#eBu77er significa que o Zabbix Proxy vai guardar os dados dos hosts clientes no banco de dados local por A horas, caso a conexo com o servidor Zabbix seja perdida. O parmetro 5ataSe#der0reBue#c. significa o intervalo em segundos que o proxy ficar enviando os dados coletados ao servidor Zabbix. O parmetro Start(P3(Pollers s precisa ser configurado se o Zabbix proxy for compilado com a opo >itC-o6e#i6%i' OBS'1 Se o servidor Zabbix e/ou Proxy estiverem atrs de um firewall que faz uso do NAT, preciso configurar o redirecionamento de pacotes nas portas 10050 e 10051/TCP. ' ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", 3'<' Scri6ts de i#icializa)o do *a++i, Coloque o Zabbix Proxy para iniciar automaticamente, no boot do sistema operacional, criando os scripts abaixo. ====> Crie arquivo /etc/i#it'd/za++i,-6ro,. e adicione o contedo abaixo. #!/bin/sh # # Zabbix daemon start/stop script. # # Written by Alexei Vladishev <alexei.vladishev@zabbix.com>. NAME=zabbix_proxy PATH=/bin:/usr/bin:/sbin:/usr/sbin:/home/zabbix/bin DAEMON=/usr/local/sbin/${NAME} DESC="Zabbix server daemon" PD=/tmp/$NAME.pid test -f $DAEMON || exit 0 set -e case "$1" in start) echo "Starting $DESC: $NAME" start-stop-daemon --oknodo --start --pidfile $PD \ --exec $DAEMON ;; stop) echo "Stopping $DESC: $NAME" start-stop-daemon --oknodo --stop --pidfile $PD \ --exec $DAEMON ;; restart|force-reload) $0 stop $0 start ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0 ====> Crie o arquivo /etc/i#it'd/za++i,-a/e#td e adicione o contedo abaixo. #!/bin/sh + ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", # # Zabbix agent start/stop script. # # Written by Alexei Vladishev <alexei.vladishev@zabbix.com>. NAME=zabbix_agentd PATH=/bin:/usr/bin:/sbin:/usr/sbin:/home/zabbix/bin DAEMON=/usr/local/sbin/${NAME} DESC="Zabbix agent daemon" PD=/tmp/$NAME.pid test -f $DAEMON || exit 0 set -e case "$1" in start) echo "Starting $DESC: $NAME" start-stop-daemon --oknodo --start --pidfile $PD \ --exec $DAEMON ;; stop) echo "Stopping $DESC: $NAME" start-stop-daemon --oknodo --stop --pidfile $PD \ --exec $DAEMON ;; restart|force-reload) $0 stop $0 start ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0 Torne os arquivos executveis com o comando abaixo. $ sudo chmod +x /etc/init.d/zabbix-proxy /etc/init.d/zabbix-agentd Em seguida, execute os scripts $ sudo /etc/init.d/zabbix-proxy start $ sudo /etc/init.d/zabbix-agentd start Habilite os scripts para serem executados quando o computador for ligado. 10 ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", $ sudo update-rc.d -f zabbix-proxy defaults $ sudo update-rc.d -f zabbix-agentd defaults 3'D' 2adastra#do o *a++i, Pro,. #a i#ter7ace >e+ do *a++i, Acesse o menu Ad%i#istra)o EAd%i#istratio#F > 35 E53F e, em seguida, clique no boto 2riar Pro,. E2reate Pro,.F. Cadastre o servidor Proxy como mostrado na Figura 2. 0i/ura 21 2ria#do u% 6ro,.' OBS'1 No campo Pro,. #a%e deve ser informado o nome do servidor proxy conforme configurado no parmetro Host#a%e do arquivo /usr/local/etc/za++i,?6ro,.'co#7. Se voc quiser monitorar a mquina em que est o Zabbix Proxy, acesse a interface web do servidor Zabbix. Acesse o menu 2o#7i/ura)o E2o#7i/uratio#F > Hosts e, em seguida, clique no boto 2riar Host E2reate HostF. Cadastre o servidor Proxy como mostrado nas Figura 3 e 4. 11 ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", 0i/ura 31 2adastra#do o ser-idor Pro,. 0i/ura <1 2adastra#do o te%6late do ser-idor Pro,. OBS'1 No campo Host Aa%e deve ser informado o nome do servidor proxy conforme configurado no parmetro Host#a%e do arquivo /usr/local/etc/za++i,?a/e#td'co#7. 3'G' 2o#7i/ura#do o *a++i, Pro,. #o arBui-o za++i,?a/e#td'co#7 dos Costs clie#tes No host cliente que j possui o agente instalado edite o arquivo /usr/local/etc/za++i,?a/e#td'co#7 e configure conforme mostrado abaixo. PidFile=/tmp/zabbix_agentd.pid LogFile=/tmp/zabbix_agentd.log 12 ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", DebugLevel=3 Server=<P do servidor Proxy> ListenPort=10050 Hostname=informe o nome exato do host, do jeito que aparece no prompt de comandos antes dos smbolos "9 ou ": Timeout=3 Em seguida reinicie o processo do agente. No Ubuntu/Debian isso feito com o comando abaixo. $ sudo /etc/init.d/zabbix-agentd restart Se voc ainda no instalou o agente Zabbix no host cliente, acesse a pgina http://zabbixbrasil.org/?page_id=7 para obter um tutorial de instalao e, em seguida, realize as configuraes mostradas nesta seo. 3'H' 2o#7i/ura#do os Costs clie#tes 6ara sere% %o#itorados 6elo *a++i, Pro,. Acesse a interface web do servidor Zabbix. Acesse o menu 2o#7i/ura)o E2o#7i/uratio#F > Hosts e, em seguida, clique no boto 2riar Host E2reate HostF. Cadastre o host cliente como mostrado nas Figura 5 e 6. 0i/ura D1 2adastra#do o Cost clie#te' 1% ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", 0i/ura D1 2adastra#do o te%6late do Cost clie#te' Como mostrado na Figura 5, no campo 3o#itorado 6or Pro,. E3o#itored +. 6ro,.F selecione o proxy recm-criado. Ao final, acesso o menu Ad%i#istra)o EAd%i#istratio#F > 35 E53F para visualizar detalhes do funcionamento do Zabbix Proxy, conforme mostrado na Figura 7. 0i/ura H1 5etalCes do %o#itora%e#to -ia 6ro,.' <' 2o#sidera!es 7i#ais Neste tutorial foi mostrada a instalao do componente Zabbix Proxy 2.0.9 no Ubuntu 12.04 LTS (Long Time Suport). Na pgina http://zabbixbrasil.org/?page_id=7 voc pode encontrar outros tutoriais que mostram a instalao dos componentes Zabbix Agent e Zabbix Server, alm de mostrar como usar a interface Web do Zabbix para monitorar alguns tipos de equipamentos. Abrao e que Deus o(a) abenoe. Leia o Salmo 55:22. Jesus bom, te ama e quer salvar tua alma. :-) D' 4e7er8#cias [1] DEO, Andr. (%6le%e#ta#do *a++i, 2', Pro,. e% A%+ie#te 2e#tOS. Disponvel em: http://zabbixbrasil.org/wiki/tiki-index.php? page=mplementando+Zabbix+2.x+Proxy+em+Ambiente+CentOS Acessado em: 18 de outubro de 2013. 1( ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ", [2] BERNADES, Geisel. 2o#7i/ura#do *a++i, Pro,.. Disponvel em: http://gesielbernardes.blogspot.com.br/2012/03/configurando-zabbix-proxy.html Acessado em: 18 de outubro de 2013. [3] BERNADES, Geisel. (%6le%e#ta#do *a++i, Pro,.' Disponvel em: http://www.zabbixbrasil.org/wiki/tiki-index.php? page=mplementando+Zabbix+Proxy Acessado em: 18 de outubro de 2013. [4] OLUPS, Rihards. Usi#/ Pro,ies to 3o#itor 4e%ote $ocatio#s >itC *a++i, 1'I' Disponvel em: http://www.packtpub.com/article/proxies-monitor-remote- locations-zabbix-1.8 Acessado em: 18 de outubro de 2013. [5] *a++i, Pro,.' Disponvel em: http://www.zabbix.com/documentation/1.8/manual/processes/zabbix_proxy Acessado em: 18 de outubro de 2013. [6] *a++i, Pro,. o# 5e+ia# usi#/ sBlite' Disponvel em: http://www.zabbix.com/wiki/howto/install/debian/zabbix_proxy_on_debian_sqlite Acessado em: 18 de outubro de 2013. 1) ,utorial de instalao do Zabbix Proxy 2.0.+ no -buntu 12.0( ",