一种高可用负载均衡网络数据采集处理的方法及系统
2020-08-13
1 引言
随着传感器技术、计算机技术、互联网技术等的飞速发展,依托对网络数据的采集处理,网络应用发展迅猛,极大地提高了社会生产效率,改善了民众社会生活水平,与此同时带来了爆炸式增长的网络流量,这对网络数据采集处理的性能和稳定性提出了极高的要求[1]。
目前,针对实际业务与应用需要,需要对网络数据包进行采集处理,主流的网络数据采集和处理系统主要包括:汇聚交换设备、采集处理单元、组网交换机等,根据应用和业务需要对网络数据包进行采集处理[2]。现有的网络数据采集处理系统中,汇聚交换设备依据LAN端口的电气状态,判断采集处理单元的端口和链路是否正常[3,4]。若端口状态和链路都正常的情况下,因汇聚交换设备未知的硬件故障导致LAN端口通信中断,或采集处理单元出现异常时,这将导致汇聚交换设备无法正常判断,数据的继续传输会造成丢失或网络中断,严重影响网络的安全和稳定[5]。
综上所述,需要研究一种高可用负载均衡网络数据采集处理的方法,能够监测网络数据采集处理系统软硬件的运行状态,准确快速地判断软硬件故障,能准实时地将故障端口、单元对应的数据均分到其他正常运行的数据采集处理单元,保障系统运行正常、网络通信稳定,真正实现高可用的负载均衡网络数据采集处理系统,具有重要的意义。
2 高可用负载均衡网络数据采集处理系统
高可用负载均衡网络数据采集处理系统由汇聚交换设备、采集处理单元、组网交换机等组成,系统拓扑如图1所示,各部分描述如下:
图1 高可用负载均衡网络数据采集处理系统拓扑图
(1)外部网络设备:通过链路与汇聚交换设备的WAN端口相连,能够进行双向通信;
(2)汇聚交换设备:按负载均衡策略把流量均衡地从LAN端口组输出;
(3)采集处理单元:根据LAN端口的总数,按平均分配的原则,与汇聚交换设备的LAN端口对接,每个采集处理单元可以接入一条或多条链路;根据应用和业务需要对输入的数据进行采集、分析、处理、转发等。
(4)转发的数据流向:由LAN端口输入到汇聚交换设备,经汇聚交换设备把数据从对应的WAN端口输出;
(5)通信方式:汇聚交换设备、采集处理单元的管理通信网口连接到组网交换机,相互进行通信。
2.1 高可用负载均衡网络数据采集处理系统的方案设计
对系统整体架构拆分分析,系统整体架构如图2所示,各部分的逻辑描述如下:
图2 高可用负载均衡网络数据采集处理系统的整体架构
(1)为每个采集处理单元分配一个按数字递增的唯一主机ID,从1开始。同时配置在线采集处理单元的总数、对应的LAN端口号等信息,这些信息记录到配置文件;
(2)每个采集处理单元除了部署网络数据包采集、处理的相关功能模块外,还需部署系统监控模块,分为主控状态和备用状态;
(3)各采集处理单元的系统监控模块按如下规则确定主控、备用状态:所有当前正常运行的采集处理单元中,主机ID最小的系统监控模块为主控状态,其他采集处理单元中的系统监控模块为备用状态;
随着互联网信息技术和社会经济的快速发展,人们获取信息的方式和媒介信息传播的生态环境发生了巨大变革。在信息传播格局深刻变化的新时代,网络媒介信息宣传工作必须跟上时代发展的步伐,着力打造行业特色信息传播平台,通过多种媒介语言讲好文化故事。网络编辑只有主动适应新形势,把握新机遇,将新技术、新手段运用于媒介信息宣传工作的创新实践中,才能为优化信息传播工作提供更便捷、更实用、更有效的载体。
(5)主系统监控模块的功能有:监控其他采集处理单元的心跳情况,当某个采集处理单元的心跳发生超时,关闭故障对应的LAN端口,把数据负载均衡地分配到其他正常运行的采集处理单元,如图3所示;
(6)备系统监控模块的功能有:监控其他采集处理单元的心跳情况,当发现某个采集处理单元的心跳发生超时,判断自身主机ID是否为当前在线正常运行采集处理单元中最小的,如果不是,则不需处理,否则将自身状态切换为主控状态,关闭故障对应的LAN端口,把数据负载均衡地分配到其他正常运行的采集处理单元,如图4所示。
2.2 高可用负载均衡网络数据采集处理系统的方案逻辑
针对系统的采集处理过程,通过主控、备用两种通信方式的结合,具有了双重保障,可实现高效和可靠的故障判断,避免误判,各部分设定的逻辑描述如下:
(1)当主系统监控模块所在的采集处理单元出现故障时,则由其他正常运行采集处理单元中主机ID最小的系统监控模块接替为主控状态,逻辑描述如图3所示;
图3 主系统监控模块异常处理逻辑描述图
(2)当原主系统监控模块所在的采集处理单元恢复正常时,由于其主机ID是当前最小的,所以重新成为主系统监控模块,而之前接替为主系统监控模块判断到有主机ID更小的采集处理单元激活,则退出主控状态,切换为备用状态,逻辑描述如图4所示;
(3)采集处理单元通过LAN端口发送心跳消息(包含自身主机ID信息),由汇聚交换设备广播到其他采集处理单元,每个采集处理单元根据其他采集处理单元的心跳情况,从而确定它们的运行状态;
(4)采集处理单元还能通过组网交换机这条通信途径相互通信,用于主系统监控模块确认采集处理单元的故障情况(某台采集处理单元的心跳超时),立刻通过组网交换机向疑似故障采集处理单元的系统监控模块发送异常确认请求消息,如果收到确认回复消息或响应超时,则判定其出现故障。
图4 主系统监控模块恢复正常逻辑描述图
2.3 负载均衡策略
2.4 高可用策略
按照主从方式配置:主机工作,备机处于监控准备状况;当主机宕机时,备机接管主机的一切工作,待主机恢复正常后,按使用者的设定以自动或手动方式将服务切换到主机上运行,数据的一致性通过共享存储系统解决。
高可用策略能够在汇聚交换设备LAN端口、链路、采集处理单元端口出现故障、采集处理单元掉电的情况下保证数据不丢失、网络不中断;同时也能保证汇聚交换设备因监测不到的硬件故障导致LAN端口通信中断,或者采集处理单元在操作系统死机、采集处理软件出现故障、采集处理单元在线更新升级时,达到数据不丢失、业务不中断、网络无感知的效果。
2.5 整体方案流程
整体方案流程如图5所示,详细的处理流程描述如下:
(1)采集处理单元启动完成后,采集处理模块按定义的时间间隔(每5毫秒)从LAN端口发送心跳消息,心跳消息包含自身的主机ID信息,由汇聚交换设备广播到其他采集处理单元。采集处理模块发送心跳的同时把时间戳记录到共享内存,精确到毫秒。
(2)当采集处理单元在采集数据时,收到其他采集处理单元发送的心跳消息后,把该主机ID和心跳时间戳记录到共享内存,精确到毫秒。
(3)每个采集处理单元的系统监控模块每5 ms读取一次共享内存,检查自身及其他采集处理单元的心跳消息时间戳,如果自身的心跳时间戳超过15 ms没有更新,说明采集处理模块连续缺少3个心跳消息,可确认其出现异常,在收到其他采集处理单元发送过来的异常确认请求消息时回复确认消息;如果其他采集处理单元的心跳时间戳超过15 ms没有更新,说明该采集处理单元连续缺少3个心跳消息,已经出现异常,不能正常发送心跳消息。
(4)主控状态的系统监控模块监测到其他采集处理单元出现异常后,立刻通过组网交换机的通信途径向异常单元的系统监控模块发送异常确认请求消息,如果收到确认回复或响应超时,则判定该单元异常,把汇聚交换设备对应的LAN端口设置为不可用状态,流量不再向其分流;如果收到采集处理单元正常运行的回复消息,则认为是汇聚分流设备的原因导致,主控系统监控模块不需操作,由另外的汇聚交换设备的保护机制实施保护措施。
(5)如果备用状态的系统监控模块检测到其他备用状态的采集处理单元心跳超时,由于自身主机ID非当前最小,所以不需进行任何操作。
(6)如果备用状态的系统监控模块检测到主控状态的采集处理单元心跳超时,则判断自身主机ID是否仅次于主控采集处理单元,如果是,则将自己切换成主控状态,同时通过组网交换机的通信途径向原主控采集处理单元的系统监控模块发送异常确认请求消息,如果收到确认回复或响应超时,则判定该单元异常,把汇聚交换设备对应的LAN端口设置为不可用状态,流量不再向其分流,如果收到原主控采集处理单元正常运行的回复消息,则认为是汇聚分流设备的原因导致,不需进行任何操作,由另外的汇聚交换设备的保护机制实施保护措施。
图5 高可用负载均衡网络数据采集处理系统的方案处理流程图
3 结论
本文所提的高可用负载均衡网络数据采集处理的方法及系统,采用简洁的通信协议,严谨的控制逻辑,在不增加硬件成本的情况下能够监测软硬件的运行状态,当系统出现软硬件故障时能准确、快速地判断故障,特别适用在综合门户系统、电子政务系统、综合管理系统等需要大量网络数据采集及处理的场景中应用。