zabbix3.0/3.2/3.4自动安装脚本
自动化安装zabbix脚本(3.0/3.2/3.4)
一、zabbix简介
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
二、zabbix特点
1.企业级的、开源的、分布式
2.灵活的告警机制、存储数据提供杰出的报告及图形
3.通过内置的绘图方法实现监控数据实时绘图
4.允许灵活地自定义问题阀值
5.支持主动与被动方式(agent、snmp、ipmi、自定义脚本)
三、自动化安装zabbix(3.0/3.2)脚本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
|
#!/bin/bash #Date 2017/8/31 #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
/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 [email protected] 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.执行脚本如下:
2.执行完成如下:
3.访问提示的URL进行访问:
4.点击Next setp
5.脚本内PHP参数已经修改完成,直接点击Next setp
6.填写脚本安装完成提示的Password,点击安装
7.点击下一步
8.点击下一步安装成功
本文转自 KaliArch 51CTO博客,原文链接:http://blog.51cto.com/kaliarch/1961525,如需转载请自行联系原作者