iyutr 发表于 2016-8-30 09:49:57

自动安装zabbix客户端shell脚本

一般工作中要部署新服务器,部署完成还要添加zabbix监控,所以安装zabbix客户端是很频繁的,我这里写了一个简单的自动安装脚本,不是很完善,但也可以平时拿来用。    脚本运行的时候可能会出来一些错误,可以看终止时的错误信息,很可能是缺少相关的包,根据信息安装包再重新运行即可。
    注意修改配置的内容,要根据实际情况做相应的修改,比如server和hostname,server是服务端的ip,根据实际情况配置,hostname我这里设置的是客户端自己的ip,也可以根据自身情况修改。在获取本地ip时,这种写法不是最严密的,因为有的机器上有好几个网卡,而且网卡的网段也可能是同一个网段,这样的情况用本脚本的语法是不能正常获取的,所以还是在运行之前看一下自己网卡的情况。



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
#/bin/bash
#源码自动安装zabbix客户端脚本。


#检查zabbix用户是否存在
grep "^zabbix" /etc/passwd
if [ $? -ne 0 ]
then
   useradd zabbix -s /sbin/nologin
fi

#检测函数
check()
{
if[ $? -ne 0 ]
then
   echo "Error,Please check again."
   exit 1
fi
}

#下载源码包
cd /home/zabbix
[ -f zabbix-2.2.10.tar.gz ] || wgethttps://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.2.10/zabbix-2.2.10.tar.gz
check
[ -d zabbix-2.2.10 ] || tar zxfzabbix-2.2.10.tar.gz
check

#检查原有zabbix服务,如果有则停掉
ps -elf |grep zabbix|grep -v grep
if [ $? -eq 0 ]
then
   /etc/init.d/zabbix-agent stop || /etc/init.d/zabbix-agentd stop
fi

#编译安装
cd zabbix-2.2.10
./configure --prefix=/usr/local/zabbix--sysconfdir=/usr/local/zabbix/conf --enable-agent
check
make
check
make install
check
chown -R zabbix:zabbix /usr/local/zabbix

#添加到init进程
/bin/cpmisc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix-agentd
chmod 755 /etc/init.d/zabbix-agentd
grep "BASEDIR=/usr/local/zabbix"/etc/init.d/zabbix-agentd
if [ $? -ne 0 ]
then
   sed -r -i 's#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g'/etc/init.d/zabbix-agentd
fi
check

#修改配置文件
sed -r -i's#Server=127.0.0.1#Server=x.x.x.x#g'/usr/local/zabbix/conf/zabbix_agentd.conf
check
sed -r -i's/ServerActive=127.0.0.1/#ServerActive=127.0.0.1/g'/usr/local/zabbix/conf/zabbix_agentd.conf
check
ip=`/sbin/ifconfig |grep"addr"|grep "192.168."|awk '{print $2}'|awk -F':' '{print$2}'`
sed -r -i "s#Hostname=Zabbixserver#Hostname=$ip#g" /usr/local/zabbix/conf/zabbix_agentd.conf
check

chkconfig --add zabbix-agentd
chkconfig zabbix-agentd on
service zabbix-agentd start

netstat -lnp |grep zabbix
if [ $? -eq 0 ]
then
   echo "Zabbix agent install have completed."
fi






页: [1]
查看完整版本: 自动安装zabbix客户端shell脚本