Zabbix 使用,线下 分布式监控线上服务
引言
为了节约服务租用成本,决定将线上的Zabbix 监控服务器释放掉,因此带来了好多工作上不便。
突发奇想的能不能部署到线下那?
1.安装没啥可说的看手册 传送地址
2.我和手册有一点点差异,我使用的是MySQL,不是 mariadb 但本质俩者一样
3.安装后打开web页,切记要重启 Contes7 使用以下命令 ,其他版本自行调整
4.zabbix-server 是只能安装在Linux上,windows 可以安装 zabbix-agent
重启服务
systemctl restart zabbix-server
重启web服务器
systemctl restart httpd
Contes 56
service zabbix-agent restart
4.线下ip配置到线上去,查看办公室网络出口ip 百度ip 查到的ip地址 绑定在被监控的业务服务器上
列如 1.203.174.1*7
zabbix_agent 配置的允许连接的 Server IP
vim /etc/zabbix/zabbix_agentd.conf
被动模式
# 允许配置的IP信息从这个agent获取数据
# 可配置多个IP,用逗号分隔
Server=1.203.174.1*6,1.203.174.1*7
主动模式,线下监控线上请注释掉
# agent主动向这个Server推送数据
# 可配置多个IP,用逗号分隔
#ServerActive=127.0.0.1
zabbix_server 和 zabbix_agent 版本最好一致,小版本的差异影响不大
注意: 关闭防火墙,线上服务器要开放指定端口 10050
一、zabbix_agent 配置解读
配置文件说明 转载原文 以下摘录部分内容
配置zabbix-agent
ServerActive=10.0.0.105(zabbix-server的IP地址)
Timeout=15(超时时间)
AllowRoot=1(允许以root运行)
UnsafeUserParameters=1(允许特殊字符)
UserParameter(配置自定义key)
LogFile
日志文件路径
如果未配置,日志会记录到syslog中
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
取值范围:0-1024
默认值:1
日志文件大小,单位为MB。
0 - 关闭自动轮滚.
备注:如果日志文件到达了最大值并且文件轮滚失败,那么老日志文件会被清空掉
EnableRemoteCommands=0
默认值:0
是否运行zabbix server在此服务器上执行远程命令
0 - 禁止
1 - 允许
StartAgents=3
取值范围:0-100
默认值:3
zabbix启动之后开启被动监控的进程数量,如果设置为0,那么zabbix被动监控被禁用,并且不会监听相应端口,也就是说10050端口不会开启。
ServerActive=10.0.0.100:10052
zabbix_agent 主动监控server的ip地址,使用逗号分隔多IP,如果注释这个选项,那么当前服务器的主动监控就被禁用了
RefreshActiveChecks=120
取值范围:60-3600
默认值:120
多久时间(秒)刷新一次主动监控配置信息,如果刷新失败,那么60秒之后会重试一次
AllowRoot=0
默认值:0
是否允许使用root身份运行zabbix,如果值为0,并且是在root环境下,zabbix会尝试使用zabbix用户运行,如果不存在会告知zabbix用户不存在。
0 - 不允许
1 - 允许
User=zabbix
默认值:zabbix
运行zabbix程序的用户,如果AllowRoot被禁用,才有效果
Include=/etc/zabbix/zabbix_agentd.d/
Include=/usr/local/etc/zabbix_agentd.userparams.conf
Include=/usr/local/etc/zabbix_agentd.conf.d/
Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf
包含自配置文件,不同的配置写到不同的文件中,然后include,配置文件会显得规范。例如: /absolute/path/to/config/files/*.conf. Zabbix 2.4.0开始支持正则表达式
zabbix_agent 参数
-i 安装
-d 卸载
-s 启动
-x 停止
-h 帮助
-c 配置文件位置
这个更详细 https://www.cnblogs.com/chuyiwang/p/9055912.html
二、安全篇 共享秘钥配置
Zabbix版本从3.0之后,开始支持Zabbix server, Zabbix proxy, Zabbix agent, zabbix_sender and zabbix_get之间的通信加密,加密方式有预共享**(PSK)和证书加密,加密配置是可选项,一些proxies和agents可以使用证书认证加密通信,另外一些可以使用PSK加密通信,而剩余的可以不使用加密进行通信,需要注意的是如果希望使用加密通信,编译的时候须加入 –with-openssl参数。本机安装了openssl可不用加
[aaa@qq.com scripts]# openssl rand -hex 32
ef52cbe2d1a35e6bb3c43b22bd4f1a1d7bf24d1ccb7c47f6a602425970da5432
# 将生成的**写入该文件
vim /etc/zabbix/zabbix_agent.psk
vim /etc/zabbix/zabbix_agentd.conf
#加入
TLSConnect=psk
TLSAccept=psk
#这是自定义的唯一性的秘钥id,列 PSKTest 在配置 web时用到
TLSPSKIdentity=PSK ID
TLSPSKFile=/etc/zabbix/zabbix_agent.psk
#配置完成后重启zabbix_agent进程
将密文填入web中
配置好后重启下服务
将被监控的密文cp一份放到线下的 监控服务上 才可以使用下面的命令
流程是被监控主机生成秘钥 cp到监控主机 或者 前后俩者互换 同时pskid也要一致
[aaa@qq.com ~]# zabbix_get -s 117.78.3*.2*2 -p 10050 -k "login-user" --tls-connect psk --tls-psk-identity="PSKTest" --tls-psk-file /etc/zabbix/zabbix_agent.psk
1
[aaa@qq.com ~]#
只能在zabbix server端使用此命令
zabbix_get -s host-name-or-IP [ -p port-number ] [ -I IP-address ] -k item-key
zabbix_get -s host-name-or-IP [ -p port-number ] [ -I IP -address ] --tls-connect cert --tls-ca-file CA-file [ --tls-crl-file CRL-file ] [ --tls-agent-cert-issuer cert-issuer ] [ --tls- agent-cert-subject cert-subject ] --tls-cert-file cert-file --tls-key-file key-file -k item-key
zabbix_get -s host-name-or-IP [ -p port-number ] [ -I IP-address ] --tls-connect psk --tls-psk-identity PSK-identity --tls-psk-file PSK-file -k item-key
zabbix_get -h
zabbix_get -V
OPTIONS
-s, - host host-name-or-IP
指定主机的主机名或IP地址。
-p, - port port-number
指定主机上运行的代理的端口号。默认值为10050。
-I, - source-address IP-address
指定源IP地址。
-k,--key 项键
指定要检索值的项的键。
--tls-connect 值
如何连接到代理。价值观:
加密方式
无加密连接(默认)
PSK
使用TLS和预共享**进行连接
cert
使用TLS和证书连接
--tls-ca-file CA文件
包含用于对等证书验证的*CA(s)证书的文件的完整路径名。
--tls-crl-file CRL文件
包含已吊销证书的文件的完整路径名。
--tls-agent-cert-issuer颁发者 证书
允许的代理证书颁发者。
--tls-agent-cert-subject cert-subject
允许的代理证书主题。
--tls-cert-file 证书文件
包含证书或证书链的文件的完整路径名。
--tls-key-file **文件
包含私钥的文件的完整路径名。
--tls-psk-identity PSK-identity
PSK身份字符串。
--tls-psk-file PSK文件
包含预共享**的文件的完整路径名。
-h, - help
显示此帮助并退出。
-V, - version
输出版本信息并退出。
三、错误排查
没有什么是比查日志更有效的办法
[aaa@qq.com ~]# tail /var/log/zabbix/zabbix_agentd.log
19509:20200713:111344.939 failed to accept an incoming connection: connection from "1.204.22.120" rejected, allowed hosts: "1.203.174.188,1.204.4.208"
19510:20200713:111356.456 failed to accept an incoming connection: from 1.203.174.188: unencrypted connections are not allowed
希望对你有用,可以点个赞呦!