|
|||||||
| Wiki | Classificados | Galeria | Reviews | Jogos | Comunidades | RSS Feeds | FAQ | Termos de Uso | Sobre |
| Cadastre-se | Fotos | Blogs | Lista de Membros | Calendário | Pesquisar | Mensagens de Hoje | Marcar Fóruns Como Lidos |
FerramentasPublicidade |
From UnderLinux Wiki Instalando e Configurando Nagios com e sem MySQL
[editar] IntroduçãoO Nagios e uma poderosa ferramenta de adminstração podendo até dizer de manutenção da rede, visto que ele monitora em real-time os hosts de rede. Mantendo nós administradores sempre informados da "saúde" da rede, por meio de alertas SMS, emails e até por mensagens via telefone (isso mesmo o nagios liga informando que há algum problema na rede) nesse artigo abordarei a instalção e configuração do nagios com e sem o mysql. O uso do mysql nos da uma boa alternativa para guardar os logs, uma vez que da maneira convencional os logs sao armazenados em arquivos de texto. Esse artigo foi testado nas distro Debian e Slackware. [editar] Instalando Nagios sem MySQL[editar] Obtendo o nagiosEssa é a ultima versão do nagios.
[editar] Preparando a InstalaçãoAntes de começarmos a instalar temos que criar por questões de segurança um usuários para o nágios # groupadd nagios # adduser nagios -s /bin/false -d /bin/false [editar] Descompactando o ArquivoDevo resaltar que o proceimento abaixo é um padrão em todas as minhas compilações, ficando a caráter de cada usário a melhor forma para executar essa parte do processo # cd /usr/src # tar -zxvf nagios-2.5.tar.gz #cd nagios-2.5 /usr/src/nagios-2.5# ./configure Se esse processo ocorrer sem demais problemas, você receberá as seguintes informações:
Creating sample config files in sample-config/ ...
*** Configuration summary for nagios 2.0 02-07-2006 ***:
General Options:
-------------------------
Nagios executable: nagios
Nagios user/group: nagios,nagios
Command user/group: nagios,nagios
Embedded Perl: no
Event Broker: yes
Install ${prefix}: /usr/local/nagios
Lock file: ${prefix}/var/nagios.lock
Init directory: /etc/rc.d/init.d
Host OS: linux-gnu
Web Interface Options:
------------------------
HTML URL: http://localhost/nagios/
CGI URL: http://localhost/nagios/cgi-bin/
Traceroute (used by WAP): /usr/bin/traceroute
Review the options above for accuracy. If they look okay,
type 'make all' to compile the main program and CGIs.
[editar] Compilando o NagiosA compilação do Nagios é bem simples /usr/src/nagios-2.0#make all /usr/src/nagios-2.0# make install Após terminada a compilação voce receberá uma mensagem parecida como: *** Support Notes ******************************************* If you have questions about configuring or running Nagios, please make sure that you: - Look at the sample config files - Read the HTML documentation - Read the FAQs online at http://www.nagios.org/faqs before you post a question to one of the mailing lists. Also make sure to include pertinent information that could help others help you. This might include: - What version of Nagios you are using - What version of the plugins you are using - Relevant snippets from your config files - Relevant error messages from the Nagios log file For those of you who are interested in contract support or consulting services for Nagios, please visit: http://www.nagios.org/contractsupport ************************************************************* Enjoy. Caso nao apresente nenhuma mensagem de erro ate esse ponto, significa que a instalação esta correndo sem problema. Após esse processo o nágios estará pronto para funcionar, fica faltando apenas instalar os scripts de configuração: /usr/src/nagios-2.0# make install-init # Instalar os script de inicialização do nagios. /usr/src/nagios-2.0# make install-commandmode # Configurar as permissões de pasta para aplicativos externos. /usr/src/nagios-2.0# make install-config # instala os arquivso de configuração do nagios (.cfg's) Um modelo de arquivo de configuração será instalado em /usr/local/nagios/etc. Agora vá em /usr/local/nagios/etc e renomeie todos os arquivos que se encontrarem la dentro para .cfg Exemplo: cgi.cfg-sample --> cgi.cfg Instalando os plugins do nagios: Agora terminada a instalação e configuração vamos instalar os plugins do nagios, os plugins são responsáveis pela execução de um comando de monitoramento. Podemos baixar os plugins no nagios np seguinte endereço: #cd /usr/src /usr/src# tar -zxvf nagios-plugins-1.4.3.tar.gz #cd /usr/src/nagios-plugins-1.4.3 /usr/src/nagios-plugins-1.4.3#./configure /usr/src/nagios-plugins-1.3.1#make /usr/src/nagios-plugins-1.3.1#make install
[editar] Instalando Nagios com MySQL# aptitude install nagios-mysql nagios-plugins Agora vamos copiar o arquivo check_nagios_db para a a pasta do nagios /etc/nagios #cp /usr/share/doc/nagios-mysql/check_nagios_db /etc/nagios Em seguida vamos da ao arquivo permissão de execução: chmod +x /etc/nagios/check_nagios_db Vamos agora criar a o banco de dados no mysql, importar as tablas e dar ao banco permissão de acesso. Criando banco de dado: mysqladmin create nagios Importando tabelas para o banco de dados: 1º Copie o arquivo para a pasta opt #cp /usr/share/doc/nagios-mysql/create_mysql.gz /opt/ 2° Descompacte o arquivo create_mysql.gz #gzip -d create_mysql.gz 3° Importando tabelas para o Danco de Dados: mysql nagios < create_mysql Definindo permissão de acesso e senha do Banco de Dados Primeiramente vamos acessar o nosso Banco de Dados: #mysql -u root -p nagios # caso tenha acabado de instalar o mysql o padrão dele e sem senha, ou seja quando o bando pedir senha é só apertar ENTER. Veremos então o prompt do mysql: mysql> Agora digite os seguintes comandos: GRANT SELECT, INSERT, UPDATE, DELETE ON nagios.* TO nagios@localhost IDENTIFIED BY 'password'; GRANT LOCK TABLES ON nagios.* TO nagios@localhost IDENTIFIED BY 'password'; Onde deve- se substituir o 'password' pela senha desejada Agora vamos fazer o nagios conversar com o base de dados do mysql, poara isso editaremos o arquivo resource.cfg que se encontra na pasta /etc/nagios/ basta clicar aqui e baixar um modelo do arquivo. Temos também que editar o arquivo cgi.cfg clique aqui para baixar um modelo. [editar] Configurando o ApachePara configurarmos o nagios para acesso web basta criarmos um arquivo na pasta: #vi /etc/apache2/sites-availiable/nagios Com o seguinte contúdo: #NameVirtualHost ip_local:80 # Definindo diretório dos CGI's no Nagios # --------------------------------------- ScriptAlias /cgi-bin/nagios /usr/lib/cgi-bin/nagios ScriptAlias /nagios/cgi-bin /usr/lib/cgi-bin/nagios Options ExecCGI AllowOverride AuthConfig Order Allow,Deny Allow From All AuthName "Nagios Access" AuthType Basic AuthUserFile /etc/nagios/htpasswd.users require valid-user # Definindo diretório so arquivos de imagem do nagios # ----------------------------------------- Alias /nagios/stylesheets /etc/nagios/stylesheets # Exibe os Hosts de em grupos # ---------------------------------------- ScriptAlias /nagios/side.html /usr/lib/cgi-bin/nagios/grouplist.cgi # Define onde estao os arquivos html do Nagios # ----------------------------------------- Alias /netsaint /usr/share/nagios/htdocs Alias /nagios /usr/share/nagios/htdocs Options FollowSymLinks AllowOverride AuthConfig Order Allow,Deny Allow From All AuthName "Nagios Access" AuthType Basic AuthUserFile /etc/nagios/htpasswd.users require valid-user #Criando logs de acesso do nagios ErrorLog /var/log/apache2/error_nagios.log CustomLog /var/log/apache2/access_nagios.log combined # END FOR NAGIOS Para baixa-lo clique aqui [editar] Configurando o NagiosAgora temos que configuarar o nagios, como ja dito anteriormente o nagios funciona com vários arquivos de configuração um dependendo do outro pra funcionar, os arquivos mais importantes sao: Observação: Essa parte do artigo serve tanto para o Debian quando Slackware cgi.cfg --> arquivo de configuração dos scripts de execução do nagios, edite-o com seu editor de texto favorito va em: use_authentication=1 # Quando essa opção esta como 0 desativa o pedido de login e senha, vamos deixa-la como default. host.cfg --> coleta informações sobre os dispositivos de rede (computador, switch, impressora, roteador) Exemplo:
# Default gateway host definition
define host{
use generic-host ; Name of host template to use
host_name gw # Nome do host a ser monitorado
alias Default Gateway # "Apelido" do host a ser monitorado
address 192.168.1.1 # Ip do host a ser monitorado
check_command check-host-alive # Forma de checagem do host
max_check_attempts 20 # Número máximo de vezes que o programa irá checar pelo serviço até reportar um erro.
notification_interval 60 # Intervalo de tempo que será enviaod uma notificação ao adminstrador do serviço.
notification_period 24x7 # Perído de Notificação
notification_options d,u,r # Tipo de Notificação (d = down, u = up e r = recovery)
}
hostgrup.cfg --> coleta informações de grupos de equipamentos (computadores, switch, impressoras) existentes em sua rede.
Exemplo:
# Default gateway host group definition
define hostgroup{
hostgroup_name gateways # Nome co Grupo
alias Routers and Gateways # Apelido para o grupo
contact_groups router-admins # Contatos para receber as informações do grupo
members gw # Membros pertencentes ao grupo, para adicionar mais membros é so separa-los por (,) vírgula
}
É importante salientar que: gateways terá que existir no arquivo de configuração hosts.cfg e router-admins terá que existir no arquivo de configuração contactgroups.cfg. contacts.cfg --> determina quem vai ser avisado caso haja algum problema com na rede.
# 'nagios' contact definition
define contact{
contact_name nagios
alias Nagios Admin
service_notification_period 24x7
host_notification_period 24x7 #define o perído de monitoramento do serviço/host, 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-by-email,notify-by-epager
host_notification_commands host-notify-by-email,host-notify-by-epager
email nagios-admin@localhost
pager pagenagios-admin@localhost
}
contactgroup.cfg --> Os contatos divididos em grupos. Exemplo:
# 'router-admins' contact group definition
define contactgroup{
contactgroup_name router-admins
alias Router Technicians
members nagios
}
service.cfg --> determina qual tipo de serviço será monitorado na maquina. Checkcommands.cfg --> configura os pluguin. O nagios.cfg --> arquivo de configuração principal do nagios, nele se encontra todas as configurações básicas do mesmo. Verificando erros na configuração do nagios: /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg Onde: /usr/local/nagios/bin/nagios --> caminho do binário do nágios -v --> parametro usado na verificação da configuração do nagios (mostra se exite algum erro) /usr/local/nagios/etc/nagios.cfg --> caminho do arquivo de configuração do nagios Se estiver usando Debian Se o resultado do comando acima for: root@ferrari:/etc/nagios# nagios -v nagios.cfg Nagios 2.5 Copyright (c) 1999-2003 Ethan Galstad (nagios@nagios.org) Last Modified: 06-02-2003 License: GPL Reading configuration data... Running pre-flight check on configuration data... Checking services... Checked 16 services. Checking hosts... Checked 3 hosts. Checking host groups... Checked 3 host groups. Checking contacts... Checked 2 contacts. Checking contact groups... Checked 1 contact groups. Checking service escalations... Checked 0 service escalations. Checking host group escalations... Checked 0 host group escalations. Checking service dependencies... Checked 0 service dependencies. Checking host escalations... Checked 0 host escalations. Checking host dependencies... Checked 0 host dependencies. Checking commands... Checked 24 commands. Checking time periods... Checked 4 time periods. Checking for circular paths between hosts... Checking for circular service execution dependencies... Checking global event handlers... Checking obsessive compulsive service processor command... Checking misc settings... Total Warnings: 0 Total Errors: 0 Lembre-se que os “checking” variam de sistema pra sistema o principal a ser verificado são o total de erros e o de warning. Levantando o nagios: /usr/local/nagios/bin/nagios -c /usr/local/nagios/etc/nagios.cfg -d Onde:
[editar] Autor
|