É possível acessar a versão mais recente do Zabbix compilando-a a partir do código-fonte.
A seguir, fornecemos um tutorial com os passos para instalação do Zabbix a partir do código-fonte.
Vá até a página de download do Zabbix e baixe o arquivo fonte. Uma vez baixado, extraia os fontes, executando:
Informe a versão correta do Zabbix no comando. Ela deve corresponder ao nome do arquivo baixado.
Para todos os processos de daemon do Zabbix, um usuário sem privilégios é requirido. Se um daemon Zabbix é iniciado a partir de uma conta de usuário sem privilégios, ele será executado como tal usuário.
No entando, se um daemon é iniciado a partir de uma conta 'root', ele mudará para uma conta de usuário 'zabbix', que deve existir. Para criar esta conta de usuário (em seu próprio grupo, "zabbix"),
em sistemas baseados em RedHat, execute:
groupadd --system zabbix
useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
em sistemas baseados em Debian, execute:
addgroup --system --quiet zabbix
adduser --quiet --system --disabled-login --ingroup zabbix --home /var/lib/zabbix --no-create-home zabbix
Os processos Zabbix não precisam de um diretório home, sendo este o motivo de não recomendarmos a sua criação. No entanto, se você estiver usando alguma funcionalidade que demande tal diretório (p.e. armazenar credenciais MySQL em $HOME/.my.cnf
), você está livre para criá-lo usando os seguintes comandos:
Em sistemas baseados em RedHat, execute:
Em sistemas baseados em Debian, execute:
Não é necessária uma conta de usuário separada para a instalação do Zabbix Frontend.
Se o Zabbix Server e Agent são executados na mesma máquina é recomendado usar um usuário diferente para executar o server daquele usado para o agent. Caso contrário, se ambos são executados com o mesmo usuário, o agent pode acessar os arquivos de configuração do server e assim qualquer usuário do Zabbix com perfil de Admin pode facilmente, por exemplo, descobrir a senha do banco de dados.
Executar o Zabbix como root
, bin
, ou qualquer outra conta com permissões especiais é um risco à segurança.
Para os daemons do Zabbix Server e Proxy, bem como para o Zabbix Frontend, um banco de dados é necessário. No entanto não é necessário para executar o Zabbix Agent.
Scripts SQL são disponibilizados para criação do schema de banco de dados e carga do conjunto de dados iniciais. O banco de dados do Zabbix Proxy necessita apenas do schema enquanto que o banco de dados do Zabbix Server requer também o conjunto de dados junto ao schema.
Tendo criado um banco de dados para o Zabbix, prossiga para os próximos passos de compilação do Zabbix.
Ao configurar os fontes para o Zabbix Server ou Proxy, você deve especificar o tipo de banco de dados a ser usado. Apenas um tipo de banco de dados pode ser compilado com um processo Server ou Proxy por vez.
Para ver todas as opções de configuração suportadas, dentro do diretório de fonte do Zabbix extraído, execute:
Para configurar os fontes para o Zabbix Server e Agent, você pode executar algo como o seguinte:
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi
Para configurar os fontes para o Zabbix Server (com PostgreSQL, etc.), você pode usar:
Para configurar os fontes para Zabbix Proxy (com SQLite, etc.), você pode executar:
Para configurar os fontes para o Zabbix Agent, você pode utilizar:
ou, para Zabbix Agent 2:
Um ambiente Go configurado com uma versão atualmente suportada é necessário para compilar o Zabbix Agent 2. Consulte golang.org para instruções de instalação.
Notas sobre as opções de compilação:
web.page.*
do Zabbix Agent. Note que o cURL na versão 7.20.0 ou maior é necessário com a opção de configuração --with-libcurl.Se ./configure falhar devido bibliotecas ausentes ou alguma outra circunstância, por favor verifique o config.log
para mais detalhes quanto ao erro. Por exemplo, se libssl
está ausente, a mensagem de erro imediata pode ser confusa:
Enquanto que o config.log
possui uma descrição mais detalhada:
Veja também:
Se instalando através do repositório Git do Zabbix, é necessário primeiro executar:
$ make dbschema
Esta etapa deve ser executada usando um usuário com permissões suficientes (comumente 'root', ou utilizando elevação de usuário com sudo
).
A execução do comando make install
instalará, por padrão, os binários dos daemons (zabbix_server, zabbix_agentd, zabbix_proxy) em /usr/local/sbin e os binários de client (zabbix_get, zabbix_sender) em /usr/local/bin.
Para especificar um local diferente de /usr/local, use a chave --prefix na etapa anterior de configuração dos fontes, por exemplo --prefix=/home/zabbix. Neste caso os binários dos daemons seriam instalados dentro de <prefix>/sbin, enquanto que os utilitários em <prefix>/bin. As páginas de manual seriam instaladas em <prefix>/share.
Você precisa configurar este arquivo para cada máquina com zabbix_agentd instalado.
Você deve especificar o endereço IP do servidor Zabbix no arquivo. Conexões de outros endereços serão negadas.
Você deve especificar o nome do banco de dados, usuário e senha (se usando alguma).
O restante dos parâmetros o atenderão com seus valores padrão se você tiver um ambiente pequeno (até 10 máquinas monitoradas). Todavia, você deve alterar os parâmetros padrão se você pretende maximizar a performance do Zabbix Server (ou Proxy). Consulte a seção ajustes de performance para mais detalhes.
Você deve especificar o endereço IP e o nome do servidor do Zabbix Proxy (que deve ser conhecido pelo Zabbix Server), bem como o nome do banco de dados, usuário e senha (se usando alguma).
Com SQLite deve ser especificado o caminho completo para o arquivo de banco de dados; Usuário e senha do banco de dados não são exigidos.
Execute o zabbix_server no lado do servidor:
Certifique-se de que seu sistema permita a alocação de 36MB (ou um pouco mais) de memória compartilhada, caso contrário o Server pode não iniciar e você verá a mensagem "Impossível alocar memória compartilhada para <tipo de cache>." (se log em inglês: "Cannot allocate shared memory for <type of cache>.") no arquivo de log. Isto pode ocorrer com FreeBSD, Solaris 8.
Verifique a seção "Veja também" ao final desta página para descobrir como configurar a memória compartilhada.
Execute zabbix_agentd em todas as máquinas monitoradas:
Certifique-se de que seu sistema permita a alocação de 2MB de memória compartilhada, caso contrário o Agente pode não iniciar e você verá a mensagem "Impossível alocar memória compartilhada para o coletor" ( se log em inglês: "Cannot allocate shared memory for collector.") no arquivo de log. Isto pode ocorrer em Solaris 8.
Se você tem instalado o Zabbix Proxy, execute zabbix_proxy.
O frontend do Zabbix é escrito em PHP, assim, para executá-lo, é necessário um webserver com suporte ao PHP. A instalação é feita com a simples cópia dos arquivos PHP do diretório ui para o diretório de documentos HTML do webserver.
Locais comuns para o diretório de documentos HTML no Apache Web Server incluem:
Sugere-se usar um subdiretório em vez da raíz do diretório HTML. Para criar um subdiretório e copiar os arquivos do frontend do Zabbix para dentro dele, execute os seguintes comandos, informando o diretório raíz junto ao nome do subdiretório que se prentede criar:
Para mais instruções quando usando idioma diferente do Inglês, consulte Instalação de idiomas de frontend adicionais.
Por favor, consulte a página Instalação da interface web para se informar sobre o assitente de instalação do Zabbix frontend.
A instalação do Java Gateway é exigida apenas se você pretende monitorar aplicações JMX. O Java Gateway é leve e não necessita de um banco de dados.
Para instalar a partir dos fontes, primeiro faça o download e então extraia o arquivo fonte.
Para compilar o Java Gateway, execute o script ./configure
com a opção --enable-java
. É aconselhável que você especifique --prefix
para direcionar a instalação para outro local diferente do padrão /usr/local, porque a instalação criará uma árvore de diretórios completa, e não apenas um simples executável.
Para compilar e empacotar o Java Gateway em um arquivo JAR, execute make
. Note que para este processo você necessitará dos executáveis javac
e jar
no seu path.
Agora você tem um arquivo zabbix-java-gateway-$VERSION.jar em src/zabbix_java/bin. Se você se sente confortável em executar o Java Gateway a partir de src/zabbix_java no diretório da distribuição, então você pode prosseguir às instruções de configuração e execução do Java Gateway. Caso contrário, certifique-se de possuir os privilégios necessários e execute make install
.
Prossiga até Configuração inicial para mais detalhes na configuração e execução do Java Gateway.
A instalação do serviço web Zabbix só é necessária se você quiser usarrelatório agendado.
Para instalar a partir de fontes, primeiro download e extraia o arquivo com as fontes .
Para compilar o serviço web Zabbix, execute o script ./configure
com opção --enable-webservice
.
Uma versãoGo configurada com ambiente 1.13+é necessário para construir o serviço web Zabbix.
Execute zabbix_web_service na máquina onde o serviço web está instalado:
Prossiga para configuração para obter mais detalhes sobre como configurar a geração de relatórios agendados.