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
--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 maisInventariação e Monitorização de Sistemas e Redes Anexos
# cd /usr/src/
# tar -xzvf
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