zabbix分布式监控平台从IPV4切换到IPV6之监控主机切换

现在有一套监控了海量服务器的zabbix分布式监控平台需整体在线从IPV4切换到IPV6,不能影响其原有的定制监控及视图。本文讲解了切换的第一步--监控主机切换。

一、zabbix分布式监控平台平台架构

本套zabbix分布式监控平台是一个多代理服务器分布式部署的典型传统架构,目前全平台均使用IPV4地址,主机数量已达5000+,平台架构图示意如下:

由于已经监控了海量的服务器,并存在大量的定制监控模板,平滑无缝迁移是整体的目标,对完成的效率并没有很强的要求。

二、实施方案探讨

基于上述背景,因此本项目拟分步实施,考虑到zabbix分布式监控环境其实从数据流向来说,从南到北可以分为四段:1、主机-代理;2、代理-server;3、server-数据库;4、数据库-web。

从影响来说,越底层影响越小,因此,为实现平滑无缝迁移,最好就是从易到难来做。第一步完成最下一层,受控主机至代理的改造。

三、实施过程

因为proxy同时需完成IPV4数据上报至server和接收主机侧未改造时的IPV4上报数据和改造后的IPV6数据,它在改造过程中必须保持双栈运行,此过程中平台的架构调整如下:

需要完成的操作如下:

1、完成所有主机和代理服务器在操作系统层面的IPV4、IPV6的双栈配置(当然两者间的网络设备、安全防护设备均需完成双栈配置);

2、因本例中zabbix主机侧采用的是主动模式,zabbix-proxy本身是支持双栈监听的,无需进行配置调整;

3、查看主机侧的zabbix_agentd.conf文件配置

bash 复制代码
# cat /etc/zabbix/zabbix_agentd.conf |egrep -v "^#|^$"
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.188.236/120
ServerActive=192.168.188.236
Hostname=SRV_192.168.188.251
HostMetadata=NLLinuxAuto01
Include=/etc/zabbix/zabbix_agentd.d/*.conf

可见配置显示本机地址192.168.188.251,zabbix平台显示主机名SRV_192.168.188.251,代理服务器IP地址192.168.188.236。

4、查看主机IP信息:

ip addr

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

valid_lft forever preferred_lft forever

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000

link/ether 00:50:56:ad:1a:0e brd ff:ff:ff:ff:ff:ff

altname enp11s0

inet 192.168.188.251/24 brd 192.168.188.255 scope global noprefixroute ens192

valid_lft forever preferred_lft forever

inet6 fe80::250:56ff:1::c0a8:bcfb/64 scope global noprefixroute

valid_lft forever preferred_lft forever

5、查看proxy服务器IP信息:

bash 复制代码
#ip addr                                        
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:ad:1a:8a brd ff:ff:ff:ff:ff:ff
    altname enp11s0
    inet 192.168.188.236/24 brd 192.168.188.255 scope global noprefixroute ens192
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:1::c0a8:bcec//64 scope global noprefixroute 
       valid_lft forever preferred_lft forever

6、从主机侧测试IPV6的连通性:

bash 复制代码
# ping6 fe80::250:56ff:1::c0a8:bcec
PING fe80::250:56ff:1::c0a8:bcec(fe80::250:56ff:1::c0a8:bcec) 56 字节的数据
64 字节,来自 fe80::250:56ff:1::c0a8:bcec: icmp_seq=1 ttl=64 时间=0.115 毫秒
64 字节,来自 fe80::250:56ff:1::c0a8:bcec: icmp_seq=2 ttl=64 时间=0.170 毫秒
64 字节,来自 fe80::250:56ff:1::c0a8:bcec: icmp_seq=3 ttl=64 时间=0.192 毫秒
^C
--- fe80::250:56ff:1::c0a8:bcec ping 统计 ---
已发送 3 个包, 已接收 3 个包, 0% packet loss, time 2032ms
rtt min/avg/max/mdev = 0.115/0.159/0.192/0.032 ms

7、从web界面修改主机的IP,从IPV4改为IPV6,所配置的代理主机信息不变

即主机接口配置地址:fe80::250:56ff:1::c0a8:bcfb,agnet代理还是原来的代理主机名,不用调整,点击更新进行数据更新。

8、在主机侧修改zabbix_agentd.conf文件如下

PidFile=/var/run/zabbix/zabbix_agentd.pid

LogFile=/var/log/zabbix/zabbix_agentd.log

LogFileSize=0

Server=fe80::250:56ff:1::c0a8:bcec/120

ServerActive=[fe80::250:56ff:1::c0a8:bcec]

Hostname=SRV_192.168.188.251

HostMetadata=NLLinuxAuto01

Include=/etc/zabbix/zabbix_agentd.d/*.conf

注意Server处填写的IPV6地址不用加[],而ServerActive处的IPV6地址需要加[]。完成后重启zabbix客户端。

10、此时zabbix平台对该主机的监控即切换到了IPV6下。

四、结果验证

登录Web界面,验证主机监控信息

可见本主机已切换成功,各项监控及定制指标均未受影响,其它主机均参照修改agent配置文件并重启服务即可。

总结一下操作要点:proxy只需要启用双栈,无需进行配置修改;agent需要确保IPV6到proxy的可达性,先改web侧主机配置,再改agent侧配置文件中proxy的两项配置并重启服务即可。

相关推荐
roman_日积跬步-终至千里2 小时前
【分布式理论16】分布式调度2:资源划分和调度策略
分布式
技术小齐2 小时前
网络运维学习笔记 016网工初级(HCIA-Datacom与CCNA-EI)PPP点对点协议和PPPoE以太网上的点对点协议(此处只讲华为)
运维·网络·学习
ITPUB-微风2 小时前
Service Mesh在爱奇艺的落地实践:架构、运维与扩展
运维·架构·service_mesh
落幕2 小时前
C语言-进程
linux·运维·服务器
chenbin5203 小时前
Jenkins 自动构建Job
运维·jenkins
java 凯3 小时前
Jenkins插件管理切换国内源地址
运维·jenkins
AI服务老曹3 小时前
运用先进的智能算法和优化模型,进行科学合理调度的智慧园区开源了
运维·人工智能·安全·开源·音视频
sszdzq4 小时前
Docker
运维·docker·容器
book01214 小时前
MySql数据库运维学习笔记
运维·数据库·mysql
bugtraq20215 小时前
XiaoMi Mi5(gemini) 刷入Ubuntu Touch 16.04——安卓手机刷入Linux
linux·运维·ubuntu