Instalação e configuração do Zabbix - PoP-GO

Transcrição

Instalação e configuração do Zabbix - PoP-GO
Documentação do Zabbix
1. Introdução
Zabbix (http://www.zabbix.com) é uma solução open source de monitoramento
para servidores, serviços e dispositivos de rede. De fácil utilização ele fornece mais
funcionalidades do que o Nagios (http://www.nagios.org) ou BigBrother (http://bb4.com).
Está sendo utilizada para monitoramento dos enlaces, verificação da latência dos
links, e níveis de utilização de hardware dos servidores.
2. Instalando o APACHE
O source do Apache-1.3.37 pode ser baixado da seguinte URL (Apache-1.3.37). A
compilação foi padrão. Recomendo o uso do apache. Slackbuild para instalação.
# ./configure \
--with-layout=Slackware \
--enable-module=most \
--enable-shared=max \
--manualdir=/var/www/htdocs/manual \
# make -j3
# checkinstall
Fazer as seguintes alterações no arquivo de configuração httpd.conf:
Em DirectoryIndex colocar:
<IfModule mod_dir.c>
DirectoryIndex index.html index.php
</IfModule>
Retire o comentário das linhas (final do arquivo):
Include /etc/apache/mod_php.conf
Include /etc/apache/mod_ssl.conf
3. Instalando o PHP com módulo para suporte no Apache
O source do PHP-4.4.4 pode ser baixado do seguinte link (PHP-4.4.4). A compilação foi
padrão. Recomendo o uso do php.Slackbuild. É necessário ter o módulo com suporte ao
Apache, jpeg e MySQL.
# ./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-discard-path \
--with-config-file-path=/etc/apache \
--enable-safe-mode \
--with-openssl \
--with-mhash \
--enable-bcmath \
--with-bz2 \
--with-pic \
--enable-calendar \
--enable-ctype \
--with-gdbm \
--with-db3 \
--with-imap-ssl=$IMAPLIBDIR \
--with-imap=$IMAPLIBDIR \
--enable-ftp \
--with-iconv \
--with-dom \
--with-exif \
--enable-exif \
--with-gd \
--enable-gd-native-ttf \
--with-jpeg-dir=/usr \
--with-png \
--with-gmp \
--with-pcre-regex=/usr \
--with-mysql=shared,/usr \
--with-gettext=shared,/usr \
--with-expat-dir=/usr \
--with-xml \
--enable-wddx \
--with-mm=/usr \
--enable-trans-sid \
--enable-shmop \
--enable-sockets \
--with-regex=php \
--enable-yp \
--enable-memory-limit \
--with-tsrm-pthreads \
--enable-shared \
--disable-debug \
--enable-fastcgi \
--enable-force-cgi-redirect \
--disable-static \
--with-apxs=/usr/sbin/apxs \
--with-zlib=/usr
# make –j3
# checkinstall
Após a compilação, cria uma página de teste para ver se está tudo OK. Crie um arquivo
index.php, no seu DocumentRoot, com o seguinte conteúdo:
<? phpinfo(); ?>
Reinicie os serviços e acesse no seu browser a URL, se estiver OK, vão aparecer às
informações do seu sistema:
http://localhost/
4. Configurando o MySQL-4.1.21
Baixe o arquivo pré-compilado do seguinte link (MySQL-4.1.21) e instale. Após
isso faça o login com o usuário mysql:
# su mysql
$ mysql_install_db /*Instala a base de dados MySQL
$ exit
# mysqld_safe --user=mysql& /*Inicia o MySQL com usuário mysql
# mysql_secure_installation /* Realiza os ajustes necessários
Vão aparecer várias perguntas, como setar a senha de root, opção para remover
usuários anônimos do banco dados e base de dados de teste. Neste ponto prefiro que deixe
a base de teste, pois na hora da instalação do módulo perl DBD::Mysql, ele fará um teste de
conexão nesta tabela. Após isso a tabela e o usuário poderão ser removidos. Caso seja
removido agora não tem nenhum problema, basta se conectar como root na instalação do
módulo.
O arquivo my.cnf que eu usei foi a seguinte:
[mysql.server]
datadir=/var/lib/mysql
socket=/var/run/mysql/mysql.sock
[mysqladmin]
socket=/var/run/mysql/mysql.sock
[mysqld]
datadir=/var/lib/mysql
socket=/var/run/mysql/mysql.sock
language=/usr/share/mysql/english/
log=/var/log/mysql/mysqld.log
[mysql]
socket=/var/run/mysql/mysql.sock
Crie o diretório /var/log/mysql e dê permissão para o usuário mysql. Reinicie o
MySQL.
Zabbix vem com os certificados do SQL usados criar o schema requerido da base de
dados e introduzir também uma configuração padrão.
Para o mysql será necessário utilizar:
shell> mysql -u<username> -p<password>
mysql> create database zabbix;
mysql> quit;
shell> cd create/schema
shell> cat mysql.sql |mysql -u<username> -p<password> zabbix
shell> cd ../data
shell> cat data.sql |mysql -u<username> -p<password> zabbix
shell> cat images_mysql.sql |mysql -u<username> -p<password> zabbix
Instalando ZABBIX
Antes de começarmos a instalação, é necessário e válido, avaliarmos se os seguintes
software estão instalados:
Mysql Headers and Libraries (ou, Oracle, ou PostgreSQL, ou SQLite)
NET-SNMP (ou UCD-SNMP)
Iksemel (para Jabber)
Libcurl library
C compilador
GNU Make
Compilando
Entre no diretório zabbix-1.4, você pode verificar os arquivos existentes nesta pasta, por
padrão a compilação utilizada foi, a linha a seguir, porém existem outras opões que podem
ser utilizadas também, e podem ser vistas com o comando ./configure –help.
./configure --prefix=/opt/zabbix --enable-server --enable-agent --with-mysql --with-libcurl --with-net-snmp
Onde:
** --prefix= é a opção para definir a localização de onde será instalado os binários do
Zabbix
** --enable-server ativa a opção de servidor
** --enable-agent ativa a opção de agent na máquina local
** --with-mysql especifica o tipo de banco de dados a ser utilizado
** --with-libcurl módulo necessário para monitoramento web
** --with-net-snmp módulo snmp
É possível que exista o seguinte erro, isto se dá pela falta de uma library não instalada
no sistema, que é a curl library.
checking for curl-config... no
configure: error: Not found Curl library
Para correção da mesma, baixe :
# wget http://mirror.pacific.net.au/linux/slackware/slackware-current/slackware/n/curl-7.16.2-i486-1.tgz
# installpkg curl-7.16.2-i486-1.tgz
Depois volte ao diretório para iniciar novamente a compilação do programa
./configure --prefix=/opt/zabbix --enable-server --enable-agent --with-mysql --with-libcurl --with-net-snmp
Caso esteje tudo correto, deverá aparecer a seguinte tela no fim da compilação:
Configuration:
Detected OS:
linux-gnu
Install path: /opt/zabbix
Compilation arch: linux
Compiler:
gcc
Compiler flags: -g -O2 -I/usr/include/mysql -march=i486 -mcpu=i686
-I/usr/local/include
Linker flags:
-L/usr/lib/mysql -L/usr/local/lib -L/usr/local/lib
Libraries:
-lm -lresolv -lnsl -lmysqlclient -lcurl -lnetsnmp
-I.
Enable server: yes
With database: MySQL
Enable agent:
yes
***********************************************************
*
Now run 'make install'
*
*
*
*
Thank you for using ZABBIX!
*
*
<http://www.zabbix.com>
*
***********************************************************
Aparecendo a tela acima, voltemos para o comando MAKE INSTALL
Ocorrerá a compilação do zabbix, é bom ficar atento para verificação de caso haja
qualquer erro. Se não, verifique dentro do diretório instalado a existência da pasta Bin, que
contém os binários gerados pelo zabbix.
# cd /opt/zabbix
# ls
bin
Por padrão apenas os binários são instalados na máquina, logo, voltando ao diretório
/zabbix-1.4
# cd /zabbix-1.4
Neste diretório será possível encontrar os arquivos zabbix_agent.conf
zabbix_agentd.conf zabbix_server.conf zabbix_trapper.conf. Porém nesta instalação
usaremos apenas o zabbix_server.conf
# cd /zabbix-1.4/misc/conf
# cp zabbix_server.conf /opt/zabbix
Editando o Arquivo zabbix_server.conf
É necessário apenas alterar os seguintes valores, e descomentar a linha DBPassword que
por padrão vem comentada. Nestes valores insira o seu usuário e senha do mysql
DBUser=root
DBPassword=<password>
Copiando os arquivos para exibição via web.
Dentro da pasta de instalação existe um diretório chamado frontends, o conteúdo deste deve
ser copiado para dentro do diretório disponibilizado no apache, no nosso caso criamos um
chamado zabbix.
Entre no diretório frontends dentro da pasta zabbix-1.4
# cd zabbix-1.4
# cd frontends/php
# cp -rf * /(diretório padrao do apache)
Talvez seja necessário setar duas variáveis no php.ini
Setar o tempo máximo de execução de 30 para 300 milissegundos e setar a zona de tempo
para American/Sao_Paulo
max_execution_time = 300
date.timezone = American/Sao_Paulo
Estando tudo correto, podemos iniciar a instalação do serviço zabbix. Podemos seguir a
partir dos screens abaixo:
Iniciando a instalação, abra seu brownser e digite o endereço utilizado para a instalação do
zabbix, no caso, o servidor onde foi instalado e pasta escolhida no apache:
Clique em NEXT
Marque o campo de seleção I AGREE e depois vá em next
Se toda a configuração estiver ok, a tela do Zabbix aparecerá como esta ai encima, caso
contrário, verifique as informações em fail e corrija se necessário.
Efetue o teste de conexão no banco de dados. Com usuário criado no processo de instalação
e importação de tabelas do zabbix ao mysql.
Clique em next
Salve o arquivo de configuração zabbix.conf.php e coloque no lugar do arquivo padrão dentro
do seu diretório de confs do zabbix.
NEXT
Efetue o login como administrador para iniciar a utilização do servidor.
Depois da instalação inicial, o Zabbix tem somente 2 usuários definidos, "Admin" é o
superusuário. O usuário “Admin” possui todas as permissões, já o usuário “Guest” é o
usuário especial e default. Ele não precisa logar, porém por default suas pemissões são
somente leitura.
Para criação de um novo usuário, vá para a guia Administration, depois Users, na guia no
campo superior direito, vá para Users, e logo a frente clique no botão CREATE USER
Por padrão, o usuário criado, não possui todas as permissões desejadas. Defina conforme
seu acesso.
Para inserir as medias type, para recebimento de alertas em seu email.
Agora sua media “email”está definida. Mas a media precisa ser linkada com os usuários,
caso contrário, não será utilizada.
Adicionando agents e hosts
Nós iremos colocar o agent Zabbix rodando em nosso Zabbix server, e vamos monitorar esse
mesmo servidor. Clique em “Create host”. Entre com todas os detalhes necessários.
Podemos também utilizar um template Unix_t para simplificar nossa configuração. Caso não
queira utilizar alguns dos templates prontos, escolha manualmente adicionando os Items e
Triggers para o hosts a serem monitorados.
Configurations // Hosts // Create Hosts
Nossos hosts monitorados
Não tivemos interesse em utilizar os templates oferecidos pela ferramenta. Utilizamos a
principio a verificação de um trigger icmp para teste de latência e verificação das pontas
ativas.
Utilizando Item para monitoramento.
Configuration // Items // Create Items
Criando TRIGGERS
Configurations // Triggers //
Criando os Actions
Cria-se o nome da atribuição, no caso action_popgo, seleciona-se a opção triggers, e o tipo
de aviso que será utilizado, warning, depois adicionar a qual grupo será enviado o email
Estas são as principais configurações básicas a serem criadas, outras configurações podem
ser encontradas no manual original da ferramenta zabbix
link: http://www.zabbix.com/downloads/ZABBIX%20Manual%20v1.4.pdf
Observações:
Problemas foram encontrados ao utilizar a versão 4.0.27 do mysql, recomenda-se que
a versão seja atualizada para 5

Documentos relacionados

Tutorial de instalação do Zabbix Agent 3 no Debian ou Ubuntu

Tutorial de instalação do Zabbix Agent 3 no Debian ou Ubuntu --with-libcurl=/usr/bin/curl-config: habilita o uso da biblioteca curl, usada no monitoramento de aplicações Web. Opcionalmente você pode informar a localização do comando curl-config (use o comand...

Leia mais

Inventariação e Monitorização de Sistemas e Redes Anexos

Inventariação e Monitorização de Sistemas e Redes Anexos # cd /usr/src/ # tar -xzvf # cd # ./configure --enable-server --enable-agent --with-mysql -with-net-snmp --with-libcurl --with-ldap --w...

Leia mais

Manual em PDF

Manual em PDF # cd /usr/src/ # wget -c http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest %20Stable/1.8.3/zabbix-1.8.3.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fzabbix

Leia mais