zabbix 布署实践【3 proxy安装】

时间:2023-02-02 14:50:02
使用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页面添加代理机。如下。
zabbix 布署实践【3 proxy安装】

Server端可以,通地DNS解析,或添加/etc/hosts的解析,指向proxy的IP,并且网可达。

 
 
zabbix 布署实践【3 proxy安装】
如果之后,我们可以在主机页面上做监控添加,选择指向agent上报至proxy端。
zabbix 布署实践【3 proxy安装】
zabbix 布署实践【3 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小时同步一次,太长了