CN115242704B - 网络拓扑数据更新方法、装置和电子设备 - Google Patents

网络拓扑数据更新方法、装置和电子设备 Download PDF

Info

Publication number
CN115242704B
CN115242704B CN202210709916.9A CN202210709916A CN115242704B CN 115242704 B CN115242704 B CN 115242704B CN 202210709916 A CN202210709916 A CN 202210709916A CN 115242704 B CN115242704 B CN 115242704B
Authority
CN
China
Prior art keywords
container group
detected
group
tested
cluster
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210709916.9A
Other languages
English (en)
Other versions
CN115242704A (zh
Inventor
马荻
槐正
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202210709916.9A priority Critical patent/CN115242704B/zh
Publication of CN115242704A publication Critical patent/CN115242704A/zh
Application granted granted Critical
Publication of CN115242704B publication Critical patent/CN115242704B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了网络拓扑数据更新方法、装置和电子设备。该方法的实施例包括:获取待测容器组的历史运行数据;基于历史运行数据,确定目标容器组,目标容器组包括以下至少一项:待测容器组的历史所在集群中的历史容器组、除当前所在集群以外的其他集群中与待测容器组存在业务关联的关联容器组;检测待测容器组与目标容器组的网络关系,得到检测结果;基于检测结果,更新待测容器组的网络拓扑数据。该实施方式降低了控制节点的数据压力,提高了网络拓扑数据更新的及时性。

Description

网络拓扑数据更新方法、装置和电子设备
技术领域
本申请实施例涉及计算机技术领域,具体涉及网络拓扑数据更新方法、装置和电子设备。
背景技术
Kubernetes,简称K8s或Kube,是一个开源的容器自动化运维平台,可用于管理云平台中多个主机上的容器化应用程序。其可消除容器化应用程序在部署、伸缩时涉及到的诸多手动操作,协助用户简单高效地进行集群管理。通常,K8s集群中包括一个控制节点(Master)和若干工作节点(Node)。每个工作节点中部署有若干容器组(Pod)。每个容器组可包括多个容器,应用程序可运行于容器中。
现有技术中,当某个K8s集群中的容器组与其他集群发生业务往来、业务往来中止、或者容器组被转移至其他K8s集群时,通常需要通过替换存储于控制节点中的配置文件,来更新网络拓扑数据。然而,在机房运维等场景下,K8s集群规模极大,应用关系复杂,依赖层级较多,这种方式不仅使控制节点承受较大数据压力,同时无法保证网络拓扑数据的及时更新。
发明内容
本申请实施例提出了网络拓扑数据更新方法、装置和电子设备,以解决现有技术中集群中的控制节点数据压力较大以及网络拓扑数据无法及时更新的技术问题。
第一方面,本申请实施例提供了一种网络拓扑数据更新方法,应用于集群管理服务器,所述集群管理服务器中部署有多个集群,每个集群中运行有至少一个容器组,所述方法包括:获取待测容器组的历史运行数据;基于所述历史运行数据,确定目标容器组,所述目标容器组包括以下至少一项:所述待测容器组的历史所在集群中的历史容器组、除当前所在集群以外的其他集群中与所述待测容器组存在业务关联的关联容器组;检测所述待测容器组与所述目标容器组的网络关系,得到检测结果;基于所述检测结果,更新所述待测容器组的网络拓扑数据。
第二方面,本申请实施例提供了一种网络拓扑数据更新装置,应用于集群管理服务器,所述集群管理服务器中部署有多个集群,每个集群中运行有至少一个容器组,所述装置包括:获取单元,用于获取待测容器组的历史运行数据;确定单元,用于基于所述历史运行数据,确定目标容器组,所述目标容器组包括以下至少一项:所述待测容器组的历史所在集群中的历史容器组、除当前所在集群以外的其他集群中与所述待测容器组存在业务关联的关联容器组;检测单元,用于检测所述待测容器组与所述目标容器组的网络关系,得到检测结果;更新单元,用于基于所述检测结果,更新所述待测容器组的网络拓扑数据。
第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中所描述的方法。
第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面中所描述的方法。
本申请实施例提供的网络拓扑数据更新方法、装置和电子设备,通过获取待测容器组的历史运行数据,而后基于历史运行数据确定目标容器组,之后检测待测容器组与目标容器组的网络关系,得到检测结果,最后基于检测结果,更新待测容器组的网络拓扑数据,从而,无需替换存储于控制节点中的配置文件,即可实现待测容器组与目标容器组的网络关系的自动检测以及网络拓扑数据的自动更新,降低了控制节点的数据压力。此外,由于目标容器组可包括待测容器组的历史所在集群中的历史容器组,以及除当前所在集群以外的其他集群中与待测容器组存在业务关联的关联容器组,因此,可在待测容器组跨集群转移后能够及时更新网络拓扑数据,也可在待测容器组与其他集群发生业务往来导致端口暴露、业务往来中止导致端口关闭等情况下及时更新网络拓扑数据,提高了网络拓扑数据更新的及时性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请的网络拓扑数据更新方法的一个实施例的流程图;
图2是本申请的拓扑数据更新方法的应用场景的示意图;
图3是本申请的拓扑数据更新方法中的拓扑测绘模型的训练过程的示意图;
图4是本申请的拓扑数据更新方法中的拓扑测绘模型的训练过程的流程图;
图5是本申请的拓扑数据更新方法中的待测容器组与关联容器组的网络关系确定过程的流程图;
图6是本申请的网络拓扑数据更新装置的一个实施例的结构示意图;
图7是用于实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
需要指出的是,本申请中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
请参考图1,其示出了本申请的网络拓扑数据更新方法的一个实施例的流程图。该网络拓扑数据更新方法,可应用于集群管理服务器。所述网络拓扑数据更新方法,包括以下步骤:
步骤101,获取待测容器组的历史运行数据。
在本实施例中,所述集群管理服务器中可部署有多个集群。每个集群中可运行有至少一个容器组。每个容器组可包括至少一个容器,以用于运行至少一个应用程序。待测容器组可以是任一集群中的任一容器组。待测容器组的历史运行数据可以是历史运行日志等数据。历史运行数据中可包括与待测容器组相关的各种信息,例如,与待测容器组存在交互的IP(Internet Protocol,互联网协议)地址、所述IP地址映射的应用程序的名称、待测容器组的历史所在集群等,且不限于上述列举。
传统的应用程序部署方式是安装于插件或脚本中,其缺点是应用程序的运行、配置、管理、生存周期将与操作系统绑定,不利于应用程序的升级、更新、回滚等操作。本实施例中,通过容器,可使应用程序与底层的宿主机操作系统解耦,更利于应用程序的升级、更新、回滚等操作。此外,每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会相互影响,便于区分计算资源。
作为示例,图2示出了本申请的网络拓扑数据更新方法的应用场景的示意图。如图2所示,集群管理服务器中的所部署的集群可以是K8s集群。K8s集群可包括一个控制节点(Master)和至少一个工作节点(Node)。每个工作节点中可运行有多个容器组(Pod)。
其中,Master可负责整个集群的管理控制。Node指的是一个工作机器,用于承接Master分配的工作。Node既可以是虚拟机也可以是物理机。Pod是K8s中最小的可部署单元。一个Pod可包含一个或多个容器,以运行一个或多个应用程序。同一个Pod中的容器共享IP地址、进程间通讯、主机名以及其它资源。Pod将底层容器的网络和存储抽象出来,使得集群内的容器迁移更为便捷。本实施例中的待测容器组,可以是集群管理服务器所管理的任一K8s集群中的任一Node中的任一Pod。
在此场景中,集群管理服务器中可部署历史数据库。历史数据库中可包括各个Pod的历史运行数据。通过待测容器组的标识,可查询历史数据库,从而得到其历史运行数据。
步骤102,基于历史运行数据,确定目标容器组。
在本实施例中,由于历史运行数据中可包括与待测容器组相关的各种信息(例如,与待测容器组存在交互的IP地址、待测容器组的历史所在集群等),因此,基于历史运行数据,可以确定以下至少一项:待测容器组的历史所在集群中的容器组(可称为历史容器组)、除当前所在集群以外的其他集群中与待测容器组存在业务关联的容器组(可称为关联容器组)。可将上述至少一项作为目标容器组。
步骤103,检测待测容器组与目标容器组的网络关系,得到检测结果。
在本实施例中,可通过多种方式检测待测容器组与目标容器组的网络关系,得到检测结果。作为示例,可以首先测试待测容器组与目标容器组的通信覆盖情况,之后基于所述通信覆盖情况来确定待测容器组与目标容器组的网络关系,得到检测结果。其中,通信覆盖情况的测试可包括但不限于以下至少一项:待测容器组与目标容器组是否在彼此的覆盖范围内、是否位于同一命令发送方的覆盖范围内、是否能够向同一命令接收方发送命令。作为又一示例,可以通过预设的算法、模型等对历史运行数据进行分析,来确定待测容器组与目标容器组的网络关系,从而得到检测结果。需要说明的是,网络关系还可以通过其他方式检测,不限于上述列举。
在本实施例中,检测结果可以包括用于表征待测容器组与目标容器组的网络关系的标识。作为示例,网络关系可包括但不限于以下至少一项:隐藏网络关系、暴露网络关系。网络关系标识可包括但不限于以下至少一项:隐藏节点标识(例如,“隐藏节点=1”)、非隐藏节点标识(例如,“非隐藏节点=0”)、暴露节点标识(例如,“暴露节点=1”)、非暴露节点标识(例如,“非暴露节点=0”)。
步骤104,基于检测结果,更新待测容器组的网络拓扑数据。
在本实施例中,拓扑是一种不考虑物体的大小、形状等物理属性,而仅仅使用点或者线描述多个物体实际位置与关系的抽象表示方法。拓扑不关心事物的细节,也不在乎相互的比例关系,而只是以图的形式表示一定范围内多个物体之间的相互关系。网络拓扑(Network Topology)是指组成网络的计算机或设备与传输介质间形成的结点与线路的物理构成模式,可表征传输介质互连各种设备的物理布局。网络拓扑数据可以是用于生成网络拓扑的数据。
在本实施例中,可维护有网络拓扑数据库。网络拓扑数据库中可存储有所述多个集群中的各容器组的网络拓扑数据。以网络拓扑数据库中的网络拓扑数据为基础,可构建表征所述多个集群中的容器组网络关系的网络拓扑图。在得到所述检测结果后,可以基于检测结果,将待测容器组与目标容器组的网络关系更新至网络拓扑数据进行更新,由此,可实现网络图谱图的更新,从而进行可视化展示。
需要说明的是,在更新网络拓扑数据时,还可以将待测容器组的集群相关信息(例如,历史所在集群的名称、当前所在集群的名称)、待测容器组的所在工作节点的相关信息(例如,所在工作节点的名称等)、端口名、IP地址等信息同步更新至待测容器组的网络拓扑数据,以进一步完善网络拓扑数据。
本申请的上述实施例提供的方法,通过获取待测容器组的历史运行数据,而后基于历史运行数据确定目标容器组,之后检测待测容器组与目标容器组的网络关系,得到检测结果,最后基于检测结果,更新待测容器组的网络拓扑数据,从而,无需替换存储于控制节点中的配置文件,即可实现待测容器组与目标容器组的网络关系的自动检测以及网络拓扑数据的自动更新,降低了控制节点的数据压力。此外,由于目标容器组可包括待测容器组的历史所在集群中的历史容器组,以及除当前所在集群以外的其他集群中与待测容器组存在业务关联的关联容器组,因此,可在待测容器组跨集群转移后能够及时更新网络拓扑数据,也可在待测容器组与其他集群发生业务往来导致端口暴露、业务往来中止导致端口关闭等情况下及时更新网络拓扑数据,提高了网络拓扑数据更新的及时性。
在一些可选的实施例中,所述目标容器组可以包括待测容器组的历史所在集群中的历史容器组。上述步骤103中的网络关系可包括隐藏节点关系,以用于指示待测容器组是否为历史容器组的隐藏节点。其中,隐藏节点是指在接收接节点的覆盖范围内而在发送节点的覆盖范围外的节点。以K8s集群为例,若某一发送节点(例如,某个K8s集群中的某个Node)向其覆盖范围内的历史容器组发送消息或指令,则该历史容器组可作为接收节点。若待测容器组位于该发送节点的覆盖范围之外且在历史容器组的覆盖范围之内,则该待测容器组即为历史容器组的隐藏节点。
在所述步骤103中,可通过预先构建的拓扑测绘模型检测所述待测容器组与历史容器组的隐藏节点关系。其中,拓扑测绘模型可基于机器学习方法构建,其可用于输出计算某个容器组为另一容器组的隐藏节点的概率。在本实施例中,可首先将待测容器组的历史运行数据输入至预先构建的拓扑测绘模型,得到待测容器组为历史容器组的隐藏节点的概率。而后,可基于该概率,确定待测容器组是否为历史容器组的隐藏节点,得到用于指示待测容器组是否为历史容器组第一检测结果。例如,若该概率大于预设阈值,可确定待测容器组为历史容器组的隐藏节点;反之,确定待测容器组为历史容器组的非隐藏节点。实践中,第一检测结果可包括针对历史所在集群的隐藏节点标识(例如,“第一隐藏节点=1”)或者非隐藏节点标识(例如,“第一非隐藏节点=0”)。
通过拓扑测绘模型进行网络关系的检测,无需替换存储于控制节点中的配置文件,即可实现待测容器组与历史容器组的网络关系的自动检测以及网络拓扑数据的自动更新,降低了控制节点的数据压力。此外,无需进行配置文件的创建和替换,可在待测容器组跨集群转移后能够及时更新网络拓扑数据,提高了网络拓扑数据更新的及时性。
在一些可选的实现方式中,在基于上述概率确定待测容器组是否为历史容器组的隐藏节点时,还可以进一步结合其他信息,以提高隐藏节点检测的准确性。例如,可基于SNMP(Simple Network Management Protocol,简单网络管理协议)命令,检测待测容器组是否为历史容器组的潜在隐藏节点。SNMP是设计用于在IP网络管理网络节点(如服务器、工作站、路由器、交换机等)的一种标准协议,它是一种应用层协议。SNMP使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。通过SNMP接收随机消息(及事件报告)网络管理系统获知网络出现问题。若待测容器组为潜在隐藏节点且概率大于预设阈值(例如,50%),则可确定待测容器组为历史容器组的隐藏节点。由此,可结合多种信息判断隐藏节点,提高了隐藏节点判断结果的准确性。
在一些可选的实现方式中,所述拓扑测绘模型可通过随机森林法构建。参见图3所示的拓扑测绘模型的训练过程的示意图以及图4所示的拓扑测绘模型的训练过程的流程图,具体包括如下子步骤:
子步骤S11,获取样本集。所述样本集中可包括多个样本容器组的历史运行数据样本。
子步骤S12,对样本集中的历史运行数据样本进行多次采样,得到多个采样集。例如,可对样本集中的历史运行数据样本进行n次采样,得到n个采样集,分别为采样集1,采样集2,采样集3,…,采样集n。
子步骤S13,分别基于多个采样集中的每个采样集,构建决策树。例如,若共有n个采样集,则可构建n个决策树,分别为决策树1,决策树2,决策树3,…,决策树n。在训练决策树时,可在所有的特征中选择一部分特征,从这些随机选择的特征中选择一个最优的特征来做决策树的左右子树划分结果。每个决策树可用于进行概率预测,得到隐藏节点的概率。
子步骤S14,基于所构建的各决策树,拟合拓扑测绘模型。例如,可通过计算各决策树预测的概率的加权平均值,得到拓扑测绘模型。
作为示例,拓扑测绘模型可采用如下表达式表示:
其中,|D|表示样本集,|Di|表示第i个采样集,H(i)表示第i个决策树,Hj表示拓扑测绘模型。i=1,2,…,n。
需要说明的是,所述拓扑测绘模型也可以通过其他方式构建。例如,可通过有监督学习方式对神经网络模型训练得到,此处不作限定。
在一些可选的实施例中,所述目标容器组可包括除待测容器组当前所在集群以外的其他集群中与待测容器组存在业务关联的关联容器组。上述步骤103中的网络关系既可以包括隐藏节点关系,也可以包括暴露节点关系,以用于指示待测容器组是否为关联容器组的隐藏节点及暴露节点。其中,暴露节点是指在发送节点覆盖范围内而在接收节点覆盖范围外的节点。以K8s集群为例,可将关联容器组作为发送节点,将关联容器组的覆盖范围的一节点(例如,某个K8s集群中的某个Node)作为接收节点,若该接收节点的覆盖范围内不包括待测容器组,则待测容器组即为关联容器组的暴露节点。在所述步骤103中,参见图4,可通过如下子步骤确定目标容器组与关联容器组的网络关系:
子步骤S21,基于PING(Packet Internet Groper,因特网包探索器)命令,检测待测容器组是否为关联容器组的暴露节点,得到第二检测结果。
此处,PING是工作在TCP(Transmission Control Protocol,传输控制协议)/IP网络体系结构中应用层的一个服务命令,主要是向特定的目的主机发送ICMP(InternetControl Message Protocol,因特网报文控制协议)计算机命令请求报文,测试目的站是否可达及了解其有关状态。
作为示例,若关联容器组发送的PING命令能够被待测容器组和其他命令接收方接收,且待测容器组发送的PING命令无法被命令接收方接收,则可确定待测容器组为关联容器组的暴露节点。若不满足上述条件,则可待测容器组为关联容器组的非暴露节点。实践中,第二检测结果可包括暴露节点标识(例如,“暴露节点=1”)或者非隐藏节点标识(例如,“非暴露节点=0”)。
子步骤S22,基于SNMP命令,检测待测容器组是否为关联容器组的隐藏节点,得到第三检测结果。
作为示例,若待测容器组和关联容器组发送的SNMP命令能够被同一命令接收方接收,且待测容器组无法接收到来自关联容器组的SNMP命令,则可确定待测容器组为关联容器组的隐藏节点。若不满足上述条件,则可待测容器组为关联容器组的非隐藏节点。实践中,第三检测结果可包括针对关联容器组的隐藏节点标识(例如,“第二隐藏节点=1”)或者非隐藏节点标识(例如,“第二非隐藏节点=0”)。
通过命令进行网络关系的检测,无需替换存储于控制节点中的配置文件,即可实现待测容器组与关联容器组的网络关系的自动检测以及网络拓扑数据的自动更新,降低了控制节点的数据压力。此外,无需进行配置文件的创建和替换,可在待测容器组与其他集群发生业务往来导致端口暴露、业务往来中止导致端口关闭等情况下及时更新网络拓扑数据,提高了网络拓扑数据更新的及时性。
进一步参考图6,作为对上述各图所示方法的实现,本申请提供了一种网络拓扑数据更新装置的一个实施例,该装置实施例与图1所示的方法实施例相对应,该装置具体可以应用于集群管理服务器。所述集群管理服务器中部署有多个集群,每个集群中运行有至少一个容器组。
如图6所示,本实施例的网络拓扑数据更新装置600包括:获取单元601,用于获取待测容器组的历史运行数据;确定单元602,用于基于所述历史运行数据,确定目标容器组,所述目标容器组包括以下至少一项:所述待测容器组的历史所在集群中的历史容器组、除当前所在集群以外的其他集群中与所述待测容器组存在业务关联的关联容器组;检测单元603,用于检测所述待测容器组与所述目标容器组的网络关系,得到检测结果;更新单元604,用于基于所述检测结果,更新所述待测容器组的网络拓扑数据。
在一些可选的实现方式中,所述目标容器组包括所述待测容器组的历史所在集群中的历史容器组;所述检测单元603,进一步用于将所述历史运行数据输入至预先构建的拓扑测绘模型,得到所述待测容器组为所述历史容器组的隐藏节点的概率;基于所述概率,确定所述待测容器组是否为所述历史容器组的隐藏节点,得到第一检测结果。
在一些可选的实现方式中,所述检测单元603,进一步用于基于简单网络管理协议SNMP命令,检测所述待测容器组是否为所述历史容器组的潜在隐藏节点;若所述待测容器组为潜在隐藏节点且所述概率大于预设阈值,则确定所述待测容器组为所述历史容器组的隐藏节点。
在一些可选的实现方式中,所述拓扑测绘模型通过如下步骤构建:获取样本集,所述样本集中包括多个样本容器组的历史运行数据样本;对所述样本集中的历史运行数据样本进行多次采样,得到多个采样集;分别基于所述多个采样集中的每个采样集,构建决策树;基于所构建的各决策树,拟合拓扑测绘模型。
在一些可选的实现方式中,所述目标容器组包括除当前所在集群以外的其他集群中与所述待测容器组存在业务关联的关联容器组;所述检测单元603,进一步用于基于因特网包探索器PING命令,检测所述待测容器组是否为所述关联容器组的暴露节点,得到第二检测结果;基于SNMP命令,检测所述待测容器组是否为所述关联容器组的隐藏节点,得到第三检测结果。
在一些可选的实现方式中,所述检测单元603,进一步用于若所述关联容器组发送的PING命令能够被所述待测容器组和其他命令接收方接收,且所述待测容器组发送的PING命令无法被所述命令接收方接收,则确定所述待测容器组为所述关联容器组的暴露节点。
在一些可选的实现方式中,所述检测单元603,进一步用于若所述待测容器组和所述关联容器组发送的SNMP命令能够被同一命令接收方接收,且所述待测容器组无法接收到来自所述关联容器组的SNMP命令,则确定所述待测容器组为所述关联容器组的隐藏节点。
本申请的上述实施例提供的装置,通过获取待测容器组的历史运行数据,而后基于历史运行数据确定目标容器组,之后检测待测容器组与目标容器组的网络关系,得到检测结果,最后基于检测结果,更新待测容器组的网络拓扑数据,从而,无需替换存储于控制节点中的配置文件,即可实现待测容器组与目标容器组的网络关系的自动检测以及网络拓扑数据的自动更新,降低了控制节点的数据压力。此外,由于目标容器组可包括待测容器组的历史所在集群中的历史容器组,以及除当前所在集群以外的其他集群中与待测容器组存在业务关联的关联容器组,因此,可在待测容器组跨集群转移后能够及时更新网络拓扑数据,也可在待测容器组与其他集群发生业务往来导致端口暴露、业务往来中止导致端口关闭等情况下及时更新网络拓扑数据,提高了网络拓扑数据更新的及时性。
下面参考图7,其示出了用于实现本申请的一些实施例的电子设备的结构示意图。图7示出的电子设备仅仅是一个示例,不应对本申请的实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700可以包括处理装置(例如中央处理器、图形处理器等)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储装置708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有电子设备700操作所需的各种程序和数据。处理装置701、ROM 702以及RAM703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
通常,以下装置可以连接至I/O接口705:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置706;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置707;包括例如磁盘、硬盘等的存储装置708;以及通信装置709。通信装置709可以允许电子设备700与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备700,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图7中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本申请的一些实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的一些实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的一些实施例中,该计算机程序可以通过通信装置709从网络上被下载和安装,或者从存储装置708被安装,或者从ROM 702被安装。在该计算机程序被处理装置701执行时,执行本申请的一些实施例的方法中限定的上述功能。
需要说明的是,本申请的一些实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请的一些实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请的一些实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperTextTransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取待测容器组的历史运行数据;基于历史运行数据,确定目标容器组,目标容器组包括以下至少一项:待测容器组的历史所在集群中的历史容器组、除当前所在集群以外的其他集群中与待测容器组存在业务关联的关联容器组;检测待测容器组与目标容器组的网络关系,得到检测结果;基于检测结果,更新待测容器组的网络拓扑数据。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的一些实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++;还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接),上述网络包括局域网(LAN)或广域网(WAN)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请的一些实施例中的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括第一确定单元、第二确定单元、选取单元和第三确定单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
以上描述仅为本申请的一些较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (9)

1.一种网络拓扑数据更新方法,其特征在于,应用于集群管理服务器,所述集群管理服务器中部署有多个集群,每个集群中运行有至少一个容器组,所述方法包括:
获取待测容器组的历史运行数据;
基于所述历史运行数据,确定目标容器组,所述目标容器组包括以下至少一项:所述待测容器组的历史所在集群中的历史容器组、除当前所在集群以外的其他集群中与所述待测容器组存在业务关联的关联容器组;
检测所述待测容器组与所述目标容器组的网络关系,得到检测结果;
基于所述检测结果,更新所述待测容器组的网络拓扑数据;
所述目标容器组包括所述待测容器组的历史所在集群中的历史容器组;所述检测所述待测容器组与所述目标容器组的网络关系,得到检测结果,包括:
将所述历史运行数据输入至预先构建的拓扑测绘模型,得到所述待测容器组为所述历史容器组的隐藏节点的概率;
基于所述概率,确定所述待测容器组是否为所述历史容器组的隐藏节点,得到第一检测结果。
2.根据权利要求1所述的方法,其特征在于,所述基于所述概率,确定所述待测容器组是否为所述历史容器组的隐藏节点,包括:
基于简单网络管理协议SNMP命令,检测所述待测容器组是否为所述历史容器组的潜在隐藏节点;
若所述待测容器组为潜在隐藏节点且所述概率大于预设阈值,则确定所述待测容器组为所述历史容器组的隐藏节点。
3.根据权利要求1所述的方法,其特征在于,所述拓扑测绘模型通过如下步骤构建:
获取样本集,所述样本集中包括多个样本容器组的历史运行数据样本;
对所述样本集中的历史运行数据样本进行多次采样,得到多个采样集;
分别基于所述多个采样集中的每个采样集,构建决策树;
基于所构建的各决策树,拟合拓扑测绘模型。
4.根据权利要求1所述的方法,其特征在于,所述目标容器组包括除当前所在集群以外的其他集群中与所述待测容器组存在业务关联的关联容器组;所述检测所述待测容器组与所述目标容器组的网络关系,得到检测结果,包括:
基于因特网包探索器PING命令,检测所述待测容器组是否为所述关联容器组的暴露节点,得到第二检测结果;
基于SNMP命令,检测所述待测容器组是否为所述关联容器组的隐藏节点,得到第三检测结果。
5.根据权利要求4所述的方法,其特征在于,所述基于因特网包探索器PING命令,检测所述待测容器组是否为所述关联容器组的暴露节点,包括:
若所述关联容器组发送的PING命令能够被所述待测容器组和其他命令接收方接收,且所述待测容器组发送的PING命令无法被所述命令接收方接收,则确定所述待测容器组为所述关联容器组的暴露节点。
6.根据权利要求4所述的方法,其特征在于,所述基于SNMP命令,检测所述待测容器组是否为所述关联容器组的隐藏节点,得到第三检测结果,包括:
若所述待测容器组和所述关联容器组发送的SNMP命令能够被同一命令接收方接收,且所述待测容器组无法接收到来自所述关联容器组的SNMP命令,则确定所述待测容器组为所述关联容器组的隐藏节点。
7.一种网络拓扑数据更新装置,其特征在于,应用于集群管理服务器,所述集群管理服务器中部署有多个集群,每个集群中运行有至少一个容器组,所述装置包括:
获取单元,用于获取待测容器组的历史运行数据;
确定单元,用于基于所述历史运行数据,确定目标容器组,所述目标容器组包括以下至少一项:所述待测容器组的历史所在集群中的历史容器组、除当前所在集群以外的其他集群中与所述待测容器组存在业务关联的关联容器组;
检测单元,用于检测所述待测容器组与所述目标容器组的网络关系,得到检测结果;
更新单元,用于基于所述检测结果,更新所述待测容器组的网络拓扑数据;
所述目标容器组包括所述待测容器组的历史所在集群中的历史容器组;所述检测单元,用于将所述历史运行数据输入至预先构建的拓扑测绘模型,得到所述待测容器组为所述历史容器组的隐藏节点的概率;基于所述概率,确定所述待测容器组是否为所述历史容器组的隐藏节点,得到第一检测结果。
8.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
9.一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN202210709916.9A 2022-06-22 2022-06-22 网络拓扑数据更新方法、装置和电子设备 Active CN115242704B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210709916.9A CN115242704B (zh) 2022-06-22 2022-06-22 网络拓扑数据更新方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210709916.9A CN115242704B (zh) 2022-06-22 2022-06-22 网络拓扑数据更新方法、装置和电子设备

Publications (2)

Publication Number Publication Date
CN115242704A CN115242704A (zh) 2022-10-25
CN115242704B true CN115242704B (zh) 2023-08-11

Family

ID=83669120

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210709916.9A Active CN115242704B (zh) 2022-06-22 2022-06-22 网络拓扑数据更新方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN115242704B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109254842A (zh) * 2017-07-12 2019-01-22 腾讯科技(深圳)有限公司 分布式流式系统的资源管理方法、装置及可读存储介质
CN109582441A (zh) * 2018-11-30 2019-04-05 北京百度网讯科技有限公司 用于提供容器服务的系统、方法和装置
US10515366B1 (en) * 2013-12-24 2019-12-24 EMC IP Holding Company LLC Network neighborhood topology as a predictor for fraud and anomaly detection
CN112468596A (zh) * 2020-12-02 2021-03-09 苏州浪潮智能科技有限公司 一种集群仲裁方法、装置、电子设备及可读存储介质
CN113886181A (zh) * 2021-09-30 2022-01-04 中南大学 应用于AIOps故障预警的动态阈值预测方法、设备及介质
CN113973079A (zh) * 2020-07-07 2022-01-25 瞻博网络公司 用于确定覆盖网络中的数据流路径的系统和方法
CN114048110A (zh) * 2021-11-16 2022-02-15 江苏省未来网络创新研究院 一种基于Antv的自定义可视化拓扑图的实现方法
WO2022105589A1 (zh) * 2020-11-20 2022-05-27 上海连尚网络科技有限公司 资源调度方法、装置、电子设备和计算机可读介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10515366B1 (en) * 2013-12-24 2019-12-24 EMC IP Holding Company LLC Network neighborhood topology as a predictor for fraud and anomaly detection
CN109254842A (zh) * 2017-07-12 2019-01-22 腾讯科技(深圳)有限公司 分布式流式系统的资源管理方法、装置及可读存储介质
CN109582441A (zh) * 2018-11-30 2019-04-05 北京百度网讯科技有限公司 用于提供容器服务的系统、方法和装置
CN113973079A (zh) * 2020-07-07 2022-01-25 瞻博网络公司 用于确定覆盖网络中的数据流路径的系统和方法
WO2022105589A1 (zh) * 2020-11-20 2022-05-27 上海连尚网络科技有限公司 资源调度方法、装置、电子设备和计算机可读介质
CN112468596A (zh) * 2020-12-02 2021-03-09 苏州浪潮智能科技有限公司 一种集群仲裁方法、装置、电子设备及可读存储介质
CN113886181A (zh) * 2021-09-30 2022-01-04 中南大学 应用于AIOps故障预警的动态阈值预测方法、设备及介质
CN114048110A (zh) * 2021-11-16 2022-02-15 江苏省未来网络创新研究院 一种基于Antv的自定义可视化拓扑图的实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
网络拓扑结构可视化方法研究与发展;王松;张野;吴亚东;;网络与信息安全学报(第02期);全文 *

Also Published As

Publication number Publication date
CN115242704A (zh) 2022-10-25

Similar Documents

Publication Publication Date Title
US10402293B2 (en) System for virtual machine risk monitoring
US7376724B2 (en) Dynamic reconfiguration of nodes in a cluster file system
CN110247784B (zh) 确定网络拓扑结构的方法和装置
CN113568860B (zh) 基于深度学习的多机集群拓扑映射方法、装置及程序产品
US20200195517A1 (en) SYSTEM FOR IDENTIFYING AND ASSISTING IN THE CREATION AND IMPLEMENTATION OF A NETWORK SERVICE CONFIGURATION USING HIDDEN MARKOV MODELS (HMMs)
US10735370B1 (en) Name based internet of things (IoT) data discovery
US11489745B2 (en) Methods, systems and computer readable media for providing a declarative network monitoring environment
US11461110B2 (en) Systems and methods for automated and distributed configuration of computing devices
CN113326946A (zh) 更新应用识别模型的方法、装置及存储介质
CN111726352B (zh) 可视化监测探针状态的方法、装置、计算机设备和介质
CN113656315B (zh) 数据测试方法、装置、电子设备和存储介质
CN110083529A (zh) 自动化测试方法、装置、介质和电子设备
CN113704765A (zh) 基于人工智能的操作系统识别方法、装置及电子设备
CN115242704B (zh) 网络拓扑数据更新方法、装置和电子设备
CN114070889A (zh) 配置方法、流量转发方法、设备、存储介质及程序产品
CN113315769A (zh) 工控资产信息收集方法及装置
CN116306407B (zh) 片上网络noc的验证方法、装置、设备和存储介质
CN114826867B (zh) 处理数据的方法、装置、系统及存储介质
US11811730B1 (en) Determining domain name system forwarding rules in a multi-cloud environment
US11262990B2 (en) Application topology discovery
CN114244632B (zh) 检测icmp网络扫描网络攻击行为的方法、装置、电子设备及介质
CN114978794B (zh) 网络接入方法、装置、存储介质以及电子设备
CN115361264B (zh) 节点管理方法、装置、节点、系统及存储介质
US20230222043A1 (en) Run-time modification of data monitoring platform metrics
US20230362674A1 (en) Systems and methods for telecommunication network software parameter optimization

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant