Monitoramento fácil com Zabbix

Post atualizado para a versão mais recente do zabbix 1.8.x

Zabbix é uma poderosa ferramenta para monitoramento de servidores e dispositivos de rede.

Além de ser poderosa e flexível, o Zabbix também é uma ferramenta com uma rápida curva de aprendizagem. Uma de suas grandes vantagens é que a sua gestão é toda através de uma interface via Web e a sua configuração permanece quase que inteiramente dentro do banco de dados escolhido.

O grande foco desta ferramenta, é o monitoramento através de agentes, ou seja, um “coletor” de informações é instalado em um servidor a ser monitorado, e o Zabbix “conversa” diretamente com este coletor para receber informações como processos, espaço em disco, memória, rede, etc.. Entretanto, o Zabbix também permite a coleta de informações através de outras formas ex:
- SNMP
- IMPI
- Teste de serviços (http, smtp, etc..)

Este tutorial foi dividido em 3 partes, as duas primeiras, eu escrevi a 2 anos atrás, no meu primeiro blog, entretanto as datas dos artigos foram perdidas na minha migração do WordPress para o B2Evolution.

A terceira e última parte, eu comecei a escrever no dia 15 deste mês e devido a problemas pessoais, só consegui terminar de escreve-la hoje.

Parte I – Introdução
Parte II – Instalando e Rodando o Zabbix
Parte III – Instalando agentes e administrando o Zabbix

Para qualquer dúvida, comentário ou sugestão, favor usar os comentários deste post.

71 Responses to Monitoramento fácil com Zabbix

  • Pingback: Parte III – Instalando agentes e administrando o Zabbix @ Linux & Asterisk

  • Pingback: Zabbix Parte I – Introdução @ Linux & Asterisk

  • Pingback: Parte II – Instalando e rodando o Zabbix @ Linux & Asterisk

  • Henrique says:

    Segui o tutorial completo e finalizei a instalação, startei os serviços, tudo certo.
    Quando vou acessar a interface web pelo servidor ( elinks ) , digito o endereço http://meu.ip/zabbix e ele me mostra a página do Zabbix, quando digito http://meuip/ , ele me mostra a página do apache. Até aí tudo ok.
    Porém, vim para minha máquina (windows) , da mesma rede, abri o browser e digitei os dois endereços citados acima, nenhum dos dois respondeu..

    Alguém pode me ajudar ?^!

    • As duas máquinas estão na mesma rede?
      Verifique se não existe um firewall ativo no servidor onde foi instalado o Zabbix.
      Apenas como teste digite “iptables -I INPUT -p tcp –dport 80 -j ACCEPT”
      Irá liberar a porta 80 (http) do servidor zabbix.

      Para remover a página default do apache, delete o arquivo /etc/httpd/conf.d/welcome.conf (se não me engano é esse o nome) e reinicie o processo do apache.

    • Henrique says:

      Eduardo,

      As duas máquinas estão na mesma rede sim.
      Digitando o comando que você me informou, da porta 80, liberou e consegui acessar aqui da máquina Windows.
      Caiu já na interface do zabbix com os passos de 1 a 7.

      Porém, no topo da página aparecem as seguintes mensagens:

      * Timezone for PHP is not set. Please set “date.timezone” option in php.ini.

      [ERROR: Unknown database type.]

      O que pode ser ?!

    • Para ajustar o timezone do PHP, edite o arquivo /etc/php.ini
      Procure por date.timezone
      Deve ficar mais ou menos assim:
      date.timezone = "America/Sao_paulo"
      Quanto ao “ERROR: Unknown database type” acredito que o seu apache não esteja com o suporte ao php.

      Instale o pacote php-mysql com o comando:
      yum install php-mysql

      Faça o restart do apache e tente novamente ;)

  • Henrique says:

    Eduardo, funcionou, completei os 7 passos de instalação e cai na tela principal.
    Fui na aba Configuration , fui em Hosts e adicionei 2 hosts pra testar.
    Feito isso , ainda na aba Configuration, fui em Graphs e criei gráfico de 2 serviços que eu queria monitorar.
    Porém, quando vou pra aba Monitoring, pra ver se me aparece os gráficos, não aparece nada e ainda na mesma aba, em um combobox a direita, onde mostra o grupo e os hosts, não aparece os hosts que eu cadastrei.

    Alguém pode me informar se o que eu fiz está correto, ou como faço ?!

    • Henrique,

      Se for em Monitoring\Overview, você consegue visualizar os servidores / alarmes configurados?

      Detalhe importante é que os gráficos não aparecem no monitoring\overview você pode no entanto, montar uma tela customizada utilizando “screens” exibindo os gráficos desejados e algumas informações adicionais.
      Estas são atualizadas em tempo real.

  • Henrique says:

    Segue abaixo o link do screen que mostra o que me aparece na aba Monitoring/Overview:

    http://img33.imageshack.us/i/screenmmp.jpg/

    Está certo ?!
    Se sim, como eu faço pra configurar, caso algum serviço pare, pra eu receber um e-mail de alerta ?!

    Obrigado

    • Olá Henrique,

      Não está correto…. no lugar do “-” deveria estar aparecendo valores coletados pelos agentes.

      Verifique em reports\Status of zabbix se o campo “ZABBIX server is running” possui o value “yes”

      Caso positivo, clique em Configuration\Hosts, e verifique ao lado dos nomes dos servidores nas colunas “avilability” e error tem alguma informação.

      Mesmo assim se não encontrar nenhum erro, verifique o arquivo de log do zabbix.

      Para cadastrar alertas por email, consulte a terceira parte do tutorial.

      []‘s

  • Henrique says:

    Hum..
    Em “ZABBIX server is running” meu value aparece “No”.
    O que devo alterar ?!

    Segue o screen:

    http://img18.imageshack.us/i/screen1dyx.jpg/

    • O processo “zabbix_server” tem que estar rodando!

      logue por ssh no servidor e digite “zabbix_server” para iniciar o processo!
      Caso contrário ele não irá coletar os dados…

  • Henrique says:

    Digitei “zabbix_server” , zabbix_server start , e continua como “No” o value…

    É só esse comando ?!

  • Henriuqe says:

    Em zabbix server, está mostrando o valor “No” , como se não estivesse startado.

    Qual comando eu dou pra startar e passar pra Value YES ?!

  • Henrique says:

    Eduardo, de um ps aux , e está rodando, tanto o server quanto o agentd.
    Como prova disso, recebi dois e-mails de alerta que eu fiz pra testar.

    Porém, lá em Repports/Status of Zabbix, o “value” continua “NO”.

    O que eu faço ?!

    • Henrique,

      Se no status do zabbix ele afirma que o server não está rodando, significa que existe algum problema (se o processo aparece no ps aux, provavelmente o problema é comunicação do server com o banco de dados). Verifique suas configurações em /etc/zabbix/zabbix_server.conf e verifique os logs em busca de mensagens de erro.

      []‘s

  • Henrique says:

    Bom, estou na parte de alertas, e estou com uma dúvida.
    Adicionei apenas um host, minha propria máquina para fazer um monitoramento de espaço do HD , para testar os alertas.
    Pois bem, fui na aba TRIGGERS, e criei:

    Name: Low free disk space on {Henrique} volume c:
    Expression: {Henrique:vfs.fs.size[c:,free].last(0)}<30082396160…

    Depois fui em ACTIONS e criei:

    Event Source: Trigger
    Default Subject:
    {Henrique:vfs.fs.size[c:,free].last(0)}<30082396160
    Trigger severity = information
    Send message to User “Admin”.

    OBS: 30082396160 bytes, é o número que tem livre no meu disco hoje, coloquei esse valor, para ativar o alerta direto e assim testar:

    Fui em Administration/Media Types e criei:
    SMTP server: ‘ara1ws01587′, SMTP helo: ‘ara1ws01587′, SMTP email: ‘henrique.barbieri@jbtc.com’..

    Fui na aba Monitoring , Trigger e aparece o seguinte:
    Average PROBLEM 29 Jul 04:48:28 Server ara1ws01587 is unreachable

    Depois fui na aba, Configuration, Hosts e mostra o seguinte:
    Templates: Template_Standalone, Template_Windows
    Satus: Monitored
    Availability: Not available
    Error: Get value from agent failed: Cannot connect to “ara1ws01587″

    O que está errado ?!

    • Henrique,

      Desculpe a demora, mas se ainda não solucionou o problema, verifique os itens:

      - Se a máquina onde instalou o agent possui algum firewall habilitado

      - Logue por ssh no servidor de monitoramento e faça um telnet no ip do computador a ser monitorado na porta 10050
      ex: <code># telnet localhost 10050
      Trying 127.0.0.1…
      Connected to localhost.localdomain (127.0.0.1).
      Escape character is ‘^]’.
      ^]
      telnet> quit
      Connection closed.</code>

      Deveria ver algo mais ou menos assim.

      - Do servidor de monitoramento, você consegue resolver o nome desta máquina?
      # ping ara1ws01587

      - Experimente monitorar por ip, na configuração do host, adicione o endereço IP do cliente e troque o parâmetro “Connect to” de DNS name para Ipaddress

      - Verifique no arquivo de configuração do agentd (do computador que vai ser monitorado) se o parâmetro Server= corresponde ao endereço IP do servidor de monitoramento.

      Correndo esta checklist, você tem que conseguir realizar o monitoramento :P

      []‘s

  • Henrique says:

    Sim, pinga normal..
    Fiz o testezinho do telnet, e deu exatamente como na sua mensagem.

    Agora resta apenas a configuração do agentd.
    Que arquivo é esse ?! Está dentro da minha máquina windows ?!

  • Henrique says:

    PS: – Verifique no arquivo de configuração do agentd (do computador que vai ser monitorado) se o parâmetro Server= corresponde ao endereço IP do servidor de monitoramento.

    Todos os servidores que eu preciso monitorar, aqui da empresa, são Windows Server , a única máquina linux, é onde estou rodando o zabbix mesmo.

    No caso de servidor windows, eu tenho que instalar esse agente ?!

    • Dependendo do tipo de monitoramento que você vai realizar, se quer só saber se a porta X está aberta e se o servidor responde a ping, você não precisa instalar agente, pode usar o template stand alone por exemplo.

      Se quer um monitoramento mais detalhado, com uso de disco, memória, processos rodando, entre outras coisas, você deve instalar o agente. (que é o recomendável). Verifique na terceira parte do tutorial onde eu explico isso.

      []‘s

  • Henrique says:

    É, o monitoramento será mais detalhado sim, dessa forma, fui instalar o agent, seguindo o vosso tutorial.

    Deu o seguinte erro:

    Não foi possível iniciar o serviço ZABBIX AGENT em Computador Local.

    Erro 1067: O processo terminou de forma inesperada

    Isso é problema de permissão ?!

    • Você precisa permissões de administrador para instalar o zabbix_agentd. Revise os passos de instalação do agentd no windows, acredito que tenhas pulado algum passo.

      []‘s

  • Henrique says:

    Certo, consegui, startei o serviço.

    Adicionei minha máquina pra monitorar , Template_Windows, mas agora ele está me dando:

    Availability: Unknown.

    O que pode ser ?!

    • Henrique,

      De acordo com as suas mensagens enviadas anteriormente o seu zabbix_server não está rodando. Enquanto ele não estiver rodando, nenhum dado será coletado e o status do item monitorado permanecerá sendo unknow.

      Você precisa resolver este problema primeiro.

  • Henrique says:

    ?!

  • wadner says:

    Muito bom o tutorial, comigo o erro está ao tentar enviar email. Usarei ele na empresa onde trabalho, mas preciso que seja enviado, alem do jabber, via email interno. Quando é emitido o alarme o Zabbix informa o erro: “no welcome message 220* from SMTP Server[]“.

    Nosso servidor aqui é Exchange 2003

    • Wadner,

      Aparentemente o seu servidor de monitoramento não está conseguindo conectar ao servidor de emails. A partir do terminal, tente executar um “telnet smtp.suaempresa.com.br 25″ apenas para verificar se existe conectividade entre os servidores. Também verifique as suas configurações do zabbix em Administration\Media Types\email estão corretas.

      Uma outra sugestão seria de instalar o postfix no servidor de monitoramento e configura-lo para fazer relay das mensagens no seu exchange. E quando este postfix estiver funcionando, configurar o zabbix para utiliza-lo.

      []‘s

  • Kaio Igor says:

    olá ..

    na tela de configuração do zabbix ..
    onde ele checa os pré requisitos,
    ta dando um erro no meu date.timezone do php.

    ele ta configurado para Etc/GMT+3
    daí então esta dando falha,
    alguem pode me ajudar ?

    grato !
    Att.

  • Kaio Igor says:

    ok Eduardo, essa parte aí eu consegui, tinha sido uma falta de atenção minha . obrigado !
    só que agora eu to com um problema aqui que ta me fazendo peder o sono, pois eu preciso do meu zabbix rodando para quinta feira, estou usando duas maquinas virtuais, e ambas tão dando erros, já naquela parte que precede a iterface grafica, na tela de bem vindo e tal ..

    e ambas tão dando erro no 7. install ..
    o erro de uma é o seguinte :
    Configuration file: Fail

    Please install configuration file manualy.

    By pressing “Save configuration file” button download configuration file and place them into the
    “/var/www/zabbix/php/conf/zabbix.conf.php”

    Press the “Retry” button
    ____________________________________________________
    e o da outra, tambem no install, é o seguinte:

    ZABBIX is temporary unavailable

    aí la em cima, na tela.. tem o seguinte ..
    include (/var/www/zabbix/php/conf/zabbix.conf.php) [function.include]: failed to open stream: No such file or directory[/var/www/zabbix/php/include/config.inc.php:120] -> isso é uma linha
    ___________________________________________________

    include() [function.include]: Failed opening ‘/var/www/zabbix/php/conf/zabbix.conf.php’ for inclusion (include_path=.:/usr/share/php:/usr/share/pear’) [/var/www/zabbix/php/include/config.inc.php:120] -> outra linha

    essas duas linhas ficam na canto superior da tela.
    complicado?

    alguem pode me ajudar??

    grato.
    Att

    • Olá Kaio,

      Desculpe a demora em responder mas estou viajando pelo interior de Moçambique e não consegui acompanhar o blog. Espero que você tenha conseguido solucionar o problema, caso contrário, ai vai a dica:

      O seu apache não tem permissões para alterar os arquivos da web interface do zabbix, você pode utilizar o “chmod” para dar permissões de escrita para os arquivos ou você também pode clicar em “save file” para baixar o arquivo de configuração e coloca-lo manualmente em /var/www/zabbix/php/conf/

  • Kaio Igor says:

    se o print da tela ajudar..
    no problema acima,
    posta o email aqui, que eu o mando .

    ficarei mt grato a quem me ajudar.
    Att

  • Leandro Moraes says:

    Eduardo, estou testando o zabbix na minha empresa, porém o server está com o status “No running”, quando digito o comando para iniciar o serviço do server apresenta a mensagem de OK, porém se digito o comando de status do server aparece que o server está parado, não consigo fazer funcionar o serviço de jeito nenhum. Me ajuda??

  • Gurgel says:

    Eduardo, instalei o Zabbix e está funcionando certinho, porem eu gostaria de saber como eu faço um monitoramento passivo? Ou seja, o zabbix ficar recebendo as informações.

    Gurgel

    • Gurgel,

      O termo correto é “Active Checks”.
      No arquivo de configuração do agentd:
      Configure o campo Hostname e substitua:
      #DisableActive=1
      por:
      DisableActive=0

      Já no Zabbix, você deve criar/editar/alterar o “Type” de um item monitorado de Zabbix Agent para Zabbix Agent (Active).

      Apesar de reduzir a carga do servidor de monitoramento, o Active check pode ser um pouco mais trabalhoso de manter. Observe que se um item deixar de ser atualizado, nenhum alarme irá disparar. Recomendo deixar alguns testes no modo normal ex:

      “Server {HOSTNAME} is unreachable”
      “Zabbix_agentd is not running on {HOSTNAME}”

      []‘s

  • pecelo says:

    Olá, estou montando para estudo a seguinte configuração: tenho 5 maquinas , 3 na matriz e 2 na filial
    Matriz win2k-AD, estação XP e CentOS5.4-ZabbixServer(gatway) rede x classe c.
    Filial win2k3-isaserver(gateway), CentOS5.4-squid rede y classe c.
    GW-matrix esta com cross no GW-filial se pingam normal, mas o zabbix não o monitora a filial, firewall liberando a porta 161 udp. snmp ativado e monitorando pelo agentd.

    alguma dica?
    Abraços.

  • Thiago says:

    Boa tarde Eduardo , tenho o zabbix 1.8.2 instalado e já configurei template, ítens e triggers . Mas estou notando que após cadastrar 10 hosts , ele esta muito lento para abrir o monitoramento – eventos – triggers – dados recentes , qualquer um dos 3 . Load Average da máquina fica alto

    Têm alguma sugestão do que possa estar acontecendo isto ?

    • Olá Thiago,

      Em que tipo de máquina você está rodando o zabbix? Virtual ou real?
      Quais as specs do hardware? Tem algum outro serviço rodando?
      Mande uma screenshot da tela “Reports\Status of Zabbix” (hospede no imageshack mas tenha o cuidado de remover a url e outros dados pessoais).

      []‘s

      • Ronaldo says:

        Olá Eduardo.

        Meu amigo veja se você consegue me dar uma luz neste problema: Eu instalei o Zabbix normalmente até o passo 6, mas infelizmente quando ele vai iniciar o passo 7 me sai a seguintes mensagem:

        Configuration file: Fail

        Please install configuration file manually, or fix permissions on conf directory.

        Press “Save configuration file” button, download configuration file and save it as “/var/www/zabbix/public_html/conf/zabbix.conf.php”

        Meu amigo, o que pode estar ocorrendo ? Como faço para concluir a instalação do sistema ? Estou procurando algo na internet mas está difícil encontrar uma resposta.

        Agradeço antecipadamente por sua ajuda e atenção.
        Ronaldo.

        • Ronaldo,

          Você provavelmente está com problemas de permissão de escrita no seu documment root.
          Verifique com qual user que você está rodando o httpd (provavelmente apache) e verifique se o proprietário de /var/www/zabbix/public_html é o mesmo user.

          Para alterar as configurações você pode executar:
          chown apache:apache /var/www/zabbix/public_html -R

          []‘s

    • Jácio says:

      Já tentou fazer a seguinte alteração:
      /etc/zabbix/zabbix_server.conf
      StartPollers=15
      Pode resolver parte do problema.

  • Cleuson says:

    Olá, consegui instalar o zabbix 1.8.3, mas quando vou em relatórios aparece “zabbix is running” “NO”.
    Já fui no DBPassword e coloquei /etc/php.ini DBPassword=zabbix.
    nada ainda! alguém pode me dar uma luz?

    Obrigado.

  • Pingback: Monitoramento fácil com Zabbix

  • Carlos Lima says:

    Caro Eduardo,
    Procurei muito por um material que pudesse me ajudar na implantação do Zabbix por algum tempo e quando achei o seu fiquei surpreso com tamanha qualidade e detalhes nas informações que não tinha visto. Parabens !!!

  • Boa tarde Chará, seguinte, preciso tirar algumas dúvidas:

    1 – Tenho que monitorar links em switsh que não tem nos templates, como faço, ja tentei com os templates e não funcionou.
    2 – Tenho que configurar a os mapas e não estou conseguindo incluir imagens.
    3 – Tenho que configurar agentes em maquinas com Freebsd como ESX, XEN, Freenas e Endian Firewall não achei tutorial.

    Agradeço muito se puder me auxiliar, li sobre suas respostas e antes de tudo quero te dar os parabéns, nem todo mundo dedica parte do tempo para auxiliar os outros.

    Abraço

    • Fala chará, desculpe a demora, mas ai vai:

      1- Tudo depende dos equipamentos que você possui, vai dar um pouco de trabalho mas você pode encontrar mais informações diretamente no forum do zabbix.
      2- Você deve fazer o upload das imagens antes de criar os mapas.
      3- Existem várias alternativas para cada um dos problemas citados.
      3.a Freebsd: se eu não me engano, o zabbix-agent encontra-se no ports, caso contrário você pode tentar compilar ele manualmente
      3.b- esx – http://www.zabbix.com/forum/showthread.php?p=65613
      3.c- freenas – Você pode tentar monitorar via snmp ou tentar instalar o agent (ver freebsd :P )
      3.d – Você pode tentar instalar o agente no endian (pode ser um pouco complicado) ou monitorar via snmp

      []‘s

  • Julian Lima Nascimento says:

    Eduardo, estou com um problemão. Instalei o Zabbix Server, adicionei duas máquinas clientes, sendo que elas estão sendo monitoradas muito bem… Mas realizei testes de desligar as máquinas clientes e não me notificou por e-mail.

    Obs.: Estou utilizando o sendmail, está configurado para envio de e-mail. Se digitar o comando: echo “Isto é um e-mail de teste” | mail -s “Assunto Teste” consigo receber normalmente.

    Obrigado.

    • Eduardo Silva says:

      Julian, monitorar um servidor é o primeiro passo, depois você precisa cadastrar “Actions” para informar ao zabbix, o que fazer quando um problema surgir. No caso, enviar emails.

      []‘s

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*


*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>