Instalando zabbix-agent no XenServer 7.


O monitoramento de performance e incidentes em tempo real a partir de um ambiente de TI corporativo é algo imprescindível nos dias de hoje, precisamos cada vez mais obter controle sobre nossos ativos, mensurando cargas e escalonando soluções. Neste artigo será demostrado a implementação do agente de monitoramento de serviços “Zabbix” em um host XenServer 7.

CONSIDERAÇÕES

Vamos levar em consideração que já possua um servidor com o serviço zabbix instalado e que possua conhecimentos de Linux necessários para realizar os procedimentos deste artigo.

1) ADICIONANDO REPOSITÓRIO.

Antes de iniciarmos o download de nosso agente zabbix, precisamos habilitar alguns repositórios extras. O XenServer é baseado no CentOS, e por padrão, bloqueia todos os repositórios do sistema. Podemos observar através da ilustração abaixo.

Vamos realizar o download e a instalação dos nossos novos repositórios e configura-los conforme o padrão adotado pelo XenServer. Realize o download e a instalação dos repositórios conforme ilustrado abaixo.

mkdir ~/downloads/
cd ~/downloads
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
rpm -Uvh https://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

Após a instalação, repare que foram criados alguns novos arquivos referente aos repositórios no diretório padrão “/etc/yum.repos.d“.  Execute o comando ilustrado abaixo para analisarmos novamente nossa lista de repositórios.

yum repolist all

Repare que antes de mostrar a lista contendo os novos repositórios, o yum realizará a atualização da lista de conteúdo. Logo após exibirá uma tela semelhante a ilustrada abaixo.

Nota: A atualização da lista de conteúdo de repositórios também pode ser atualizada através do comando informado abaixo.

yum makecache

Com nossos repositórios instalados, vamos desabilita-los conforme o padrão adotado pelo XenServer. Para isso, vamos utilizar o comando “sed”. Execute os comandos conforme ilustrado abaixo.

sed -i -e "s/enabled=1/enabled=0/" /etc/yum.repos.d/epel.repo
sed -i -e "s/enabled=1/enabled=0/" /etc/yum.repos.d/remi.repo
sed -i -e "s/enabled=1/enabled=0/" /etc/yum.repos.d/remi-safe.repo
sed -i -e "s/enabled=1/enabled=0/" /etc/yum.repos.d/zabbix.repo

Pronto, nossos repositórios já estão instalados e desabilitados por padrão. Liste novamente os diretórios e vamos verificar como ficou.

yum repolist all

Nota: Repare que todos os repositórios estão desabilitados por padrão.

Precisamos agora atualizar nossa repositório principal chamada “base”, vamos aproveitar e atualizar também nossos novos repositórios. Repare que com os repositórios desabilitados precisamos passar para o comando “yum” o argumento “enablerepo”, conforme ilustrado no comando abaixo.

yum --enablerepo=epel --enablerepo=remi --enablerepo=base --enablerepo=zabbix makecache

Após executar o comando foi demostrado a seguinte mensagem na tela:

Essa mensagem é informada porque não foi possível encontrar o link de atualização informado no repositório do base padrão do XenServer. Para resolver este problema, precisamos editar o arquivo e mudar o link.

Acesse o arquivo “/etc/yum.repos.d/CentOS-Base.repo” e substitua a variável “$releasever” da linha “baseurl=” pela última versão de atualização do CentOS encontrada no endereço “http://mirror.centos.org/centos/“. Também descomente a linha, e comente a linha que começa com “mirrorlist”.

Para facilitar a alteração podemos novamente utilizar o comando “sed”. Execute o comando conforme ilustrado abaixo.

cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bkp
sed -i -e '/#baseurl/ s/[$]releasever/7.3.1611/' -e 's/#baseurl/baseurl/' -e 's/mirrorlist/#mirrorlist/' /etc/yum.repos.d/CentOS-Base.repo

Nota: No momento da elaboração deste artigo a versão utilizada é a “7.3.1611”.

Pronto, agora já podemos atualizar nosso repositório. Execute novamente o comando ilustrado abaixo.

yum --enablerepo=epel --enablerepo=remi --enablerepo=base --enablerepo=zabbix makecache

Se tudo correr bem é possível visualizar uma tela parecida com a ilustrada abaixo.

2) INSTALANDO O AGENTE ZABBIX

Vamos então realizar a instalação do nosso agente zabbix. Para isso, execute o comando conforme ilustrado abaixo.

yum --enablerepo=epel --enablerepo=remi --enablerepo=base --enablerepo=zabbix install zabbix-agent

3) LIBERANDO PORTA DE ACESSO

Para que nosso agente zabbix funcione corretamente precisamos liberar a porta 10050 no firewall do XenServer para permitir a conexão do agente. Edite o arquivo /etc/sysconfig/iptables e adicione as informações conforme ilustrado abaixo.

# Zabbix-Agent
-A RH-Firewall-1-INPUT -p tcp --dport 10050 -j ACCEPT

4) CONFIGURANDO AGENTE ZABBIX

Precisamos agora configurar nosso agente, devemos informar qual é o endereço de nosso servidor de serviços Zabbix. Para isso, acesse o arquivo “/etc/zabbix/zabbix_agentd.conf” e realize as alterações conforme ilustrado abaixo.

Server=ENDEREÇO_IP_SERVIDOR_ZABBIX
ServerActive=ENDEREÇO_IP_SERVIDOR_ZABBIX
Hostname=HOSTNOME_DO_SERVIDOR

5) REINICIANDO SERVIÇOS

Agora que nosso agente zabbix está instalado e configurado, precisamos reinicializar os serviços para que nossas alterações surtam efeito. Para isso, realize o procedimento conforme ilustrado abaixo.

systemctl restart iptables
systemctl start zabbix-agent

Adicione também o agente zabbix para iniciar junto com o sistema em caso de reinicialização

systemctl enable zabbix-agent

Pronto, nosso agente zabbix está instalado e configurado.

CONCLUSÃO

Neste artigo demostrando de maneira simples e objetiva a configuração de um agente de monitoramento do serviço Zabbix em um host XenServer 7.

Se você gostou deste post e através dele pude lhe ajudar, o que acha de aproximarmos nosso contato? Siga meu blog e me adicione no Linkedin, aproveite para classificar algumas das minhas competências/recomendações, este simples gesto faz toda a diferença.

Rafael Oliveira
SysAdmin

 

23 comentários sobre “Instalando zabbix-agent no XenServer 7.

  1. Douglas Moraes 3 de maio de 2018 / 3:17 pm

    No meu caso o Zabbix não consegue encontrar o servidor que foi instalado o agent

    Curtir

    • Rafael Oliveira 3 de maio de 2018 / 3:55 pm

      Fala Douglas blz?

      Seguinte, são duas coisas:

      1) Seu servidor zabbix esta ativo e funcional?
      2) Realizou o cadastro do host no servidor zabbix apontando para o ip do seu servidor que pretende monitorar?
      3) Reforce os passos, principalmente o passo 4, verifique se configurou corretamente.
      4) Também é necessário verificar se está conseguindo enxergar ambas as máquinas na rede. 😉

      Vai por eliminação para encontrar o problema, não tem erro não. Qualquer coisa só postar aqui.

      Abr.

      Curtir

      • Douglas Moraes 12 de maio de 2018 / 11:18 am

        Então, tudo funcional, se enxergam e nada de funcionar.

        Curtir

          • Douglas Moraes 16 de maio de 2018 / 11:18 am

            Sim, fiz tudo e fica vermelho o icone ZBX

            Curtir

          • Rafael Oliveira 16 de maio de 2018 / 11:42 am

            Esse sintoma está relacionado a falta de comunicação entre o agente Zabbix e o Servidor Zabbix. Da uma olhada no arquivo de configuração “/etc/zabbix/zabbix_agentd.conf” localizado no seu Xen que deseja monitorar. Verifique se as opções “ServerActive” = (Aponta para o IP do seu Servidor Zabbix) e “Hostname” = (Nome do seu XenServer que esta tentando monitorar), estão corretamente configuradas. Após isso restart o agente Zabbix.

            Att,

            Curtir

          • Douglas Moraes 16 de maio de 2018 / 1:28 pm

            Nada, já estou quase desistindo rs

            Curtir

  2. Douglas Moraes 28 de maio de 2018 / 8:46 am

    Rafael, não consegui
    Sera que pode ser rede diferente
    Minha rede é /16
    por exemplo 10.30.0.0/16
    Meu servidor zabbix fica na 10.30.10.43
    O host fica 10.30.9.100

    Curtir

    • Rafael Oliveira 28 de maio de 2018 / 9:12 am

      Fala Douglas, bom dia!

      Cara eu por exemplo tenho VLAN’s de redes diferentes e consigo monitorar tranquilamente, porém o que tem que observar e se essas redes se comunicam. Se você não tiver comunicação entre as redes através de um roteador por exemplo, não irá conseguir monitorar. Teste sua rede e tenha certeza que possui comunicação entre ambos. Att,

      Curtir

  3. Douglas Moraes 4 de junho de 2018 / 8:12 am

    Bom dia Rafael, elas se comunicam tranquilamente, ping e ssh… não sei o que fazer mais não, estou na luta ate hj rs

    Curtir

    • Rafael Oliveira 7 de junho de 2018 / 9:32 am

      Bom dia Douglas!

      Rapaz tá complicado esse problema ai em rsrs. Já não estou conseguindo pensar em mais nada, se seguiu todos os passos corretamente não era para dar errado, muitos outros usuários já utilizaram o artigo com sucesso. Como você falou da questão de rede divergentes, tenta fazer um teste, coloque os dois na mesma rede e verifique se comunica. Outra questão é referente a porta de comunicação do Zabbix, tenha certeza que a porta esteja liberada.

      Att,

      Curtir

    • Bruno Quinta 31 de julho de 2018 / 9:16 am

      Bom dia Douglas!

      Vi que está passando por um problema de comunicação entre o Zabbix e o XenServer e resolvi me intrometer para tentar ajudar, rsrs.

      Considerando que há comunicação entre as duas redes citadas, sugiro que reveja a etapa: 3) LIBERANDO PORTA DE ACESSO

      Adicione a regra de liberação após a linha 8 do arquivo do iptables no XenServer. No caso, abaixo de :RH-Firewall-1-INPUT – [0:0]

      Faça esse teste e nos dê um retorno quando puder.

      []’s

      Curtir

  4. Daniel Winter 30 de julho de 2018 / 1:32 pm

    Boa tarde Rafael, belo artigo!

    Apesar do passo a passo estar bem simples mas estou com um dificuldade no iptables, quando restarto o serviço me apresenta uma mensagem de erro.

    Job for iptables.service failed because the control process exited with error code. See “systemctl status iptables.service” and “journalctl -xe” for details.

    Se tiver alguma ideia do que pode ser fico agredecido pela ajuda!

    Curtir

    • Rafael Oliveira 31 de julho de 2018 / 9:38 am

      Bom dia Daniel!

      Obrigado, é um prazer para mim poder contribuir com a comunidade. Sobre seu problema a mensagem informa que existe um erro no código iptable, verifique se inseriu corretamente a informação do passo 3, você pode utilizar o comando journalctl -xe para ver melhor o problema.

      Att,

      Curtir

  5. Julio Covolato 15 de agosto de 2018 / 12:34 am

    Parabéns pelo artigo Rafael Oliveira, foi de grande utilidade para mim!!

    @Douglas Moraes : A regra iptables tem que ser colocada ANTES da linha:
    -A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited

    Para quem usa versão antiga do XenServer (o meu é XenServer release 6.1.0-59235p) os repos são do CentOs 5:

    https://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm
    http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
    https://repo.zabbix.com/zabbix/3.2/rhel/5/x86_64/zabbix-release-3.2-2.el5.noarch.rpm

    Edite a linha do “/etc/yum.repos.d/CentOS-Base.repo” e descomente-a:

    baseurl=http://vault.centos.org/5.11/os/$basearch/

    E para habilitar no boot:

    $# chkconfig zabbix-agent on

    Espero ter ajudado!!

    Curtir

    • Rafael Oliveira 15 de agosto de 2018 / 2:14 pm

      Obrigado Julio! Fico feliz por contribuir com algo. Este artigo foi baseado no Xen Server 7, seu comentário ficará registrado aqui, assim se alguém resolver se aventurar na versão anterior também conseguirá. Vlw pelo feedback. Abraço.

      Curtir

  6. Ale Rabelo 2 de janeiro de 2020 / 1:07 pm

    Sensacional a unica coisa que mudei foi a versão do zabbix agent, coloquei a 4.2, apanhei também na liberação da regra de firewall mas depois vi que eu estava colocando a regra depois de REJECT, valeu demais esse tópico, parabéns

    Curtir

E ai, gostou do artigo? Dúvidas, Elogios? Participe, deixe um comentário, isso faz toda diferença!

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s