#在所有的Proxy上执行 安装初始化....
yum install zabbix-proxy-mysql zabbix-agent mysql-server mysql -y
/etc/init.d/mysqld start
mysql -e "create database zabbix_proxy character set utf8 collate utf8_bin;"
mysql -e "grant all privileges on zabbix_proxy.* to zabbix@localhost identified by 'zabbix';"
cd /usr/share/doc/zabbix-proxy-mysql-2.4.2/create/
mysql -uroot zabbix_proxy < schema.sql
sed -i 's/^.*DBPassword=.*$/DBPassword=zabbix/' /etc/zabbix/zabbix_proxy.conf
cp /etc/zabbix/zabbix_proxy.conf{,.bak}
a) Proxy主动模式
主动模式:是Server启用捕获进程用来接收主动发来的数据...(Agent主动,sender或Proxy 发来的),Proxy收集数据,然后主动把数据推送到Server。
常见的应用场景如:Server可以 IP和端口,Proxy不能 .
在主动模式中,配置检索的时间、心跳、数据发送频率是由每个Proxy在配置文件中独立定义的。
#在Server执行..
sed -i 's/.*StartTrappers=.*$/StartTrappers=10/' /etc/zabbix/zabbix_server.conf
service zabbix-server restart
2. Proxy主要配置如下
#在Proxy修改主机名,这个主机名很重要,必须和后面的在Web UI中填写的主机名一致.
sed -i 's/HOSTNAME=.*/HOSTNAME=proxy-active/' /etc/sysconfig/network
hostname proxy-active
cat > /etc/zabbix/zabbix_proxy.conf <
Server=192.168.188.30 #填写Server的IP,Proxy会将收集到的数据发往这个IP。
HostnameItem=system.hostname #通过内部的key获取当前主机名.
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix_proxy #Proxy连接的数据库
DBUser=zabbix #连接数据库的用户名
DBPassword=zabbix #连接数据库的秘密
DBSocket=/var/lib/mysql/mysql.sock
ProxyLocalBuffer=0 #当数据发送到Server,还要在本地保留多少小时.不保留
ProxyOfflineBuffer=3 #当数据没有发送到Server,在本地保留多少小时,3小时。
HeartbeatFrequency=60 #心跳检测代理在Server的可用性
ConfigFrequency=300 #代理多久从Server获取一次配置变化,默认3600秒.
DataSenderFrequency=3 #代理收集到数据后,多久向Server发送一次..
ExternalScripts=/usr/lib/zabbix/externalscripts
EOF
/etc/init.d/zabbix-proxy start
chkconfig zabbix-proxy on
3. 配置Client Active
#首先在client-active修改主机名
sed -i 's/HOSTNAME=.*/HOSTNAME=client-active/' /etc/sysconfig/network
hostname client-active
yum install zabbix-agent -y
sed -i 's/Server=.*/Server=192.168.188.31/' /etc/zabbix/zabbix_agentd.conf
#这里的ServerIP要填写oroxy-active的
sed -i 's/ServerActive=.*/ServerActive=192.168.188.31/' /etc/zabbix/zabbix_agentd.conf #这里的ServerIP是用于Agent(主动)模式的.
sed -i 's/^Hostname=\(.*\)/#Hostname=\1/' /etc/zabbix/zabbix_agentd.conf #将默认静态的主机名注释
sed -i 's/.*HostnameItem=\(.*\)/HostnameItem=\1/' /etc/zabbix/zabbix_agentd.conf #使用内部key来获取动态的主机名
/etc/init.d/zabbix-agent start
chkconfig zabbix-agent on
4. 在Server Web进行配置..
创建一个新代理
代理的名称很重要,一定要和主机名一致(在proxy中配置为动态获取主机名)
创建一个新主机,使用刚创建的代理来进行采集.. 原创:小白
|