How to Zabbix

Embed Size (px)

DESCRIPTION

Gerenciamento de rede de computadores com a ferramenta zabbix. Implementação do servidor e instalação de agentes nos hosts a ser gerenciados.

Citation preview

HOW TOAndr Luiz S Ferreira SI SENAC GO

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

ZABBIX Soluo de monitoramento livre, licenciada pela GPL 2. concorrente direto o Nagios. O software tem suporte a praticamente todos os sistemas operacionais e realiza relatrios grficos, alertas por e-mail, monitoramento de ativos de rede, etc. Sistema Operacional utilizado Linux CentOS 6.0 . Requer instalao dos seguintes pacotes; MYSQL Banco de Dados. o yum install mysql-server mysqlclient php-mysql mysql-devel APACHE Servidor Web o yum install httpd PHP Linguagem web paginas dinmicas. o yum install php php-common php-gd php-bcmath php-mbstring php-xml SNMP Utilitrios para realizao de consultas em estaes gerenciadas. o yum install net-snmp net-snmp-devel net-snmp-utils net-snmp-libs GCC Compilador do Linux. o yum install gcc gcc-devel cURL o yum install curl curl-devel

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

1 PASSOBAIXE O PACOTE DE INSTALAO DO ZABBIX EM NO SITE OFICIAL DO ZABBIX. www.zabbix.com

Ou use o wget passando a url completa do pacote de instalao do zabbix. Server# wget http://prdownloads.sourceforge.net/zabbix/zabbix-1.8.11.tar.gz?download

2 PASSODescompactar o pacote do zabbix em /usr/local/src/ pode usar o nome default da descompactao. server# tar xvzf zabbix-1.8.11.tar.gz -C /usr/local/src

3 PASSOFazer a criao do banco zabbix e usurio no mysql: server# mysql u root p mysql> create database zabbix; mysql> show databases; mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix' with grant option; mysql> flush privileges;

4 PASSOImportao dos arquivos do banco de dados; 1. Entre na pasta do zabbix em /usr/local/src/zabbix-1.8.11/create/schema/ dentro desta pasta de um ls e vc ver alguns arquivos com a extenso .sql e como estamos usando o mysql faremos a importao do mysql.sql para criao das tabelas. a. Server# mysql u root p D zabbix < mysql.sql 2. Agora saia um diretrio cd .. e entre em data e faa a importao dos dados e imagens. a. Server# mysql u root p D zabbix < data.sql Segurana da Informao Senac GO [email protected] GO: 16/04/2012

b. Server# mysql u root p D zabbix < images_mysql.sql 3. Volte para a pasta raiz do zabbix /usr/local/src/zabbix-1.8.11/ vamos configurar o zabbix para a instalao; a. Server#./configure --enable-server --enable-agent --with-mysql --with-netsnmp --with-jabber --with-libcurl 4. Nesta etapa de configura das bibliotecas provavelmente pode haver problemas de dependncias, verifique quais as bibliotecas que no foram encontradas e instale. Vou colocar aqui somente as minhas bibliotecas que faltaram. a. mysqclient biblioteca do cliente mysql . b. iksemel-devel biblioteca do jabber. Aqui voc ter de adicionar no arquivo de repositrios do CentOS para instalar atravs do yum. c. vim /etc/yum.repos.d/CentOS-Base.repo. [dag] name=Dag RPM Repository for Red Hat Enterprise Linux baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=1 gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt enabled=1 d. net-snmp-devel biblioteca do SNMP.

5 PASSODepois de verificado a configurao das dependncias de bibliotecas do zabbix e tudo ocorrido normalmente, ou seja, finalizado sem nenhum erro, vamos instalar o zabbix usando o comando make install dentro da pasta raiz do zabbix, lembrando novamente ; server@/usr/local/src/zabbix-1.8.11/# make install

6 PASSOVamos entrar na pasta que contem os arquivos do php para acesso web. Server# cd frontends/php/ Crie a pasta zabbix dentro do document root do Apache. Server# mkdir /var/www/html/zabbix Copie todo o contedo do diretrio /usr/local/src/zabbiz/frontends/php/ para o document root do Apache. Server@/usr/local/src/zabbix-1.8.11/frontends/php/# cp -R * /var/www/html/zabbix

7 PASSOLogo aps fazer a copia dos arquivos da pasta php da pasta do zabbiz, vamos usar um browser para acessar o zabbix para configurao do mesmo.

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

8 PASSOVamos editar o arquivo de configurao do php em /etc/php.ini, este arquivo de configurao contem todos os parmetros de funcionamento do php. Caso ao iniciar borwser e acessar o zabbix aparea est mensagem, altere o timezone no php.ini.

Editando o arquivo /etc/php.ini Server# vim /etc/php.ini Edite a linha que contenha o time zone, descimente e insira conforme a figura abaixo.

Logo aps o igual = coloque da forma que esta escrita letras maisculas e o underline. Reinicie o httpd e de um F5 na pagina e ver que foi corrigido o problema do timezone do php. Server@ root# service httpd restart Agora vamos continuar a configurao do zabbix, mas ainda sim vamos precisar editar alguns parmetros do php.ini. Clique em next, em seguida ser mostrado os termos de acordo de utilizao do zabbix aceite e clique em next. Voce ser direcionado para uma tela que ter como objetivo checar os requisitos para funcionamento adequado do zabbix, conforme a figura abaixo.

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Nesta janela contem o nome do que se requer para funcionamento do zabbix , valor corrente, requerido, recomendado e por ultimo o status. Todos os parmetros que se encontra em vermelho e descrito como FAIL ou falha deve ser corrigido, j os que esto em alaranjado esto com valor requerido e os verdes so os valores recomendados. No meu caso aqui ocorreu falhas em parametros do php, por isso vou ter editar o arquivo /etc/php.ini. Vamos editar inserindo os valores recomendado. server@root# vim /etc/php.ini 1 PHP Memory Limit.

2 PHP post max size.

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

3 PHP upload max filesize.

4 - PHP max execution time.

5 - PHP max input time.

Aps ter feito todas as configuraes passando a ter o recomendado reinicie o servio do httpd e clique RETRY na pagina do zabbix e se tudo foi configura ficara com status verde. server@root# service httpd restart Ao clicar em RETRY sua pagina deve ficar assim.

Clique em next e vamos aos prximos passos. Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Configurao de conexo com banco de dados zabbix.

Nesta tela ser solicitado o nome do usurio do banco de dados zabbix, conforme consta neste tutorial foi criado um usurio para banco de dados zabbix, digite o nome do user e seu password e teste a conexo, se der erro verifique se o usurio foi criado. Proxima tela.

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Apartir desta tela devemos configurar o daemon do servidor zabbix e o deamon agente. Crie uma pasta dentro de /etc com o nome zabbix. server@root# mkdir zabbix Atualize o banco de dados de localizao de arquivos do comando locate. server@root# updatedb Use o locate para encontrar o zabbix_server. server@root# locate zabbix_server Ao executar este comando aparecer uma lista de todas as ocorrncias do nome zabbix, mas s precisamos destes dois arquivos. /usr/local/sbin/zabbix_server Este e comando de compilao do arquivo zabbix_server.conf e criao do deamon. /usr/local/src/zabbix-1.8.11/misc/conf/zabbix_server.conf Este o arquivo de configurao exemplo do servidor zabbix, vamos edita-lo. Mas primeiro vamos copia-lo para dentro da pasta que criamos, em /etc/zabbix/. server@root# cp /usr/local/src/zabbix-1.8.11/misc/conf/zabbix_server.conf /etc/zabbix/ Editando o arquivo zabbix_server.conf; server@root# vim /etc/zabbix/zabbix_server.conf Dentro deste arquivo edite os seguintes parmetros: DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix Salve e sai do arquivo e vamos compilar para gerar o deamom do servidor zabbix. server@root# /usr/local/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf OBS: caso de um erro como este; zabbix_server [2218]: user zabbix does not exist zabbix_server [2218]: Cannot run as root!

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Crie um usurio qualquer e execute o comando, pois este comando no pode ser executado pelo root. Para verificar se o deamom esta rodando e foi configurado corretamente execute o comando netstat confore a figura abaixo.

Veja que o servio este rodando na porta default 10051. O prximo agora e o agente do zabbix. Da mesma forma execute o comando locate; server@root# locate zabbix_agentd Ao ser mostrada a lista de ocorrncia dos nomes vamos precisar destes dois arquivos; /usr/local/sbin/zabbix_agentd Comando de compilao do agente do zabbix. /usr/local/src/zabbix-1.8.11/misc/conf/zabbix_agentd.conf Arquivo exemplo de configurao do agente zabbix. Copie o arquivo exemplo para dentro da pasta /etc/zabbix/. server@root# cp /usr/local/src/zabbix-1.8.11/misc/conf/zabbix_agentd.conf /etc/zabbix/ Este arquivo no precisa ser editado por agora. server@root# cp /usr/local/src/zabbix-1.8.11/misc/conf/zabbix_agentd.conf /etc/zabbix/ Compile o arquivo de configurao do agente para ser gerado o servio do agente. server@root# /usr/local/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Ao final desta configurao execute o comando netstat para verificar se os dois servios se encontra em funcionamento conforme a figura abaixo;

Voltando ao browser clique em next, o instalador te mostrar uma sumario com os parmetros de configurao feitos at agora, clique em next novamente e ele te mostrar uma falha, esta falha por sua vez se da por falta de permisso do usurio apache dentro da pasta conf no diretrio do zabbix em /var/www/html/zabbix/.

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Adicionando permisses para o usurio apache dentro da pasta conf. server@root# chown apache . Se voc der um ls la ver que o diretrio ponto tem como dono o usurio root, executando o comando chown apache . voc passa o dono para o usurio apache, usurio padro do deamon do httpd, apartir dai volte ao browser clique em retry e voc ter uma tela como essa.

Clique em next e finish. Completa instalao voc ser redirecionado para a tela de login do zabbix.

Usurio: admin | Senha: zabbix Este e default para entrar no sistema de gerenciamento zabbix. Segurana da Informao Senac GO [email protected] GO: 16/04/2012

9 PASSOConfigurando o localhost para ser monitorado. Como o deamom do agente j esta rodando vamos ativar o gerenciamento do localhost conforme a figura abaixo, faa o login no zabbix, v em Configuration > nas subopes clique em Hosts. Vai aparecer a lista de hosts.

Observe que na coluna Status esta descrito no monitorado, clique nele e de ok e ir ficar verde e j esta sendo monitorado. Para ver os monitoramentos basta ir em Monitoring > Graphs. No drop-down Graphs selecione o grfico que deseje verificar, neste caso estou mostrando o grfico de utilizao de CPU.

10 PASSOConfigurando o agente para Windows e adicionando ao monitoramento. Primeiro baixo o pacote com os binrios para configurao do agente na pagina do zabbix. http://www.zabbix.com/downloads/1.8.11/zabbix_agents_1.8.11.win.zip Feito o download do agente para Windows crie uma pasta para zabbix dentro de C:\ chamada zabbix, verifique o tipo de hardware de sua maquina Windows se e 32 ou 64bits, descompacte e copie os arquivos referentes ao seu tipo de hardware. Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Copiar ou criar o arquivo zabbix_agentd.conf dentro da pasta C:\Zabbix, um arquivo de exemplo pode ser encontrado no diretrio que contm os fontes de instalao do Zabbix Server, no diretrio zabbix-verso/misc/conf. Dentro do arquivo do agente de conter o seguinte: Server=IP do Servidor do Zabbix Hostname=Nome da mquina Cliente StartAgents=5 DebugLevel=3 LogFile=C:\Zabbix\zabbix_agentd.log Timeout=3 Agora vamos criar o servio agente do zabbix no Windows. Abrir um prompt de comando e executar o seguinte comando: C:\Zabbix\zabbix_agentd.exe -i -c C:\Zabbix\zabbix_agentd.conf

Observe que aparecer duas mensagens com o final instale successfully. Se desejar ver as demais opes do agente execute o seguinte comando: C:\Zabbix\zabbix_agentd.exe --help

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Ao executar estes comandos ser criado um servio em service.msc no Windows basta entrar nos servios e verificar a existncia.

11 PASSOInstalando agente no Linux. Fazer o download do agente no site do Zabbix, observe a Verso do seu Kernel e a Arquitetura do seu Processador antes de baixar o pacote. No exemplo abaixo, baixei um pacote compatvel com Kernel 2.6 e Arquitetura i386. # mkdir -p /install/zabbix # cd /install/zabbix/ # wget http://www.zabbix.com/downloads/1.8.5/zabbix_agents_1.8.5.linux2_6.i386.tar.gz Descompactando o arquivo do agente zabbix. # tar xzf zabbix_agents_1.8.5.linux2_6.i386.tar.gz C /install/zabbix/ Adicionar um usurio chamado zabbix. # adduser zabbix -s /bin/false Segurana da Informao Senac GO [email protected] GO: 16/04/2012

Por questes de segurana recomendvel deixar este usurio sem shell, por isto usamos o parmetro "-s /bin/false". Mudar o dono e grupo recursivamente para a pasta e subpastas. # chown -R zabbix:zabbix /etc/zabbix/ Copiar ou criar o arquivo zabbix_agentd.conf dentro da pasta /etc/zabbix, um arquivo de exemplo pode ser encontrado no diretrio que contm os fontes de instalao do Zabbix Server, no diretrio zabbix-verso/misc/conf. # vi /etc/zabbix/zabbix_agentd.conf Contedo Mnimo do Arquivo: Server=IP do Servidor do Zabbix Hostname=Nome da mquina Cliente StartAgents=3 DebugLevel=3 PidFile=/var/tmp/zabbix_agentd.pid LogFile=/tmp/zabbix_agentd.log Timeout=3 Observao: O Arquivo de configurao possui outros parmetros, todos com comentrios sobre seu uso, este o contedo mnimo do arquivo, mas voc deve verificar todas as opes disponveis e decidir quais habilitar. Alterar as permisses do arquivo. # chown zabbix:zabbix /etc/zabbix/zabbix_agentd.conf Iniciar o agente zabbix. # /etc/zabbix/zabbix_agentd Verifique se o servio esta rodando, porta padro 10050. # netstat nltp

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

12 - PASSOAdicionando o host Windows ou Linux no zabbix. Para adicionar um novo host para ser monitorado , entre no ambiente de monitoramento do zabbix, v em Confiration > Hosts > Create Hosts. Conforme figura abaixo.

Preencha os seguintes campos; Name: nome_do_servidor DNS name / IP Address: In Group: Link with template: Observar que este campo, define quais parmetros sero monitorados. Um servidor pode ser monitorado por vrios templates, desde que estes no tenham conflitos entre si. Neste momento, vamos apenas utilizar um template bsico, Template_Linux, Template_Windows ou Template_Standalone Os dois primeiros so baseados em agentes, e o Standalone para monitoramento simples.

Segurana da Informao Senac GO [email protected] GO: 16/04/2012

ConclusoZabbix um software que monitora diversos parmetros de uma rede como a integridade e desempenho dos servidores. Oferece excelentes relatrios e visualizao de dados de recursos com base nos dados armazenados, e usa um mecanismo de notificao flexvel que permite aos usurios configurar e-mail com alertas para qualquer evento, o que permite uma reao rpida para os problemas do servidor. Corretamente configurado, o Zabbix pode desempenhar um papel importante no controle da infraestrutura de TI. Isto igualmente verdade para as pequenas organizaes com alguns servidores e para grandes empresas com um grande nmero de servidores. O Zabbix escrito e distribudo sob a GNU General Public License verso 2. Isso significa que seu cdigo-fonte distribudo gratuitamente e est disponvel para o pblico em geral. Na lista abaixo temos algumas vantagens de se utilizar o Zabbix: Soluo Open Source; Suporte para SNMP (v1, v2); Monitoramento distribudo com administrao centralizada na web; Agentes de alta performance (software de cliente para Linux, Solaris, HP-UX, AIX, FreeBSD, OpenBSD, OS X, Tru64/OSF1, Windows NT 4.0, Windows 2000, Windows 2003, Windows XP e Windows Vista); Permisses flexveis de usurio; Interface baseada na web.

Segurana da Informao Senac GO [email protected] GO: 16/04/2012