[自动化分布式] Zabbix自动发现与自动注册

abbix 自动发现(对于 agent2 是被动模式)

zabbix server 主动的去发现所有的客户端,然后将客户端的信息登记在服务端上。

缺点是如果定义的网段中的主机数量多,zabbix server 登记耗时较久,且压力会较大

部署

添加zabbix 客户端主机 (192.168.17.31)

bash 复制代码
systemctl stop firewalld
setenforce 0

hostnamectl set-hostname zbx-agent2

服务端和客户端都配置时间同步

bash 复制代码
yum install -y ntpdate
ntpdate -u ntp.aliyun.com

设置 zabbix 的下载源,安装 zabbix-agent2

bash 复制代码
rpm -ivh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-4.el7.noarch.rpm
sed -i 's#https://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo


yum install -y zabbix-agent2

修改 agent2 配置文件

bash 复制代码
vim /etc/zabbix/zabbix_agent2.conf
......
Server=192.168.17.66			#80行,指定 zabbix 服务端的 IP 地址
ServerActive=192.168.17.66		#133行,指定 zabbix 服务端的 IP 地址
Hostname=zbx-agent2			#144行,指定当前 zabbix 客户端的主机名

启动 zabbix-agent2

bash 复制代码
systemctl start zabbix-agent2
systemctl enable zabbix-agent2

netstat -natp | grep zabbix

在服务端测试连通性

bash 复制代码
zabbix_get -s '192.168.17.31' -p 10050 -k 'agent.ping'
1

zabbix 自动发现与自动注册

1.确保客户端上的 zabbix-agent2 服务状态正常

bash 复制代码
systemctl is-active zabbix-agent2.service 
active

2.在 Web 页面删除原有的客户端主机

3.服务端和客户端都设置 hosts 解析

bash 复制代码
cat > /etc/hosts << EOF
92.168.17.30 zbx-server
192.168.17.66 zbx-agent1
192.168.17.31 zbx-agent2
EOF

4.在 Web 页面配置自动发现

bash 复制代码
点击左边菜单栏【配置】中的【自动发现】,点击【创建发现规则】
【名称】设置成 mynetwork
【IP范围】设置成 192.168.80.1-254
【更新间隔】设置成 30s
【检查】点击【添加】,【检查类型】选择 Zabbix 客户端,【端口范围】设置成 10050,【键值】设置成 system.uname
【设备唯一性准则】选择 IP地址
【主机名称】选择 DNS名称
【可见的名称】选择 主机名称
勾选 【已启用】,点击 【添加】
bash 复制代码
点击左边菜单栏【配置】中的【动作】,上方菜单选择 【发现动作】
勾选 【Auto discovery. Linux servers.】,点击 【启用】
bash 复制代码
点击左边菜单栏【配置】中的【主机】刷新,等待一段时间后即可刷新出自动发现的客户端主机

等待时间有点漫长

可在服务端查看 zabbix 日志

bash 复制代码
tail -f /var/log/zabbix_server.log

zabbix 自动注册(对于 agent2 是主动模式)

zabbix agent2 会主动上报自己的信息,发给 zabbix server。

缺点是可能因为配置文件配置错误或者网络不通等原因导致 zabbix agent2 可能找不到 zabbix server

1.环境准备

点击左边菜单栏【配置】中的【发现动作】,勾选发现规则,点击 禁用

点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除

服务端和客户端都设置 hosts 解析

bash 复制代码
vim /etc/hosts
192.168.17.30 zbx-server
192.168.17.66 zbx-agent1
192.168.17.31 zbx-agent2

2.修改 zabbix-agent2 配置文件 (客户端)

bash 复制代码
vim /etc/zabbix/zabbix_agent2.conf
......
HostnameItem=system.hostname		#152行,取消注释


egrep -v "^#|^$" /etc/zabbix/zabbix_agent2.conf  #输入后会输出

PidFile=/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=192.168.17.30
ServerActive=192.168.17.30
Hostname=zbx-agent2
 HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agent2.d/*.conf
PluginSocket=/run/zabbix/agent.plugin.sock
ControlSocket=/run/zabbix/agent.sock
Include=./zabbix_agent2.d/plugins.d/*.conf


systemctl restart zabbix-agent2

3.在 Web 页面配置自动注册

bash 复制代码
点击左边菜单栏【配置】中的【动作】,上方菜单选择 【自动注册动作】,点击【创建动作】
【名称】设置成 Auto registration
点击 【添加】,【类型】选择 主机名称,【操作者】选择 包含,【值】设置成 zbx-agent
点击上方菜单栏【操作】,点击【添加】,【操作类型】选择 添加主机,点击 【Add】
再点击【添加】,【操作类型】选择 添加到主机群组,【主机群组】选择 Linux servers,点击 【Add】
再点击【添加】,【操作类型】选择 与模板关联,【模板】搜索 Linux,选择 Linux by Zabbix agent,点击 【Add】
点击下方的【添加】

等待一段时间后,点击左边菜单栏【配置】中的【主机】刷新,即可刷新出自动发现的客户端主机

在服务端查看 zabbix 日志

bash 复制代码
tail -f /var/log/zabbix_server.log
相关推荐
爱吃橘子橙子柚子3 天前
3CPU性能排查总结(超详细)【Linux性能优化】
运维·cpu
舒一笑4 天前
程序员效率神器:一文掌握 tmux(服务器开发必备工具)
运维·后端·程序员
NineData4 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
梦想很大很大5 天前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go
Sinclair5 天前
内网服务器离线安装 Nginx+PHP+MySQL 的方法
运维
叶落阁主5 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
甲鱼9297 天前
MySQL 实战手记:日志管理与主从复制搭建全指南
运维
碳基沙盒9 天前
OpenClaw 多 Agent 配置实战指南
运维
不做菜鸟的网工11 天前
Zabbix收集H3C交换机实时配置命令 「SNMP TRAP」
zabbix
蝎子莱莱爱打怪12 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes