自学Zabbix13.2 分布式监控proxy配置
分为两部分:
- 安装proxy
- 配置proxy
1. 安装proxy
官方文档使用的是源码安装,因为方便我们使用yum安装,因为我们只有2台,所以就用agent当做Proxy
1.1 安装
[root@linux-node2 ~]# yum install -y zabbix-proxy zabbix-proxy-mysql mariadb-server
我们需要启动MySQL
[root@linux-node2 ~]# systemctl start mariadb.service
1.2 创建数据库
mysql
create database zabbix_proxy character set utf8;
grant all on zabbix_proxy.* to zabbix_proxy@localhost identified by 'zabbix_proxy';
1.3 导入数据
[root@linux-node2 ~]# cd /usr/share/doc/zabbix-proxy-mysql-3.0.8/
[root@linux-node2 zabbix-proxy-mysql-3.0.8]# zcat schema.sql.gz | mysql -uzabbix_proxy -p zabbix_proxy
Enter password:
#密码是:zabbix_proxy 是我们数据库授权的密码
1.4 检查数据库
mysql
show databases;
use zabbix_proxy;
show tables;
#查看是否含有数据
1.5 修改proxy的配置文件
[root@linux-node2 zabbix-proxy-mysql-3.0.8]# vim /etc/zabbix/zabbix_proxy.conf
Server=172.18.50.33
Hostname=Zabbix proxy
DBName=zabbix_proxy
#数据库名称
DBUser=zabbix_proxy
#用户名
DBPassword=zabbix_proxy
#用户密码
配置文件中没有配置的内容如下:(有需要可以配置)
# ProxyLocalBuffer=0
#数据保留的时间(小时为单位)
# ProxyOfflineBuffer=1
#连不上Server,数据要保留多久(小时为单位,默认1小时)
# DataSenderFrequency=1
#数据的发送时间间隔(默认是1秒)
# StartPollers=5
#启动的线程数
# StartIPMIPollers=0
#启动IPMI的线程数
过滤修改过的配置如下:
[root@linux-node2 zabbix-proxy-mysql-3.0.8]# grep '^[a-Z]' /etc/zabbix/zabbix_proxy.conf
Server=172.18.50.33
Hostname=Zabbix proxy
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=zabbix_proxy
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
1.6 启动, 查看proxy进程
[root@linux-node2 ~]# systemctl start zabbix-proxy
[root@linux-node2 ~]# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 15685/mysqld
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1073/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2498/master
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 15924/zabbix_proxy
tcp6 0 0 :::44589 :::* LISTEN 9052/java
tcp6 0 0 :::8080 :::* LISTEN 9052/java
tcp6 0 0 :::22 :::* LISTEN 1073/sshd
tcp6 0 0 :::8888 :::* LISTEN 9052/java
tcp6 0 0 ::1:25 :::* LISTEN 2498/master
tcp6 0 0 :::39743 :::* LISTEN 9052/java
tcp6 0 0 :::10051 :::* LISTEN 15924/zabbix_proxy
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 9052/java
tcp6 0 0 :::8009 :::* LISTEN 9052/java
Zabbix-proxy 监控10051端口,因为是代理就必须跟Server的端口相同,对于Agent Proxy就是Server
2. proxy配置
2.1 administrator --- proxies---creat proxy
参数 | 描述 |
Proxy name | proxy名称,必须和proxy配置文件中的hostname一致 |
Proxy mode | 选择proxy模式 |
Active | proxy主动连接到zabbix server并且请求配置文件数据 |
Passive | Zabbix server连接到proxy |
Hosts | 哪些主机需要被proxy监控 |
2.2 encryption选项
连接到代理服务器 | 如何连接到被动代理:没有加密(默认),使用PSK(预共享密钥)或证书。 |
来自代理的连接 | 选择从活动代理允许什么类型的连接 可以同时选择几种连接类型(用于测试和切换到其他连接类型) 默认没有加密 |
发行人 | 允许颁发证书。证书首先由CA(证书颁发机构)验证。如果它是有效的,在CA签署,然后发行领域可以用来进一步限制允许约这个字段是可选的,如果你打算使用Zabbix安装使用证书从多个CAS。 |
科目 | 允许证书。证书首先由CA.验证,如果它是有效的,由CA签名,则主题字段可用于只允许一个主题字符串值。如果此字段为空,则接受配置的CA签署的任何有效证书。 |
身份认证 | 预共享密钥标识字符串。 |
预共享密钥 | 最大长度:512进制数(256字节的PSK) 如果Zabbix uses GnuTLS或OpenSSL库,64进制数(32字节的PSK) 如果Zabbix使用MBED TLS(polarssl)。例如:1f87b595725ac58dd977beef14b97461a7c1045b9a1c963065002c5473194952 |
2.3 配置主机HOST的时候,如果需要被proxy代理,那么都选择对应的proxy名称
.......