zabbix 布署实践【3 proxy安装】
使用openstack在生产环境创建的一台虚拟机
环境
CentOS7
4核4G内存40G硬盘
IP:10.120.150.150
镜像默认关闭防火墙,selinux ,NetworkManager,调高了文件句柄,和线程数
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
yum install -y zabbix-proxy zabbix-java-gateway zabbix-agent zabbix-get mariadb*
数据库使用的仍然是mariadb。它会自动与server同步数据库的数据,但表结构,需要我们在/usr/share/doc/zabbix-proxy-mysql-3.0.?/schema.sql.gz手工提前导入
好,先安装数据库路径。
systemctl start mariadb.service
systemctl enable mariadb.service
初始化数据库,设置root密码,以及放行远程访问权限
mysql_secure_installation
mysql -u root -p
> create database zabbix_proxy character set utf8; #数据名可以跟server端名称不同
> GRANT ALL PRIVILEGES ON zabbix_proxy.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbix-proxy';
> GRANT ALL PRIVILEGES ON zabbix_proxy.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix-proxy';
> flush PRIVILEGES;
> set GLOBAL max_connections=10000;
> grant all privileges on *.* to root@'%' identified by 'venic8888'; #也可以放行root访问权限
> flush privileges;
cd /usr/share/doc/zabbix-proxy-mysql-3.0.1/
zcat schema.sql.gz | mysql -uroot -p zabbix_proxy
修改zabbix-proxy.conf配置文件
vi /etc/zabbix/zabbix-proxy.conf
Server=10.40.150.150 #同步指向的server端的IP,非本地IP。可以是server端的主机域名,但要确保proxy端解析server的域名,并且网络可达
Hostname=zabbix-proxy-test #proxy本地的名称,此名称需要与将来在server端的WEB页面上的代理程序名称一致,名称自定义
DBHost=localhost #与上面配置对应
DBName=zabbix_proxy #与上面配置对应
DBUser=zabbix #与上面配置对应
DBPassword=zabbix-proxy #与上面配置对应
DBPort=3306 #与上面配置对应
StartDiscoverers=4 #与server端配置的功能说明一致。
JavaGateway=127.0.0.1 #与server端配置的功能说明一致。
JavaGatewayPort=10052 #与server端配置的功能说明一致。
StartJavaPollers=4 #与server端配置的功能说明一致。
StartSNMPTrapper=1
# service zabbix-java-gateway start
# service zabbix-proxy start
# chkconfig zabbix-java-gateway on
# chkconfig zabbix-proxy on
致此,系统级proxy安装设置完成。回到server 端WEB页面添加代理机。如下。
Server端可以,通地DNS解析,或添加/etc/hosts的解析,指向proxy的IP,并且网可达。
如果之后,我们可以在主机页面上做监控添加,选择指向agent上报至proxy端。
如果原有被监控的主机已经在zabbix-agent.conf 上已经配置了
Server=10.40.41.150 #被动模式 如写的是server端IP地址,请修改成proxy端的IP
ServerActive=10.40.41.150 #主动模式 如写的是server端的IP地址,请修改成proxy端的IP
重启zabbix-agent服务即可。
如果发现机器无法监控主机,注意查看
proxy端
tail -100f /var/log/zabbix/zabbix_server.log
agent客户机
tail -100f /var/log/zabbix/zabbix_agentd.log
的报错说明,一般报错都很提示得很明显
有一比较常见的问地方就是,明明我们指定给proxy端来监控主机,但agent端报,proxy端没有要监控我们的agent的IP,
是因为我们配置的Server端的Web页面,它需要通过数据同步这个任务到proxy的数据库中,但由于数据库同步时间间隔问题,导致有时差,
有2种方法可以解决,
一种就是在,在指定新主机监控由proxy监控后,手动重启,proxy端的zabbix-proxy服务,让其proxy触发一次与zabbix-server端的数据库同步,
或者是通过,修改proxy端
vi /etc/zabbix/zabbix_proxy.conf
ConfigFrequency=60 #zabbix proxy从zabbix server取得配置数据的频率(秒)。默认1小时同步一次,太长了
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,负责保留追究法律责任的权利。