Script de Instalação do Cliente Zabbix em Gnu/Linux Debian’s Like

Script de Instalação do Cliente Zabbix em Gnu/Linux Debian’s Like



###################################################################
# Script instala cliente Zabbix em Linux Debian's Like 32/64 Bits #
###################################################################
#
#!/bin/bash
#
#Verifica se eh root que esta executando o script
if [ "$(id -u)" != "0" ]; then
echo
echo "Voce deve executar este script como root! Digite: sudo -s"
echo "E execute o Script novamente :)"
else
#
#Verifica se tem conexao com a internet para baixar os arquivos
if ! ping -c 3 google.com ; then
echo "Sem Acesso a Internet"
echo "Verifique o acesso do host a internet e execute novemente o script!"
exit
else
echo "Acesso a Internet Ok"
echo
fi
#
#Verifica a arquitetura se eh 32-Bits ou 64-Bits
if [ "`uname -a | grep 64`" ]; then
echo "Linux 64-bit"
sudo wget http://www.zabbix.com/downloads/2.0.3/zabbix_agents_2.0.3.linux2_6.amd64.tar.gz
sudo tar xvfz zabbix_agents_2.0.3.linux2_6.amd64.tar.gz
else
echo "Linux 32-bit"
sudo wget http://www.zabbix.com/downloads/2.0.3/zabbix_agents_2.0.3.linux2_6.i386.tar.gz
sudo tar xvfz zabbix_agents_2.0.3.linux2_6.i386.tar.gz
fi
#
#Copia os binario para seus respectivos lugar.
sudo cp -f bin/* /usr/local/bin/
sudo cp -f sbin/* /usr/local/sbin/
#
#Cria o arquivo de configuração do agent
sudo touch /usr/local/etc/zabbix_agent.conf
#
echo
echo "Digite o IP do Servidor do Zabbix"
echo
read ip
#
#Adiciona o IP do servidor Zabbix no campo Server como mostrado abaixo do arquivo zabbix_agent.conf.
sudo echo "Server=$ip" > /usr/local/etc/zabbix_agent.conf
sudo echo "Timeout=3" >> /usr/local/etc/zabbix_agent.conf
#
#Criar o arquivo zabbix_agentd.conf
sudo touch /usr/local/etc/zabbix_agentd.conf
#
#Adiciona as informação do servidor ao arquivo zabbix_agentd.conf
sudo echo "Server=$ip" > /usr/local/etc/zabbix_agentd.conf
sudo echo "Hostname=nome" >> /usr/local/etc/zabbix_agentd.conf
sudo echo "ListenPort=10050" >> /usr/local/etc/zabbix_agentd.conf
sudo echo "StartAgents=5" >> /usr/local/etc/zabbix_agentd.conf
sudo echo "RefreshActiveChecks=120" >> /usr/local/etc/zabbix_agentd.conf
sudo echo "DebugLevel=4" >> /usr/local/etc/zabbix_agentd.conf
sudo echo "LogFile=/var/log/zabbix_agentd.log" >> /usr/local/etc/zabbix_agentd.conf
sudo echo "PidFile=/tmp/zabbix_agentd.pid" >> /usr/local/etc/zabbix_agentd.conf
#
#Captura o hostname da maquina e configura no arquivo /usr/local/etc/zabbix_agentd.conf
hostname2=`hostname`
sudo sed -i 's/Hostname=nome/Hostname='$hostname2'/g' /usr/local/etc/zabbix_agentd.conf
#
#Verifica se serviço do zabbix ja consta no services caso não, adiciona.
if [ `grep -c zabbix /etc/services` -gt 0 ]; then
sudo echo "zabbix, ja consta no services"
else
sudo echo "zabbix_agent 10050/tcp" >> /etc/services
sudo echo "zabbix-agent 10051/udp" >> /etc/services
sudo echo "zabbix_trap 10050/tcp" >> /etc/services
sudo echo "zabbix_trap 10051/udp" >> /etc/services
fi
#
#Cria o Usuario Zabbix
sudo useradd -c 'zabbix' -d / -M -s /sbin/nologin zabbix
#
#Cria o arquivo
sudo touch /var/log/zabbix_agentd.log
sudo chown zabbix:zabbix /var/log/zabbix_agentd.log
#
#Cria o arquivo de gerenciamento do serviço
sudo touch /etc/init.d/zabbix_agentd
#
#Cria o arquivo salva o pid
sudo touch /tmp/zabbix_agentd.pid
chmod 777 /tmp/zabbix_agentd.pid
#
#Baixa o Script de Inicialização
wget http://openisp.net/openisp/unxsVZ/export/2218/trunk/tools/datacenter/zabbix_agentd.init.d.script
#
#Copia o Script para o diretorio de serviços e libera o firewall
cp -rf zabbix_agentd.init.d.script /etc/init.d/zabbix_agentd
#
#Apaga o "exit 0" do arquivo /etc/init.d/zabbix_agentd
sudo sed -i 's/exit 0/ /g' /etc/init.d/zabbix_agentd
#
#Libera o serviço no firewall
echo "iptables -A INPUT -p udp -m udp --dport 10050 -j ACCEPT" >> /etc/init.d/zabbix_agentd
echo "iptables -A INPUT -p tcp -m tcp --dport 10050 -j ACCEPT" >> /etc/init.d/zabbix_agentd
echo "iptables -A INPUT -p udp -m udp --dport 10051 -j ACCEPT" >> /etc/init.d/zabbix_agentd
echo "iptables -A INPUT -p tcp -m tcp --dport 10051 -j ACCEPT" >> /etc/init.d/zabbix_agentd
#
#Copia o "exit 0" para o fim do arquivo
echo "exit 0" >> /etc/init.d/zabbix_agentd
#
#Remove o script que foi baixado
rm -rf zabbix_agentd.init.d.script
#
#Reconfigura os script de inicialização
##################
sudo sed -i 's:/etc/zabbix/zabbix_agentd.conf:/usr/local/etc/zabbix_agentd.conf:g' /etc/init.d/zabbix_agentd
##################
#
#Torna o script executavel.
sudo chmod +x /etc/init.d/zabbix_agentd
#
#Habilitar o script para ser executado no boot do sistema operacional.
sudo update-rc.d -f zabbix_agentd defaults
#
#Iniciar o Agente com o comando abaixo:
sudo /etc/init.d/zabbix_agentd start
#
#limpa os arquivos gerados
rm -rf sbin
rm -rf bin
rm -rf zabbix_agents_2.0.3.linux2_6.*
#
fi
echo "Instalado o cliente zabbix!"
exit