[自动化分布式] 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
相关推荐
其实防守也摸鱼1 小时前
常见安全架构中 Shiro 的认证确认机制解析
运维·服务器·数据库·windows·github
iPad协议个微协议1 小时前
微信自动回复从关键词到 AI:WechatApi 如何连接消息、模型和人工
微信·自动化·微信开发·wechatapi·个人微信号二次开发
^Rocky2 小时前
IT 疑难杂症诊疗室:复杂技术问题解决实录
运维·bug
liulilittle2 小时前
mock 规范总纲
ai·自动化·llm·mock·测试·tools
挖掘狂人2 小时前
当生产环境"变慢",我用这套 perf + strace 30 分钟定位瓶颈
linux·运维·性能优化
liulilittle4 小时前
麻将结算全链路语义(SETTLE_SEMANTICS)
ai·自动化·llm·mock·lua·测试
jingli94 小时前
恶意退款怎么办、仅退款怎么申诉:六类恶意退款识别特征+取证证据链+反制全流程(商家实操版)
人工智能·自动化·用户运营
阿明64 小时前
Linux进程【Linux】
linux·运维·服务器
Android系统攻城狮5 小时前
Linux Gstreamer深度解析之gst_audio_resampler_update调用流程与实战(三十)
linux·运维·服务器·gstreamer音视频·音视频进阶
苍苍竹林寺5 小时前
Module Builder——Gem200之Alarm模块
自动化·半导体·eap