[自动化分布式] 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
相关推荐
wheeldown2 分钟前
【Linux网络编程】网络基础之MAC地址与IP地址的区别
linux·运维·网络·macos
2501_941982056 分钟前
外部群自动化中的“静默心跳”存活检测
运维·自动化
Mr-Wanter7 分钟前
搭建局域网时间同步服务器
java·运维·服务器
有谁看见我的剑了?7 分钟前
ESXI 虚拟机文件组成学习
运维·学习·云计算
代码游侠10 分钟前
应用——UDP 网络编程
linux·运维·开发语言·学习·算法
梦想的旅途217 分钟前
外部群消息监听的轮询与 Hook 机制对比
人工智能·自动化·企业微信
木童66222 分钟前
Docker 容器操作(资源限制、数据卷容器、端口映射、容器互联)
运维·docker·容器
irisart23 分钟前
第二章【NGINX 开源功能】—— 七层反向代理(下)
运维·nginx
北京耐用通信23 分钟前
预算减半,效率翻倍:耐达讯自动化Profibus六路中继器如何成为工程师的“省钱利器”
人工智能·物联网·网络协议·自动化·信息与通信
prettyxian24 分钟前
【linux】进程概念(2)Linux进程的生命密码:从fork到完全独立
linux·运维·服务器