Este tutorial vai orientar o usuário a efetuar a instalação do Centreon no FreeBSD. Estaremos utilizando uma instalação em um FreeBSD com kernel versão 9.0-PRERELEASE, a versão do kernel não influenciará no tutorial. Pode ser FreeBSD 8.x ou 9.x
O que é o Centreon ?
Centreon é uma poderosa ferramenta de monitoramento de hosts e serviços, ele é um frontend que funciona em cima do Nagios, adicionando muitas facilidades para visualização e histórico de alertas, estatus, etc..
Precisa de suporte ? Clique aqui !

Para conhecer um pouco mais sobre a ferramenta, eu lhe convido a visitar o site oficial no endereço http://www.centreon.com
O que nós vamos precisar ?
- Apache
- PHP 5.3.x + um monte de dependências
- Mysql
- Nagios
- Pear + um monte de dependências
- Perl + um monte de dependências
- rrdtool
- snmp
- sudo
- Centreon (óbvio :-p)
Iniciando a instalação dos pacotes
Para este tutorial, nos iremos usar a ferramenta portmaster, você até podera fazer toda a instalação manualmente, mas u aconselho o uso da ferramenta, afim de facilitar a instalação das dependências e pela a quantidade de pacotes que iremos precisar.
|
1 2 |
/usr/ports/ports-mgmt/portmaster make install clean |
se estiver usando o shell csh
|
1 |
rehash |
Começamos por alguns pacotes comuns para prover o Centreon:
|
1 2 |
# Nas configurações de pacotes, mantenha as opções default ou a seu gosto. portmaster -d lang/perl5.16 www/apache22 shells/bash security/sudo net-mgmt/net-snmp net-mgmt/snmptt |
Instalando nosso banco de dados (se for usar o Mysql fora, instale somente o mysql-client)
|
1 |
portmaster -d databases/mysql51-client databases/mysql51-server |
Vamos instalar o PHP:
Atenção ao configurar o pacote PHP5, você precisará de algumas opções marcadas, pelo menos as que estão listadas abaixo:
|
1 2 |
│ │ [*] CLI Build CLI version │ │ │ │ [*] APACHE Build Apache module │ │ |
|
1 2 3 4 5 |
portmaster -d lang/php53 databases/php53-mysql graphics/php53-gd \ www/php53-session archivers/php53-zlib \ sysutils/php53-posix security/php53-filter \ converters/php53-mbstring textproc/php53-xml \ devel/php53-gettext textproc/php53-xmlwriter |
PEAR:
|
1 2 3 4 5 6 7 8 9 |
portmaster -d devel/pear databases/pear-DB_DataObject databases/pear-DB_DataObject_FormBuilder \ databases/pear-MDB2 textproc/pear-Numbers_Roman \ textproc/pear-Numbers_Words devel/pear-HTML_QuickForm2 \ devel/pear-HTML_QuickForm_advmultiselect net/pear-Net_Traceroute \ net/pear-Net_Ping devel/pear-Validate net/pear-XML_RPC \ mail/pear-Mail mail/pear-Mail_Mime www/pear-HTTP net/pear-SOAP \ devel/pear-HTML_Table security/pear-Auth_SASL net/pear-Net_SMTP \ graphics/pear-Image_Canvas graphics/pear-Image_Graph \ graphics/pear-Image_GraphViz |
Vamos para a parte do Perl:
|
1 2 3 |
portmaster -d devel/p5-Config-IniFiles graphics/p5-GD \ databases/p5-DBD-mysql security/p5-Crypt-DES \ security/p5-Digest-HMAC net-mgmt/p5-Net-SNMP |
Problemas com rede ? implementação de segurança ? clique aqui
Uma importante ferramenta que não pode faltar no nosso ambiente:
|
1 |
portmaster -d databases/rrdtool |
E nosso pano de fundo do Centreon, o Nagios !
|
1 |
portmaster -d net-mgmt/nagios net-mgmt/ndoutils |
Marque as opções:
|
1 2 3 |
│ │[X] EMBEDDED_PERL Enable embedded Perl [requires Perl 5.8.0+] │ │ │ │[X] NANOSLEEP Use nanosleep in event timing │ │ │ │[X] EVENT_BROKER Enable event broker functionality │ │ |
Nagios-plugins:
|
1 2 |
│ │ [X] FPING Support for non-flooding fast ping (check_fping) │ │ │ │ [X] NETSNMP SNMP support (check_snmp) │ │ |
Se estiver instalando dentro de uma Jail, marque a opção abaixo:
|
1 |
│ │ [X] JAIL Compilation within jail(8) (see Makefile) │ │ |
ndoutils:
|
1 |
│ │ [X] MYSQL MySQL Backend │ │ |
Vamos as configurações de alguns pacotes:
se estiver usando o shell csh
|
1 |
rehash |
PHP:
|
1 2 3 4 |
cd /usr/local/etc cp php.ini-production php.ini # Ajuste o Fuso horario para sua localidade perl -p -i -e 's/;date.timezone =/date.timezone = America\/Sao_Paulo/' /usr/local/etc/php.ini |
Apache:
|
1 2 3 4 5 6 7 |
echo 'apache22_enable="YES"' >> /etc/rc.conf echo "AddType application/x-httpd-php .php" >> /usr/local/etc/apache22/Includes/php.conf echo "AddType application/x-httpd-php-source .phps" >> /usr/local/etc/apache22/Includes/php.conf perl -p -i -e 's/DirectoryIndex index.html/DirectoryIndex index.html index.php/g' /usr/local/etc/apache22/httpd.conf # Verifique se o seu arquivo de hosts (/etc/hosts) ou DNS interno esta funcionando corretamente /usr/local/etc/rc.d/apache22 start |
Mysql:
|
1 2 3 4 |
echo 'mysql_enable="YES"' >> /etc/rc.conf /usr/local/etc/rc.d/mysql-server start # definir senha para root do mysql mysqladmin -u root password "nova-senha" |
SNMP:
|
1 2 3 4 5 6 7 8 9 10 11 12 |
echo 'snmpd_enable="YES"' >> /etc/rc.conf echo 'snmpd_flags="-a"' >> /etc/rc.conf echo 'snmpd_conffile="/usr/local/etc/snmp/snmpd.conf"' >> /etc/rc.conf echo 'snmptrapd_enable="YES"' >> /etc/rc.conf echo 'snmptrapd_flags="-a -p /var/run/snmptrapd.pid"' >> /etc/rc.conf mkdir -p /usr/local/etc/snmp cp /usr/local/share/snmp/snmpd.conf.example /usr/local/etc/snmp/snmpd.conf perl -p -i -e 's/rocommunity public default -V systemonly/rocommunity public default/g' /usr/local/etc/snmp/snmpd.conf perl -p -i -e 's/agentAddress udp:127.0.0.1:161/#agentAddress udp:127.0.0.1:161/' /usr/local/etc/snmp/snmpd.conf /usr/local/etc/rc.d/snmpd start /usr/local/etc/rc.d/snmptrapd start |
Acerte o arquivo /usr/local/etc/snmp/snmpd.conf com informações de localização e identificação.
Se você estiver instalando o snmpd em uma Jail, veja este artigo para funcionamento da mesma em Jail:
http://ggeek.blogspot.com/2008/10/freebsd-jails-and-net-snmp.html
Consultoria em Soluções Livres, entre em contato !
Nagios:
|
1 2 3 4 5 6 7 8 |
sh cd /usr/local/etc/nagios/ ls -1 *-sample | while read arq ; do mv $arq `echo $arq | cut -f1 -d'-'` ; done cd objects/ ls -1 *-sample | while read arq ; do mv $arq `echo $arq | cut -f1 -d'-'` ; done exit echo 'nagios_enable="YES"' >> /etc/rc.conf /usr/local/etc/rc.d/nagios start |
NDOUtils:
|
1 |
echo 'ndo2db_enable="YES"' >> /etc/rc.conf |
Fazendo download do Centreon:
|
1 2 3 4 |
cd /tmp fetch http://download.centreon.com/centreon/centreon-2.3.9.tar.gz tar zxf centreon-2.3.9.tar.gz cd centreon-2.3.9 |
Fazendo o Centreon ler o shell bash
Existem 2 maneiras (escolha uma):
- Alterando o caminho nos scripts do Centreon:
|
1 2 |
perl -p -i -e 's/\/bin\/bash/\/usr\/local\/bin\/bash/g' install.sh perl -p -i -e 's/\/bin\/bash/\/usr\/local\/bin\/bash/g' libinstall/* |
- Criando um link simbolico no /bin
|
1 |
ln -s /usr/local/bin/bash /bin/bash |
Alguns preparativos para a instalação:
|
1 2 |
mkdir -p /tmp/cron.d fetch -o tmpl/vardistrib/freebsd http://www.luizgustavo.pro.br/downloads/freebsd.txt |
Inicie agora a instalação via comando:
|
1 |
bash install.sh -f tmpl/vardistrib/freebsd |
Acompanhe o processo de instalação através do video abaixo:
Terminada a instalação, vamos partir para a parte web, para isso, reinicie o MySQL e o Apache:
|
1 2 |
/usr/local/etc/rc.d/apache2 restart /usr/local/etc/rc.d/mysql-server restart |
Vamos acertar algumas correções de permissão:
|
1 2 3 4 5 6 7 8 9 10 11 |
chown -R www:www /usr/local/etc/centreon/ cd /usr/local/centreon rm filesGeneration mv /var/cache/centreon/filesGeneration . chown -R www:www filesGeneration rm filesUpload mv /var/cache/centreon/filesUpload . chown -R www:www filesUpload cd /var/cache/centreon ln -s /usr/local/centreon/filesGeneration ln -s /usr/local/centreon/filesUpload |
Vamos corrigir também um problema de versão de dependência do PEAR:
|
1 2 |
/usr/local/bin/pear uninstall HTML_QuickForm_advmultiselect /usr/local/bin/pear install -f pear/HTML_QuickForm_advmultiselect-1.2.0 |
Agora assim, podemos apontar nosso navergador para o endereço do servidor centreon:
|
1 |
http://<ip_ou_url>/centreon |
Acompanhe o vídeo para configurar via web:
Falta pouco, ainda precisamos exportar os arquivos de configuração para que nosso NDO-Utils possa funcionar, para isso, acompanhe o vídeo na exportação do mesmo via web:
Agora, vamos iniciar os processos do Centreon:
|
1 2 3 |
pw user mod nagios -s /bin/sh /usr/local/etc/rc.d/centcore start /usr/local/etc/rc.d/centstorage start |
Acertar a parte da CRON para o FreeBSD:
|
1 2 3 |
cat /tmp/cron.d/* >> /etc/crontab /etc/rc.d/cron restart rm -rf /tmp/cron.d |
Reinicie os processos do nagios e ndoutils
|
1 2 |
/usr/local/etc/rc.d/nagios restart /usr/local/etc/rc.d/ndo2db restart |
Pronto ! agora é só configurar os seus hosts e iniciar o monitoramento.
Se necessitar de suporte ao Centreon, entre em contato com a Mundounix, nós oferecemos suporte e consultoria para solução de monitoramento de redes.

Excelente tutorial.
Não sei se é essa nova versão do centreon, mas meus graficos de trafego de rede estão com valores negativos…
Boa Felipe,
Então, isso é uma caracteristica das versões novas do plugin de traffic do centreon, é uma forma mais visual de diferenciar a entrada e saida de trafego.
Você pode obter resultados diferentes usando outros plugins de captura de trafego, também disponiveis no ports do FreeBSD.
Abraços
Luiz Gustavo, boa noite… Excelente seu tutorial, funcionou tudo perfeitamente, muito fácil de ser seguido, parabéns mesmo pela sua iniciativa…
Só deu um erro quando fui iniciar o ndo2db
Could not bind socket: Permission denied
/usr/local/etc/rc.d/ndo2db: WARNING: failed to start ndo2db
Sabe o que pode ser?
Outra dúvida, como configuro os hosts pra ele buscar o monitoramento?
O que eu preciso mudar nesse arquivo? /usr/local/etc/snmp/snmpd.conf
Desculpe as perguntas mas é que sou novo com o Centreon e não sei ainda como configurar…
Aguardo ok? Abraços
Fiz a instalação usando este tutorial e realmente funciona perfeitamente.
Meu problema é nas ACLs. Faço todas as configurações só que não consigo colocar alguns hosts para um usuario gerenciar. Funciona com esta versão ? Se sim, alguem pode me passar dicas ?
Obrigado.
Boa tarde Luiz,
Primeiramente parabens pelo tutorial,
Estou enfrentando o seguinte problema quando abro a tela do centreon fica uma ampulheta girando com o texto Loading… e nao sai disso..
E quando vou por exemplo em Views ele me gera o seguinte erro na tela:
Error type: Load XML
Description: Incorrect XML
Apos essa tela surge outra:
Error Type: DataStructure
Descryption: XML Reffers to not existing parent
Alguns erros no /var/log/httpd-error acredito que possa ajudar na solução
[Thu Apr 12 15:14:53 2012] [error] [client 200.162.160.208] PHP Strict Standards: Non-static method DB::isError() should not be called statically, assuming $this from incompatible context in /usr/local/share/pear/DB.php on line 1387, referer: http://200.162.160.150/centreon/main.php
[Thu Apr 12 15:14:53 2012] [error] [client 200.162.160.208] PHP Warning: Cannot modify header information – headers already sent by (output started at /usr/local/share/pear/DB.php:551) in /usr/local/centreon/www/include/home/tacticalOverview/xml/ndo/tacticalOverviewXml.php on line 659, referer: http://200.162.160.150/centreon/main.php
Instalei a ferramenta seguindo o tutorial…
Porém o snmp do centreon não está funcionando….
Não consigo adicionar novos hosts para serem monitorados….
Há alguma permissão a mais que deve ser dada ao centreon?
PHP Warning: file_put_contents(/usr/local/centreon/filesGeneration/broker//1/): failed to open stream: Is a directory in /usr/local/centreon/www/include/configuration/configGenerate/genCentreonBroker.php on line 120, referer: http://192.168.1.24/centreon/main.php?p=607
/usr/local/bin/sudo/usr/local/bin/nagios: not found
Não sei porque, mas ele junta tudo em uma linha só.
Minha linha está assim:
$stdout = shell_exec(“/usr/local/bin/sudo”.$nagios_bin["nagios_bin"] . ” -v “.$nagiosCFGPath.$host["id"].”/nagiosCFG.DEBUG”);
O que está errado?
Só uma dica:
O centreon não é “uma poderosa ferramenta de monitoramento” seu projeto esta direcionado em ser um front-end para gerenciamento da monitoração do nagios. Como desenvolvedor e utilizador desta ferramenta não gostei das últimas atualizações e criei 2 threads de bugs e problemas que encontrei na ferramenta fazendo update da mesma desde a versão 2.1.x até as mais atuais 2.3.9. Com os atuais bugs desta ferramenta e as milhares de configurações que temos de fazer no servidor para apenas suportar a mesma, migrei para o NagiosQl (http://www.nagiosql.org/documentation.html) que além de simples na instalação é infinitamente mais leve que o centreon.
Obs.:
O NagiosQL não vai ter os lances de gráficos mas, podemos utilizar o cacti+N2RRD (ou qualquer outro plugin) e, conseguir gerar nossos reports de capacity.
Boa tarde,
Gostaria de saber se o centreon serve como software de inventario.
Informando configurações de maquinas clientes como: CPU, Memoria, Capacidade do HD, IP , etc.
Grato,