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文件配置

# 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信息:

#ip addr                                        
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::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 1000link/ether 00:50:56:ad:1a:8a brd ff:ff:ff:ff:ff:ffaltname enp11s0inet 192.168.188.236/24 brd 192.168.188.255 scope global noprefixroute ens192valid_lft forever preferred_lft foreverinet6 fe80::250:56ff:1::c0a8:bcec//64 scope global noprefixroute valid_lft forever preferred_lft forever

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

# 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的两项配置并重启服务即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/185320.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Node——Node.js简介

Node.js是一个基于Chrome V8引擎的JavaScript运行时环境&#xff0c;它能够让JavaScript脚本运行在服务端&#xff0c;这使得JavaScript成为与PHP、Python等服务端语言平起平坐的脚本语言。 1、认识Node.js Node.js是当今网站开发中非常流行的一种技术&#xff0c;它以简单易…

开放远程访问MySQL的权限

访问远程数据库时&#xff0c;产生Access denied for user ‘root‘‘xxx.xxx.xxx.xxx‘ (using password: YES)异常的解决办法 一. 异常现象 我编写了一个SpringBoot项目&#xff0c;项目中连接的数据库服务器地址是192.168.87.107&#xff0c;然后打包生成了对应的jar包&am…

Microsoft Remote Desktop高效、安全、稳定的远程办公解决方案

在今天的数字化时代&#xff0c;Remote Desktop远程办公已成为许多人的日常生活。无论你是因为工作需要&#xff0c;还是因为在家中需要访问公司服务器&#xff0c;微软远程连接软件都是一个理想的选择。 微软远程连接软件Remote Desktop是一款高效、安全、稳定的远程办公解决…

苹果手机照片恢复,这3个方法收藏好了吗?

如今&#xff0c;我们越来越喜欢用手机拍照来记录生活的点点滴滴。对于很多人来说&#xff0c;手机中的照片是他们珍贵的记忆和情感。如果这些照片丢失了&#xff0c;会给他们带来很大的困扰。那么&#xff0c;如何恢复苹果手机照片呢&#xff1f;本文将为您介绍有关苹果手机照…

内网穿透的应用-如何部署Tale博客并结合cpolar内网穿透发布个人站点到公网访问

Linux系统部署Tale个人博客并发布到公网访问 文章目录 Linux系统部署Tale个人博客并发布到公网访问前言1. Tale网站搭建1.1 检查本地环境1.2 部署Tale个人博客系统1.3 启动Tale服务1.4 访问博客地址 2. Linux安装Cpolar内网穿透3. 创建Tale博客公网地址4. 使用公网地址访问Tale…

阿里云效一键部署前后端

静态站点到OSS 阿里云-云效&#xff0c;阿里云企业级一站式 DevOps&#xff0c;可以免费使用&#xff08;会限制人数、流水线数量等&#xff0c;个人项目够用了&#xff09;。相关文章 CI 持续集成 - 阿里云云效 OSS 是对象存储的意思&#xff0c;一般一个项目对应一个 Bucke…

深度学习手势检测与识别算法 - opencv python 计算机竞赛

文章目录 0 前言1 实现效果2 技术原理2.1 手部检测2.1.1 基于肤色空间的手势检测方法2.1.2 基于运动的手势检测方法2.1.3 基于边缘的手势检测方法2.1.4 基于模板的手势检测方法2.1.5 基于机器学习的手势检测方法 3 手部识别3.1 SSD网络3.2 数据集3.3 最终改进的网络结构 4 最后…

STM32 外部中断配置与中断函数设计

单片机学习 目录 文章目录 一、外部中断配置步骤 1.1配置RCC 1.2配置GPIO 1.3配置AFIO 1.4配置EXTI 1.5配置NVIC 二、中断函数设计 总结 一、外部中断配置步骤 第一步&#xff1a;配置RCC&#xff0c;把涉及外设的时钟打开。第二步&#xff1a;配置GPIO&#xff0c;选择…

样品实验K-KAT348羧酸铋催化剂TDS说明书

样品实验K-KAT348羧酸铋催化剂TDS说明书 50克 100克 200克

STM32_11(SPI)

一、SPI通信 SPI&#xff08;Serial Peripheral Interface&#xff09;是由Motorola公司开发的一种通用数据总线四根通信线&#xff1a;SCK&#xff08;Serial Clock&#xff09;、MOSI&#xff08;Master Output Slave Input&#xff09;、MISO&#xff08;Master Input Slav…

还在愁没项目?来瞧瞧这些另类赚钱方式

客套话不多说&#xff0c;直接上案例&#xff0c;这些都是正儿八经的真实案例&#xff0c;相信大家通过这些人的案例自然能摸索整理出一套属于自己的项目&#xff01;摸索不出&#xff0c;也多多少少能受一些灵感上的启发。 小A是长期混B站的&#xff0c;大家称他为“B站搬运工…

C++ 通过SQLite实现命令行工具

本文介绍了一个基于 C、SQLite 和 Boost 库的简单交互式数据库操作 Shell。该 Shell 允许用户通过命令行输入执行各种数据库操作&#xff0c;包括添加、删除主机信息&#xff0c;设置主机到特定主机组&#xff0c;以及显示主机和主机组列表。通过调用 SQLite3 库实现数据库连接…

【网络安全】meterpreter攻击实战

1.meterpreter 攻击成功后可以做什么指令&#xff1f; 远程控制命令执行摄像头监控密码获取创建后门用户破坏篡改系统。 2.创建后门用户并开启远程连接&#xff1a; net user zhangsan 123456/add && net localgroup adminstrators zhangsan/add exit run getgul -…

拓数派荣获上海市“智慧工匠”工业软件创新案例奖

近日&#xff0c;由上海市经济和信息化委员会指导、上海市城市数字化转型应用促进中心主办、上海中创产业创新研究院承办的“工业软件赋能新型工业化”主题沙龙暨2023“智慧工匠”工业软件创新案例竞赛颁奖典礼在上海圆满落幕。拓数派凭借上汽集团工业数据管理服务平台案例成功…

ROS vscode使用基本配置

1、创建ros工作空间 2、启动 vscode 3、vscode 中编译 ros ctrl shift B 调用编译&#xff0c;选择:catkin_make:build 修改.vscode/tasks.json 文件 4、 创建 ROS 功能包 选定 src ---> create catkin package 依次设置包名、添加依赖 5、C 实现 在功能包的 src 下…

Yolov8训练数据集过程 + 测试测试集 + 继续训练+报错解决

做自己第一次使用Yolov8训练的记录 1、下载代码 官网的我没找到对应的视频教程&#xff0c;操作起来麻烦&#xff0c;一下这个链接的代码可以有对应bilibili教程&#xff1a;完整且详细的Yolov8复现训练自己的数据集 选择这个下载&#xff1a; 2、安装需要的包&#xff1a; …

扫码听音乐该如何制作?音乐的二维码生成方法

多个音频文件怎么做成一个二维码显示&#xff1f;二维码在现在的生活中拥有丰富的使用场景&#xff0c;可以用来作为多种内容类型的载体&#xff0c;比如音频二维码就是经常被使用的一种二维码类型。通过扫秒二维码来听音频文件&#xff0c;更加的灵活方便&#xff0c;那么音频…

MySQL C代码连接

环境&#xff1a;5.7.42-0ubuntu0.18.04.1 (Ubuntu) mysql接口介绍 初始化mysql指针 用来生成MySQL对象&#xff0c;返回值为MySQL*&#xff0c;MySQL*是MySQL对象的指针。 MySQL在mysql.h中是一个结构体 链接数据库 初始化完毕之后&#xff0c;必须先链接数据库&#xff…

安防监控系统的工作原理是什么?具体包含哪些组成部分?

关于安防监控系统&#xff0c;大家熟知的就是监控系统平台&#xff0c;其实不然&#xff0c;智能视频安防监控系统涵盖的内容非常多&#xff0c;今天小编就和大家一起来探讨一下。 安防监控视频系统主要分为以下7大类&#xff1a; 1、 摄像头采集图像 安防监控系统通常使用摄…

11-30 SpringBoot

内嵌的tomcat tomcat的依赖 对于tomcat其实还是一个jar包 spring是一个IOC容器 tomcat的核心对象交给Spring容器 调用核心对象方法 启动Tomcat 1.添加依赖 tomcat-embed-core&#xff0c;叫做tomcat内嵌核心。就是这个东西把tomcat功能引入到了我们的程序中的 排除tomcat&a…