天天看点

自动化安装zabbix脚本(3.0/3.2)

自动化安装zabbix脚本(3.0/3.2)

一、zabbix简介

    zabbix是一个基于web界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

二、zabbix特点

   1.企业级的、开源的、分布式

   2.灵活的告警机制、存储数据提供杰出的报告及图形

   3.通过内置的绘图方法实现监控数据实时绘图 

   4.允许灵活地自定义问题阀值

   5.支持主动与被动方式(agent、snmp、ipmi、自定义脚本)

三、自动化安装zabbix(3.0/3.2)脚本

#!/bin/bash

#date 2017/1/20

#mail [email protected]

[ $(id -u) != "0" ] && echo "error: you must be root to run this script" && exit 1

export path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

sed -i "s/selinux=enforcing/selinux=disabled/"  /etc/selinux/config

setenforce 0

which  ntpdate

if [ $? -eq 0 ];then

/usr/sbin/ntpdate time1.aliyun.com

echo "*/5 * * * * /usr/sbin/ntpdate -s time1.aliyun.com">>/var/spool/cron/root

else

yum install ntpdate -y

fi

clear

echo "##########################################"

echo "#       auto install zabbix.      ##"

echo "#      press ctrl + c to cancel    ##"

echo "#       any key to continue       ##"

echo "(1) install zabbix3.0"

echo "(2) install zabbix3.2"

echo "(3) exit"

read -p "please input your choice:" num

case $num in 

1)

url="http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm"

ver=zabbix-3.0

;;

2)

url="http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm"

ver=zabbix-3.2

3)

echo -e "\033[41;37m you choice channel! \033[0m" && exit 0

*)

echo -e "\033[41;37m input error! place input{1|2|3} \033[0m" && exit 1

esac

echo -e "\033[32m you choice install $ver.install\033[0m"

echo -e "\033[5m press any key to start install $ver... \033[0m"

read -n 1

tdir=/tools

ip=`ifconfig eth0 | grep "inet addr" | awk -f"[: ]+" '{print $4}'`

yum remove php* -y

rpm -uvh http://mirror.webtatic.com/yum/el6/latest.rpm

ls /etc/yum.repos.d/webtatic.repo

yum -y install `yum list|grep php55w|awk '{printf ("%s ",$1)}'` --skip-broken

sed -i "s/;date.timezone =/date.timezone = asia\/shanghai/g" /etc/php.ini 

sed -i "s#`grep max_execution_time /etc/php.ini`#max_execution_time = 300#g" /etc/php.ini

#max_execution_time = 30

sed -i "s#`grep post_max_size /etc/php.ini`#post_max_size = 32m#g" /etc/php.ini 

sed -i "s#`grep max_input_time\ = /etc/php.ini`#max_input_time = 300#g" /etc/php.ini 

sed -i "s#`grep memory_limit /etc/php.ini`#memory_limit = 128m#g" /etc/php.ini

service php-fpm start /tmp/php-install.log 2>&1

stat=`echo $?`

port=`netstat -lntup|grep php-fpm|wc -l`

if [ $stat -eq 0 ] && [ $port -eq 1 ];then

echo -e "\033[32m php is install success! \033[0m"

echo -e "\033[32m php install file.please check /tmp/php-install.log \033[0m"

yum

install -y ntpdate mailx dos2unix vim zcat wget net-snmp-utils gcc

gcc-c++ autoconf httpd libxml* mysql mysql-server  httpd-manual mod_ssl

mod_perl mod_auth_mysql mysql-connector-odbc mysql-devel

libdbi-dbd-mysql net-snmp-devel curl-devel unixodbc-devel openipmi-devel

java-devel fping 

service mysqld start

groupadd zabbix -g 201 

useradd -g zabbix -u 201 -m -s /sbin/nologin zabbix

rpm -ivh  $url

ls /etc/yum.repos.d/zabbix.repo

zab=`echo $?`

if [ ! -d $tdir ];then

        /bin/mkdir $tdir && cd $tdir

yum install -y zabbix-agent.x86_64 zabbix-get.x86_64 zabbix-server-mysql.x86_64 zabbix-web.noarch zabbix-web-mysql.noarch

if [ "$ver" == "zabbix-3.0" ];then

elif [ "$ver" == "zabbix-3.2" ];then

if [ -d $tdir ];then

cd $tdir

for

pag in zabbix-server-mysql-3.2.3-1.el6.x86_64.rpm

zabbix-web-3.2.3-1.el6.noarch.rpm

zabbix-web-mysql-3.2.3-1.el6.noarch.rpm

zabbix-agent-3.2.3-1.el6.x86_64.rpm

do

wget -c http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/deprecated/$pag

done

yum install -y zabbix-server-mysql* zabbix-web-mysql* zabbix-agent zabbix-web*

echo "error zabbixi version"

mysql -uroot -e "create database zabbix character set utf8;" 

mysql -uroot -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"

mysql -uroot -e "flush privileges;"

cd /usr/share/doc

mysqldir=`ls -l /usr/share/doc/ | grep zabbix-server-mysql* | awk  '{print $9}'`

cd $mysqldir

zcat create.sql.gz | mysql -uroot zabbix

mysqladmin -uroot password "mysqladmin"

cd /usr/share/

cp -r ./zabbix/ /var/www/html/zabbix 

echo "dbpassword=zabbix" >> /etc/zabbix/zabbix_server.conf

service httpd start 

service zabbix-server start 

service zabbix-agent start 

chkconfig httpd on 

chkconfig mysqld on 

chkconfig php-fpm on

chkconfig zabbix-server on 

chkconfig zabbix-agent on

/etc/init.d/iptables status >/dev/null 2>&1

iptables -i input -p tcp --dport 443 -j accept &&

iptables -i input -p tcp --dport 10051 -j accept &&

iptables -i input -p tcp --dport 10050 -j accept &&

iptables -i input -p tcp --dport 3000 -j accept &&

#iptables -i input -p tcp --dport 3306 -j accept && 

service iptables save >/dev/null 2>&1

/etc/init.d/iptables restart

echo -e "\033[32m iptables is stopd\033[0m"

stat=`/bin/ps -ef|grep zabbix_server|grep -v grep|wc -l`

port=`/bin/netstat -lntup|grep zabbix_server|wc -l`

if [ $stat -ne 0 ] && [ $port -ne 0 ];then

echo -e "\033[42;37m zabbix$ver is install success,username:admin password:zabbix \033[0m"

echo -e "\033[42;37m mysql username:root password:mysqladmin \033[0m"

echo -e "\033[42;37m rul:https://$ip/zabbix \033[0m"

四、脚本说明

1.执行脚本如下:(选择喜欢的版本安装,目前最新的3.4官方有说明,但还未发现软件包)

自动化安装zabbix脚本(3.0/3.2)

2.按任继健回车开始安装

自动化安装zabbix脚本(3.0/3.2)

3.安装完成如下图

自动化安装zabbix脚本(3.0/3.2)

4.通过浏览器打开脚本执行完的url进行安装即可。

本文出自 “kaliarch” 博客,请务必保留此出处http://kaliarch.blog.51cto.com/8966921/1896968