Zabbix3.0/3.2/3.4自动安装脚本

一、zabbix简介

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

二、zabbix特点

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

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

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

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

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

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

#!/bin/bash
#Date 2017/8/31
[ $( 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
    /usr/sbin/ntpdate  time1.aliyun.com
    echo  "*/5 * * * * /usr/sbin/ntpdate -s time1.aliyun.com" >> /var/spool/cron/root   
fi
clear
echo  "##########################################"
echo  "#       Auto Install zabbix.            ##"
echo  "#       Press Ctrl + C to cancel        ##"
echo  "#       Any key to continue             ##"
echo  "##########################################"
echo  "(1) Install zabbix3.0"
echo  "(2) Install zabbix3.2"
echo  "(3) Install zabbix3.4"
echo  "(4) 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)
    URL= "http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm"
    VER=zabbix-3.4
;;
4)
    echo  -e  "\033[41;37m You choice channel! \033[0m"  &&  exit  0
;;
*)
    echo  -e  "\033[41;37m Input Error! Place input{1|2|3|4} \033[0m"  &&  exit  1
;;
esac
clear
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
if  [ $? - eq  0 ]; then
    yum -y  install  `yum list| grep  php71w| awk  '{printf ("%s ",$1)}' ` --skip-broken
fi
if  [ $? - eq  0 ]; then
    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
fi
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"
else
    echo  -e  "\033[32m PHP install file.please check /tmp/php-install.log \033[0m"
fi
yum  install  -y ntpdate mailx dos2unix vim zcat wget net-snmp-utils gcc gcc-c++ autoconf httpd libxml* mysql mysql-server  httpd-manua
l 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  clear
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
fi
if  "$VER"  ==  "zabbix-3.0"  ]; then
    yum  install  -y zabbix-agent.x86_64 zabbix-get.x86_64 zabbix-server-mysql.x86_64 zabbix-web.noarch zabbix-web-mysql.noarch
elif  "$VER"  ==  "zabbix-3.2"  ]; then
    if  [ -d $TDIR ]; then
        cd  $TDIR
    else
            /bin/mkdir  $TDIR &&  cd  $TDIR
    fi
    if  [ $? - eq  0 ]; then
        for  PAG  in  zabbix-server-mysql-3.2.7-1.el6.x86_64.rpm zabbix-web-3.2.7-1.el6.noarch.rpm zabbix-web-mysql-3.2.7-1.el6.
noarch.rpm          do
            wget -c --timeout=5 http: //repo .zabbix.com /zabbix/3 .2 /rhel/6/x86_64/deprecated/ $PAG
        done
        wget -c --timeout=5 http: //repo .zabbix.com /zabbix/3 .2 /rhel/6/x86_64/zabbix-agent-3 .2.7-1.el6.x86_64.rpm
        yum localinstall -y zabbix-server-mysql* zabbix-web-mysql* zabbix-agent zabbix-web*
        if  [ $? - eq  0 ]; then
            exit  1 &&  echo  "Zabbix Softward install fail,Please check dirname /tools"
        fi
    fi
elif  "$VER"  ==  "zabbix-3.4"  ]; then
    if  [ -d $TDIR ]; then
        cd  $TDIR
    else
            /bin/mkdir  $TDIR &&  cd  $TDIR
    fi
    if  [ $? - eq  0 ]; then
        for  PAG  in  zabbix-server-mysql-3.4.0-1.el6.x86_64.rpm zabbix-web-3.4.0-1.el6.noarch.rpm zabbix-web-mysql-3.4.0-1.el6.
noarch.rpm          do
            wget -c --timeout=5 --tries=35 --user-agent="Mozilla /5 .0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit /534 .
16 (KHTML, like Gecko)Chrome /10 .0.648.204 Safari /534 .16" http: //repo .zabbix.com /zabbix/3 .4 /rhel/6/x86_64/deprecated/ $PAG        done
        wget -c --timeout=5 --tries=35 --user-agent="Mozilla /5 .0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit /534 .16 (KHTM
L, like Gecko)Chrome /10 .0.648.204 Safari /534 .16" http: //repo .zabbix.com /zabbix/3 .4 /rhel/6/x86_64/zabbix-agent-3 .4.0-1.el6.x86_64.rpm        yum localinstall -y zabbix-*
        if  [ $? - ne  0 ]; then
            "Zabbix Softward install fail,Please check dirname /tools"  &&  exit  1
        fi
    fi
else
    echo  "error zabbixi version"
fi
if  [ $? - eq  0 ]; then
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;"
fi
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
if  [ $? - eq  0 ]; then
    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
else
    echo  -e  "\033[32m iptables is stopd\033[0m"
fi
clear
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"
fi

四、版本特性与脚本执行

升级PHP版本为7.1,可以安装最新Zabbix3.4

1.执行脚本如下:

wKiom1moDWuyhZnuAAAw2nsrRXU838.png

wKioL1moDYPhbw2GAAARhUL7uzI769.png

2.执行完成如下:

wKioL1moDi6A05I2AAAkZMypHGk827.png

3.访问提示的URL进行访问:

wKioL1moDqyyx4z2AABEAS2D4t0644.png

4.点击Next setp

wKioL1moDzDixnYhAAFitB5zT7Y360.png

5.脚本内PHP参数已经修改完成,直接点击Next setpwKioL1moD7iQfXtcAAEnuGUporQ301.png

6.填写脚本安装完成提示的Password,点击安装

wKiom1moEEOiCf2vAAEAxYC9S-k850.png

7.点击下一步

wKioL1moEH_CPU7DAAE621H5uT8804.png

8.点击下一步安装成功

wKiom1moEOWTMvQJAAEJfn3_qR4894.png

更多Zabbix相关教程集合: 

ZABBIX 的详细介绍请点这里
ZABBIX 的下载地址请点这里 

猜你喜欢

转载自www.linuxidc.com/Linux/2017-09/147144.htm