天天看点

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

<code>#!/bin/bash</code>

<code>#Date 2017/8/31</code>

<code>#mail [email protected]</code>

<code>[ $(</code><code>id</code> <code>-u) != </code><code>"0"</code> <code>] &amp;&amp; </code><code>echo</code> <code>"Error: You must be root to run this script"</code> <code>&amp;&amp; </code><code>exit</code> <code>1</code>

<code>export</code> <code>PATH=</code><code>/usr/local/sbin</code><code>:</code><code>/usr/local/bin</code><code>:</code><code>/sbin</code><code>:</code><code>/bin</code><code>:</code><code>/usr/sbin</code><code>:</code><code>/usr/bin</code>

<code>sed</code> <code>-i </code><code>"s/SELINUX=enforcing/SELINUX=disabled/"</code>  <code>/etc/selinux/config</code>

<code>setenforce 0</code>

<code>which</code>  <code>ntpdate</code>

<code>if</code> <code>[ $? -</code><code>eq</code> <code>0 ];</code><code>then</code>

<code>    </code><code>/usr/sbin/ntpdate</code> <code>time1.aliyun.com</code>

<code>    </code><code>echo</code> <code>"*/5 * * * * /usr/sbin/ntpdate -s time1.aliyun.com"</code><code>&gt;&gt;</code><code>/var/spool/cron/root</code>    

<code>else</code>

<code>    </code><code>yum </code><code>install</code> <code>ntpdate -y</code>

<code>fi</code>

<code>clear</code>

<code>echo</code> <code>"##########################################"</code>

<code>echo</code> <code>"#       Auto Install zabbix.            ##"</code>

<code>echo</code> <code>"#       Press Ctrl + C to cancel        ##"</code>

<code>echo</code> <code>"#       Any key to continue             ##"</code>

<code>echo</code> <code>"(1) Install zabbix3.0"</code>

<code>echo</code> <code>"(2) Install zabbix3.2"</code>

<code>echo</code> <code>"(3) Install zabbix3.4"</code>

<code>echo</code> <code>"(4) EXIT"</code>

<code>read</code> <code>-p </code><code>"Please input your choice:"</code> <code>NUM</code>

<code>case</code> <code>$NUM </code><code>in</code> 

<code>1)</code>

<code>    </code><code>URL=</code><code>"http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm"</code>

<code>    </code><code>VER=zabbix-3.0</code>

<code>;;</code>

<code>2)</code>

<code>    </code><code>URL=</code><code>"http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm"</code>

<code>    </code><code>VER=zabbix-3.2</code>

<code>3)</code>

<code>    </code><code>URL=</code><code>"http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm"</code>

<code>    </code><code>VER=zabbix-3.4</code>

<code>4)</code>

<code>    </code><code>echo</code> <code>-e </code><code>"\033[41;37m You choice channel! \033[0m"</code> <code>&amp;&amp; </code><code>exit</code> <code>0</code>

<code>*)</code>

<code>    </code><code>echo</code> <code>-e </code><code>"\033[41;37m Input Error! Place input{1|2|3|4} \033[0m"</code> <code>&amp;&amp; </code><code>exit</code> <code>1</code>

<code>esac</code>

<code>echo</code> <code>-e </code><code>"\033[32m You choice install $VER.Install\033[0m"</code>

<code>echo</code> <code>-e </code><code>"\033[5m Press any key to start install $VER... \033[0m"</code>

<code>read</code> <code>-n 1</code>

<code>TDIR=</code><code>/tools</code>

<code>IP=`</code><code>ifconfig</code> <code>eth0 | </code><code>grep</code> <code>"inet addr"</code> <code>| </code><code>awk</code> <code>-F</code><code>"[: ]+"</code> <code>'{print $4}'</code><code>`</code>

<code>yum remove php* -y</code>

<code>rpm -Uvh http:</code><code>//mirror</code><code>.webtatic.com</code><code>/yum/el6/latest</code><code>.rpm</code>

<code>ls</code> <code>/etc/yum</code><code>.repos.d</code><code>/webtatic</code><code>.repo</code>

<code>    </code><code>yum -y </code><code>install</code> <code>`yum list|</code><code>grep</code> <code>php71w|</code><code>awk</code> <code>'{printf ("%s ",$1)}'</code><code>` --skip-broken</code>

<code>    </code><code>sed</code> <code>-i </code><code>"s/;date.timezone =/date.timezone = Asia\/Shanghai/g"</code> <code>/etc/php</code><code>.ini </code>

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

<code>    </code><code>#max_execution_time = 30</code>

<code>    </code><code>sed</code> <code>-i </code><code>"s#`grep post_max_size /etc/php.ini`#post_max_size = 32M#g"</code> <code>/etc/php</code><code>.ini </code>

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

<code>    </code><code>sed</code> <code>-i </code><code>"s#`grep memory_limit /etc/php.ini`#memory_limit = 128M#g"</code> <code>/etc/php</code><code>.ini</code>

<code>service php-fpm start </code><code>/tmp/php-install</code><code>.log 2&gt;&amp;1</code>

<code>STAT=`</code><code>echo</code> <code>$?`</code>

<code>PORT=`</code><code>netstat</code> <code>-lntup|</code><code>grep</code> <code>php-fpm|</code><code>wc</code> <code>-l`</code>

<code>if</code> <code>[ $STAT -</code><code>eq</code> <code>0 ] &amp;&amp; [ $PORT -</code><code>eq</code> <code>1 ];</code><code>then</code>

<code>    </code><code>echo</code> <code>-e </code><code>"\033[32m PHP is install success! \033[0m"</code>

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

<code>yum </code><code>install</code> <code>-y ntpdate mailx dos2unix vim zcat wget net-snmp-utils gcc gcc-c++ autoconf httpd libxml* mysql mysql-server  httpd-manua</code>

<code>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 </code><code>clear</code>

<code>service mysqld start</code>

<code>groupadd zabbix -g 201 </code>

<code>useradd</code> <code>-g zabbix -u 201 -m -s </code><code>/sbin/nologin</code> <code>zabbix</code>

<code>rpm -ivh  $URL</code>

<code>ls</code> <code>/etc/yum</code><code>.repos.d</code><code>/zabbix</code><code>.repo</code>

<code>ZAB=`</code><code>echo</code> <code>$?`</code>

<code>if</code> <code>[ ! -d $TDIR ];</code><code>then</code>

<code>        </code><code>/bin/mkdir</code> <code>$TDIR &amp;&amp; </code><code>cd</code> <code>$TDIR</code>

<code>if</code> <code>[ </code><code>"$VER"</code> <code>== </code><code>"zabbix-3.0"</code> <code>];</code><code>then</code>

<code>    </code><code>yum </code><code>install</code> <code>-y zabbix-agent.x86_64 zabbix-get.x86_64 zabbix-server-mysql.x86_64 zabbix-web.noarch zabbix-web-mysql.noarch</code>

<code>elif</code> <code>[ </code><code>"$VER"</code> <code>== </code><code>"zabbix-3.2"</code> <code>];</code><code>then</code>

<code>    </code><code>if</code> <code>[ -d $TDIR ];</code><code>then</code>

<code>        </code><code>cd</code> <code>$TDIR</code>

<code>    </code><code>else</code>

<code>            </code><code>/bin/mkdir</code> <code>$TDIR &amp;&amp; </code><code>cd</code> <code>$TDIR</code>

<code>    </code><code>fi</code>

<code>    </code><code>if</code> <code>[ $? -</code><code>eq</code> <code>0 ];</code><code>then</code>

<code>        </code><code>for</code> <code>PAG </code><code>in</code> <code>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.</code>

<code>noarch.rpm         </code><code>do</code>

<code>            </code><code>wget -c --timeout=5 http:</code><code>//repo</code><code>.zabbix.com</code><code>/zabbix/3</code><code>.2</code><code>/rhel/6/x86_64/deprecated/</code><code>$PAG</code>

<code>        </code><code>done</code>

<code>        </code><code>wget -c --timeout=5 http:</code><code>//repo</code><code>.zabbix.com</code><code>/zabbix/3</code><code>.2</code><code>/rhel/6/x86_64/zabbix-agent-3</code><code>.2.7-1.el6.x86_64.rpm</code>

<code>        </code><code>yum localinstall -y zabbix-server-mysql* zabbix-web-mysql* zabbix-agent zabbix-web*</code>

<code>        </code><code>if</code> <code>[ $? -</code><code>eq</code> <code>0 ];</code><code>then</code>

<code>            </code><code>exit</code> <code>1 &amp;&amp; </code><code>echo</code> <code>"Zabbix Softward install fail,Please check dirname /tools"</code>

<code>        </code><code>fi</code>

<code>elif</code> <code>[ </code><code>"$VER"</code> <code>== </code><code>"zabbix-3.4"</code> <code>];</code><code>then</code>

<code>        </code><code>for</code> <code>PAG </code><code>in</code> <code>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.</code>

<code>            </code><code>wget -c --timeout=5 --tries=35 --user-agent="Mozilla</code><code>/5</code><code>.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit</code><code>/534</code><code>.</code>

<code>16 (KHTML, like Gecko)Chrome</code><code>/10</code><code>.0.648.204 Safari</code><code>/534</code><code>.16" http:</code><code>//repo</code><code>.zabbix.com</code><code>/zabbix/3</code><code>.4</code><code>/rhel/6/x86_64/deprecated/</code><code>$PAG        </code><code>done</code>

<code>        </code><code>wget -c --timeout=5 --tries=35 --user-agent="Mozilla</code><code>/5</code><code>.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit</code><code>/534</code><code>.16 (KHTM</code>

<code>L, like Gecko)Chrome</code><code>/10</code><code>.0.648.204 Safari</code><code>/534</code><code>.16" http:</code><code>//repo</code><code>.zabbix.com</code><code>/zabbix/3</code><code>.4</code><code>/rhel/6/x86_64/zabbix-agent-3</code><code>.4.0-1.el6.x86_64.rpm        yum localinstall -y zabbix-*</code>

<code>        </code><code>if</code> <code>[ $? -</code><code>ne</code> <code>0 ];</code><code>then</code>

<code>            </code><code>"Zabbix Softward install fail,Please check dirname /tools"</code> <code>&amp;&amp; </code><code>exit</code> <code>1</code>

<code>    </code><code>echo</code> <code>"error zabbixi version"</code>

<code>mysql -uroot -e </code><code>"create database zabbix character set utf8;"</code> 

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

<code>mysql -uroot -e </code><code>"flush privileges;"</code>

<code>cd</code> <code>/usr/share/doc</code>

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

<code>cd</code> <code>$MYSQLDIR</code>

<code>zcat create.sql.gz | mysql -uroot zabbix</code>

<code>mysqladmin -uroot password </code><code>"mysqladmin"</code>

<code>cd</code> <code>/usr/share/</code>

<code>cp</code> <code>-r .</code><code>/zabbix/</code> <code>/var/www/html/zabbix</code> 

<code>echo</code> <code>"DBPassword=zabbix"</code> <code>&gt;&gt; </code><code>/etc/zabbix/zabbix_server</code><code>.conf</code>

<code>service httpd start </code>

<code>service zabbix-server start </code>

<code>service zabbix-agent start </code>

<code>chkconfig httpd on </code>

<code>chkconfig mysqld on </code>

<code>chkconfig php-fpm on</code>

<code>chkconfig zabbix-server on </code>

<code>chkconfig zabbix-agent on</code>

<code>/etc/init</code><code>.d</code><code>/iptables</code> <code>status &gt;</code><code>/dev/null</code> <code>2&gt;&amp;1</code>

<code>    </code><code>iptables -I INPUT -p tcp --dport 443 -j ACCEPT &amp;&amp;</code>

<code>    </code><code>iptables -I INPUT -p tcp --dport 10051 -j ACCEPT &amp;&amp;</code>

<code>    </code><code>iptables -I INPUT -p tcp --dport 10050 -j ACCEPT &amp;&amp;</code>

<code>    </code><code>iptables -I INPUT -p tcp --dport 3000 -j ACCEPT &amp;&amp;</code>

<code>#iptables -I INPUT -p tcp --dport 3306 -j ACCEPT &amp;&amp; </code>

<code>    </code><code>service iptables save &gt;</code><code>/dev/null</code> <code>2&gt;&amp;1</code>

<code>    </code><code>/etc/init</code><code>.d</code><code>/iptables</code> <code>restart</code>

<code>    </code><code>echo</code> <code>-e </code><code>"\033[32m iptables is stopd\033[0m"</code>

<code>STAT=`</code><code>/bin/ps</code> <code>-ef|</code><code>grep</code> <code>zabbix_server|</code><code>grep</code> <code>-</code><code>v</code> <code>grep</code><code>|</code><code>wc</code> <code>-l`</code>

<code>PORT=`</code><code>/bin/netstat</code> <code>-lntup|</code><code>grep</code> <code>zabbix_server|</code><code>wc</code> <code>-l`</code>

<code>if</code> <code>[ $STAT -</code><code>ne</code> <code>0 ] &amp;&amp; [ $PORT -</code><code>ne</code> <code>0 ];</code><code>then</code>

<code>    </code><code>echo</code> <code>-e </code><code>"\033[42;37m Zabbix$VER is Install Success,Username:Admin Password:zabbix \033[0m"</code>

<code>    </code><code>echo</code> <code>-e </code><code>"\033[42;37m MySql Username:root Password:mysqladmin \033[0m"</code>

<code>    </code><code>echo</code> <code>-e </code><code>"\033[42;37m rul:https://$IP/zabbix \033[0m"</code>

四、版本特性与脚本执行

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

1.执行脚本如下:

<a href="https://s2.51cto.com/wyfs02/M02/05/9D/wKiom1moDWuyhZnuAAAw2nsrRXU838.png" target="_blank"></a>

<a href="https://s1.51cto.com/wyfs02/M02/A4/4E/wKioL1moDYPhbw2GAAARhUL7uzI769.png" target="_blank"></a>

2.执行完成如下:

<a href="https://s5.51cto.com/wyfs02/M01/A4/4E/wKioL1moDi6A05I2AAAkZMypHGk827.png" target="_blank"></a>

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

<a href="https://s3.51cto.com/wyfs02/M02/A4/4E/wKioL1moDqyyx4z2AABEAS2D4t0644.png" target="_blank"></a>

4.点击Next setp

<a href="https://s3.51cto.com/wyfs02/M02/A4/4E/wKioL1moDzDixnYhAAFitB5zT7Y360.png" target="_blank"></a>

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

<a href="https://s5.51cto.com/wyfs02/M00/05/9D/wKiom1moEEOiCf2vAAEAxYC9S-k850.png" target="_blank"></a>

7.点击下一步

<a href="https://s2.51cto.com/wyfs02/M02/A4/4E/wKioL1moEH_CPU7DAAE621H5uT8804.png" target="_blank"></a>

8.点击下一步安装成功

<a href="https://s3.51cto.com/wyfs02/M02/05/9D/wKiom1moEOWTMvQJAAEJfn3_qR4894.png" target="_blank"></a>

本文转自 KaliArch 51CTO博客,原文链接:http://blog.51cto.com/kaliarch/1961525,如需转载请自行联系原作者