Differences

This shows you the differences between two versions of the page.

Link to this comparison view

instalacao_e_configuracao_do_cacti_e_de_cliente_cacti_no_debian_squeeze_pt_br [2017/09/05 12:18] (current)
Line 1: Line 1:
 +====== Instalação e Configuração do Cacti e de Cliente Cacti no Debian Squeeze ​ ======
  
 +
 +Aqui vou Abordar a instalação e configuração do Cacti e de um cliente para ele, vou fazer a instalação também o Spine que é um poller para melhorar a performance do cacti.
 +
 +  * **Nome Servidor Cacti:** cacti
 +    * **Ip:** 10.101.0.25
 +
 +  * **Nome Cliente Cacti:** ldap
 +    * **Ip:** 10.101.0.26
 +
 +
 +Prepare o seu sistema com o seguinte script http://​wiki.douglasqsantos.com.br/​doku.php/​confinicialsqueeze_en para que não falte nenhum pacote ou configuração.
 +
 +
 +Agora vamos instalar as dependências para o cacti
 +<sxh bash>
 +
 +aptitude install libphp-adodb php5-adodb php5 apache2 mysql-server rrdtool snmp snmpd php5-snmp libmysql++-dev libmysqlclient-dev ​ libsnmp-dev -y
 +</​sxh>​
 +
 +Agora vamos obter o cacti
 +<sxh bash>
 +
 +cd /usr/src
 +wget -c http://​wiki.douglasqsantos.com.br/​Downloads/​monitoring/​cacti-0.8.8a.tar.gz
 +</​sxh>​
 +
 +Agora vamos desempacotar ele
 +<sxh bash>
 +
 +tar -xzvf cacti-0.8.8a.tar.gz
 +</​sxh>​
 +
 +Agora vamos mover ele para /var/www
 +<sxh bash>
 +
 +mv cacti-0.8.8a /​var/​www/​cacti
 +</​sxh>​
 +
 +Agora vamos cadastrar um usuário para ele
 +<sxh bash>
 +
 +useradd -m -r -s /bin/false cacti
 +</​sxh>​
 +
 +Agora vamos acertar as permissões do diretório com os arquivos
 +<sxh bash>
 +
 +chown -R cacti:​www-data /​var/​www/​cacti
 +find /​var/​www/​cacti -type f -exec chmod 664 {} \;
 +find /​var/​www/​cacti -type d -exec chmod 775 {} \;
 +</​sxh>​
 +
 +Agora vamos criar o banco de dados para o cacti
 +<sxh sql>
 +mysql -u root -p
 +CREATE DATABASE cacti;
 +GRANT ALL PRIVILEGES ON cacti.* TO cacti@localhost IDENTIFIED BY '​senha';​
 +FLUSH PRIVILEGES;
 +QUIT
 +</​sxh>​
 +
 +Agora vamos acertar o arquivo de controle de acesso ao banco de dados
 +<sxh php>
 +vim /​var/​www/​cacti/​include/​config.php
 +$database_type = "​mysql";​
 +$database_default = "​cacti";​
 +$database_hostname = "​localhost";​
 +$database_username = "​cacti";​
 +$database_password = "​senha";​
 +$database_port = "​3306";​
 +$database_ssl = false;
 +[...]
 +$url_path = "/";​
 +</​sxh>​
 +
 +Agora vamos importar o banco de dados
 +<sxh bash>
 +
 +mysql -u cacti -psenha cacti < /​var/​www/​cacti/​cacti.sql
 +</​sxh>​
 +
 +Agora vamos aplicar um patch no cacti
 +
 +Vamos acessar o diretório com os arquivos
 +<sxh bash>
 +
 +cd /​var/​www/​cacti
 +</​sxh>​
 +
 +Agora vamos obter o patch
 +<sxh bash>
 +
 +wget -c http://​wiki.douglasqsantos.com.br/​Downloads/​monitoring/​snmpv3_priv_proto_none.patch
 +</​sxh>​
 +
 +Agora vamos aplicar o patch
 +<sxh bash>
 +
 +patch -p1 -N < snmpv3_priv_proto_none.patch
 +</​sxh>​
 +
 +Agora vamos remover o patch
 +<sxh bash>
 +
 +rm -rf snmpv3_priv_proto_none.patch
 +</​sxh>​
 +
 +Agora vamos criar um virtualhost para o cacti
 +<sxh apache>
 +
 +vim /​etc/​apache2/​sites-available/​cacti
 +<​VirtualHost ​ *:80>
 +        ServerName cacti.douglasqsantos.com.br
 +        ServerAdmin webmaster@douglasqsantos.com.br
 +        DocumentRoot "/​var/​www/​cacti"​
 +         <​Directory "/​var/​www/​cacti">​
 +                 ​Options -Indexes +FollowSymLinks +MultiViews
 +                 ​AllowOverride All
 +                 Order Allow,deny
 +                 Allow From All
 +         </​Directory>​
 +
 +        CustomLog /​var/​log/​apache2/​cacti.access.log combined
 +        ErrorLog /​var/​log/​apache2/​cacti.error.log
 +        LogLevel warn
 +        ServerSignature Off
 +</​VirtualHost>​
 +</​sxh>​
 +
 +Agora vamos habilitar ele
 +<sxh bash>
 +
 +a2ensite cacti
 +</​sxh>​
 +
 +Agora vamos desabilitar o virtualhost default do apache
 +<sxh bash>
 +
 +a2dissite default
 +</​sxh>​
 +
 +Agora vamos reiniciar o apache
 +<sxh bash>
 +
 +/​etc/​init.d/​apache2 restart
 +</​sxh>​
 +
 +Agora vamos acessar http://​cacti.douglasqsantos.com.br/​install para acertamos a configuração do cacti.
 +
 +Responda da seguinte forma:
 +  * Next
 +  * Next
 +  * Finish
 +
 +Após isso vamos ser redirecionados para a página de login o usuário: admin senha: admin, após informar isso vai ser solicitado a alteração da senha altere a senha e vamos logar ;)
 +
 +Agora vamos alguns ajustes no snmpd do servidor cacti
 +<sxh bash>
 +
 +vim /​etc/​snmp/​snmpd.conf
 +[...]
 +#Vamos deixar o agentAddress como abaixo
 +agentAddress ​ udp::161
 +[...]
 +#Vamos deixar sysLocation e sysContact como abaixo
 +sysLocation ​   Servidor Cacti Matriz
 +sysContact ​    ​Douglas <​douglas@douglasqsantos.com.br>​
 +</​sxh>​
 +
 +Agora vamos reiniciar o serviço do snmtp
 +<sxh bash>
 +
 +/​etc/​init.d/​snmpd restart
 +</​sxh>​
 +
 +Por recomendação do Cacti vamos instalar o spine que é um poller escrito em C que tem uma melhor performace do que o padrão
 +
 +Vamos acessar o diretório para armazenar os fontes
 +<sxh bash>
 +
 +cd /usr/src
 +</​sxh>​
 +
 +Agora vamos obter o spine
 +<sxh bash>
 +
 +wget -c http://​wiki.douglasqsantos.com.br/​Downloads/​monitoring/​cacti-spine-0.8.8a.tar.gz
 +</​sxh>​
 +
 +Agora vamos desempacotar ele
 +<sxh bash>
 +
 +tar -xzvf cacti-spine-0.8.8a.tar.gz
 +</​sxh>​
 +
 +Agora vamos acessar o seu o diretório com os fontes
 +<sxh bash>
 +
 +cd cacti-spine-0.8.8a/​
 +</​sxh>​
 +
 +Vamos mandar ele gerar a configuração
 +<sxh bash>
 +
 +./configure
 +</​sxh>​
 +
 +Vamos mandar ele compilar
 +<sxh bash>
 +
 +make
 +</​sxh>​
 +
 +Agora vamos mandar ele instalar
 +<sxh bash>
 +
 +make install
 +</​sxh>​
 +
 +Agora vamos acertar o nome do arquivo de configuração do spine
 +<sxh bash>
 +
 +cp /​usr/​local/​spine/​etc/​spine.conf.dist /​usr/​local/​spine/​etc/​spine.conf
 +</​sxh>​
 +
 +Agora vamos acertar a configuração do spine
 +<sxh bash>
 +
 +vim /​usr/​local/​spine/​etc/​spine.conf
 +[...]
 +DB_Host ​        ​localhost
 +DB_Database ​    cacti
 +DB_User ​        cacti
 +DB_Pass ​        senha
 +DB_Port ​        3306
 +DB_PreG ​        0
 +</​sxh>​
 +
 +Agora no cacti em **Console/​Settings/​Paths**
 +  * Em Spine Poller File Path: informe: **/​usr/​local/​spine/​bin/​spine**
 +  * Agora selecione save
 +
 +Agora Selecione em **Console/​Management/​Devices**
 +  * Selecione o Localhost
 +  * Em snmp version selecione version 1 as opções que irão aparecer não precisam ser modificadas agora no final da página selecione save.
 +  * Agora selecione o link **Create Graphs for this Host**
 +  * Agora selecione os dispositivos que deseja monitorar e selecione create.
 +
 +Agora vamos agendar no cron a geração de relatório
 +<sxh bash>
 +
 +crontab -e
 +[...]
 +*/5  *  *  *  *    php /​var/​www/​cacti/​poller.php > /dev/null 2>&1 && chown -R cacti:​www-data /​var/​www/​cacti/​rra
 +</​sxh>​
 +
 +Agora é só ir acompanhando os gráficos em graphs o primeiro gráfico demora 5 minutos pra gerar por causa do cron.
 +
 +====== Agora vamos a configuração do Cliente ======
 +
 +No cliente somente precisamos instalar o snmp, snmpd
 +<sxh bash>
 +
 +aptitude install snmp snmpd -y
 +</​sxh>​
 +
 +Agora vamos fazer backup do arquivo de configuração do snmpd
 +<sxh bash>
 +
 +cp /​etc/​snmp/​snmpd.conf{,​.bkp}
 +</​sxh>​
 +
 +Agora vamos acertar a configuração do snmpd
 +<sxh bash>
 +
 +vim /​etc/​snmp/​snmpd.conf
 +[...]
 +#Vamos deixar agentAdress como abaixo
 +agentAddress ​ udp::161
 +[...]
 +#Vamos comentar a linha abaixo
 +# rocommunity public ​ default ​   -V systemonly
 +#Vamos adicionar a linha abaixo aqui definimos uma rede porem podemos definir somente o servidor
 +rocommunity douglas ​ 10.101.0.0/​24
 +[...]
 +#Vamos deixar as opções do sysLocation e sysContact como abaixo
 +sysLocation ​   Servidor LDAP Matriz
 +sysContact ​    ​Douglas <​douglas@douglasqsantos.com.br>​
 +</​sxh>​
 +
 +Agora vamos reiniciar o serviço do snmtp
 +<sxh bash>
 +
 +/​etc/​init.d/​snmpd restart
 +</​sxh>​
 +
 +  * Agora no cacti selecione **Console/​Management/​Devices**
 +  * Do lado superior direito selecione add ele esta abaixo de Logout
 +  * Informe uma descrição para o servidor EX: Ldap
 +  * Em hostname informe o ip
 +  * Host template selecione local linux machine
 +  * Em snmp options selecione snmp version -> Version 1
 +  * Em snmp community informe **douglas** que nos definimos em rocommunity em **/​etc/​snmp/​snmpd.conf**
 +  * Agora  selecione Create na parte inferior direita da tela, se a configuração do snmpd estiver correta vamos receber uma mensagem de **Save Sucessful**
 +  * Agora na parte superior da tela em Azul temos Create graphs for this host selecione este link
 +  * Agora selecione todos os necessarios e selecione create na parte inferior direita da tela.
 +  * Na proxima tela temos algums configurações sobre as cores das legendas eu sempre deixo as default e selecione create
 +  * Agora selecione **Console/​Menagement/​Graph Trees**
 +  * Agora selecione Default Tree
 +  * Agora do lado supeiror direito selecione Add
 +  * Em parent item deixe como [root]
 +  * Em tree item type selecione host
 +  * Agora selecione o seu servidor Ldap e selecione Create.
 +
 +Agora podemos acompanhar os gráficos em graphs os relatórios atualizam a cada 5 minutos que agendamos no cron ;)
 +
 +No painel direito temos os nossos hosts para adicionar mais hosts siga o mesmo procedimento ;)
 +
 +
 +====== Referências ======
 +
 +  - http://​www.cacti.net/​
 +  - http://​docs.cacti.net/​
 +  - http://​docs.cacti.net/​wiki:​documentation
 +  - http://​docs.cacti.net/​manual:​088
 +  - http://​docs.cacti.net/​howto
 +  - http://​docs.cacti.net/​faq
 +  - http://​www.cacti.net/​download_patches.php
 +  - http://​www.cacti.net/​download_cacti.php
 +  - http://​www.cacti.net/​downloads/​docs/​html/​requirements.html