CN116032614A - 容器网络微隔离方法、装置、设备和介质 - Google Patents
容器网络微隔离方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN116032614A CN116032614A CN202211709792.0A CN202211709792A CN116032614A CN 116032614 A CN116032614 A CN 116032614A CN 202211709792 A CN202211709792 A CN 202211709792A CN 116032614 A CN116032614 A CN 116032614A
- Authority
- CN
- China
- Prior art keywords
- isolation
- network
- container
- resource object
- pod
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种容器网络微隔离方法、装置、设备和介质,其中,方法包括:监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;将预设关键信息和目标网络隔离策略发送至对应的节点代理容器内,作为各POD资源对象的IPTables的目标网络隔离策略;当各POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据目标网络隔离策略对流量数据进行过滤,实现容器网络隔离。本发明实施例的技术方案解决了现有的实现容器网络微隔离的方法不具有通用性的问题,实现了一种具有通用性的,在POD粒度层级的网络隔离方法。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种容器网络微隔离方法、装置、设备和介质。
背景技术
目前,在云服务中多是以单个容器实例为单位向租户提供服务,为了保障服务的安全性则需要更加细粒度的实现容器网络微隔离。
现有技术中,实现容器微隔离多是通过基于ebpf(Extended Berkeley PacketFilter)方式或者通过主机上的IPTables实现网络微隔离。但是,上述两中主流的实现方法或是对操作***内核版本有要求,或是不能适合某些网络插件的网络微隔离,不具备通用性。
发明内容
本发明实施例提供了一种容器网络微隔离方法、装置、设备和介质,以提供一种具有通用性的,在POD粒度层级的网络隔离方法。
第一方面,本发明实施例提供了一种容器网络微隔离方法,该方法包括:
监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;
将所述预设关键信息和所述目标网络隔离策略发送至对应的节点代理容器内,作为各所述POD资源对象的IPTables的目标网络隔离策略;
当各所述POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据所述目标网络隔离策略对所述流量数据进行过滤,实现容器网络隔离。
第二方面,本发明实施例提供了一种容器网络微隔离装置,该装置包括:
资源对象信息获取模块,用于监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;
网络隔离策略更新模块,用于将所述预设关键信息和所述目标网络隔离策略发送至对应的节点代理容器内,作为各所述POD资源对象的IPTables的目标网络隔离策略;
网络隔离模块,用于当各所述POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据所述目标网络隔离策略对所述流量数据进行过滤,实现容器网络隔离。
第三方面,本发明实施例还提供了一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所提供的容器网络微隔离方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的容器网络微隔离方法。
上述发明中的实施例具有如下优点或有益效果:
本发明实施例,通过以容器为隔离粒度,监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;将预设关键信息和目标网络隔离策略发送至对应的节点代理容器内,作为各POD资源对象的IPTables的目标网络隔离策略;当各POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据目标网络隔离策略对流量数据进行过滤,实现容器网络隔离。本发明实施例的技术方案解决了现有的实现容器网络微隔离的方法不具有通用性的问题,实现了一种具有通用性的,在POD粒度层级的网络隔离方法,该方法不受限于内核版本,也不受限于使用的网络插件类别。
附图说明
图1是本发明实施例提供的一种容器网络微隔离方法的流程图;
图2是本发明实施例提供的一种容器网络微隔离方法的流程图;
图3是本发明实施例提供的一种实例中实现容器网络微隔离过程示意图;
图4是本发明实施例提供的一种容器网络微隔离装置的结构示意图;
图5是本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
图1为本发明实施例提供的一种容器网络微隔离方法的流程图,本实施例可适用于保障云原生容器网络安全,进行容器网络微隔离的场景。该方法可以由容器网络微隔离装置来执行,该容器网络微隔离装置可以采用硬件和/或软件的形式实现,配置于计算机设备或服务器中。
如图1所示,容器网络微隔离方法包括以下步骤:
S110、监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略。
目标集群可以理解为需要进行网络安全管理的容器集群。POD资源对象是目标集群中的最小工作调度单元,每一POD资源对象中包含一个或者多个容器。POD资源对象中的容器会作为一个整体被调度到一个节点(node)上面去运行。以POD资源对象为信息监控对象即以最细粒度实现容器网络隔离的相关信息获取。
其中,预设关键信息包括POD资源对象唯一的标识信息,以及其网络连接信息,如网络端口、网络IP地址及域名等网络连接属性和网络配置信息。预设关键信息中的网络配置信息可以是各POD资源对象的初始配置信息,也可以是在网络的动态变化中不断变化的更新后的网络配置信息。当预设关键信息中的任一信息项发生变化时,均可以被监测到,以更新POD资源对象的预设关键信息。
预设初始容器隔离策略相关***管理人员预先设置的容器隔离策略,即对应的流量数据过滤的规则。进一步的,根据预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略,即是将预设关键信息中的POD资源对象的标识信息和网络配置等信息,按照预设的隔离策略格式进行整合,作为最终的计算机可识别策略内容。当预设关键信息或预设初始容器隔离策略发生变化时,均会重新进行信息的计算与整合,得到更新后的目标网络隔离策略。
S120、将所述预设关键信息和所述目标网络隔离策略发送至对应的节点代理容器内,作为各所述POD资源对象的IPTables的目标网络隔离策略。
进行预设关键信息和目标网络隔离策略发送时可通过GRPC(*** RemoteProcedure Call Protocol)协议实现数据的传输。节点代理(Agent)容器收到相应的数据后会存储在预设的数据管理存储空间(DataManager)上。从而,目标网络隔离策略数据会以IPTables链路的形式,写入到策略中涉及到的不同容器的IPTables模块,从而可以作为各所述POD资源对象的IPTables的目标网络隔离策略,即将POD资源对象的网络隔离策略写入其所在的网络命名空间内。
S130、当各所述POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据所述目标网络隔离策略对所述流量数据进行过滤,实现容器网络隔离。
具体的,当一个POD资源对象中的容器有访问流量进入网络栈后,IPTables模块会通过对应的目标网络隔离策略对访问流量数据进行流量输入链路(INPUT链路)的过滤。当一个POD资源对象中的容器应用需要访问外部的应用时,便会有流量数据从应用离开后,在流量数据离开访问目标应用之前会进行流量输出(OUTPUT)链路的过滤,从而实现容器间的网络隔离。
本实施例技术方案,通过以容器为隔离粒度,监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;将预设关键信息和目标网络隔离策略发送至对应的节点代理容器内,作为各POD资源对象的IPTables的目标网络隔离策略;当各POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据目标网络隔离策略对流量数据进行过滤,实现容器网络隔离。本发明实施例的技术方案解决了现有的实现容器网络微隔离的方法不具有通用性的问题,实现了一种具有通用性的,在POD粒度层级的网络隔离方法,该方法不受限于内核版本,也不受限于使用的网络插件类别。
图2为本发明实施例提供的一种容器网络微隔离方法的流程图,在上述实施例的基础上,进一步描述了容器资源对象标识生成过程以及基于具体的网络隔离策略进行容器间网络隔离的过程。该方法可以由容器网络微隔离装置来执行,该容器网络微隔离装置可以采用硬件和/或软件的形式实现,配置于计算机设备或服务器中。
如图2所示,容器网络微隔离方法包括:
S210、根据各所述POD资源对象的原始标签,按照预设的标识生成策略生成各所述POD资源对象的所述标识信息。
标识信息(identity)是各POD资源对象的一个抽象,针对原始标签(label)相同的POD,抽象为一个标识(identity),以表明POD资源对象的身份,在整个集群管理架构中进行使用。其中,原始标签(label)是各POD自带的标签,也可以经过自定义的特有的标签,将该标签与命名空间结合,可以表明相关的资源对象数据来源于哪个命名空间。
S220、获取目标集群内各所述POD资源对象的多项预设属性信息,提取所述多项预设属性信息中的标识信息和网络配置信息作为所述预设关键信息。
其中多项预设属性信息是指各个POD资源对象的可以查询到的所有的属性信息,在对各POD资源对象进行监控时,获取的是全量的属性信息。而预设关键信息则是在全量属性信息中,提取出的与网络过滤相关的属性信息,如网络端口、网络IP地址及域名等网络连接属性和网络配置信息,这样可以减少早网络隔离策略传输过程中的数据传输的压力。
S230、所述根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略。
预设初始容器隔离策略相关***管理人员预先设置的容器隔离策略,即对应的流量数据过滤的规则。进一步的,根据预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略,即是将预设关键信息中的POD资源对象的标识信息和网络配置等信息,按照预设的隔离策略格式进行整合,作为最终的计算机可识别策略内容。当预设关键信息或预设初始容器隔离策略发生变化时,均会重新进行信息的计算与整合,得到更新后的目标网络隔离策略进行缓存。
S240、将所述流量数据中的目标关键信息与所述目标网络隔离策略中的预设关键信息进行匹配,并根据匹配结果对所述流量数据进行过滤。
具体的,当一个POD资源对象中的容器有访问流量进入网络栈后,IPTables模块会通过对应的目标网络隔离策略对访问流量数据进行流量输入链路(INPUT链路)的过滤。当一个POD资源对象中的容器应用需要访问外部的应用时,便会有流量数据从应用离开后,在流量数据离开访问目标应用之前会进行流量输出(OUTPUT)链路的过滤,从而实现容器间的网络隔离。
进一步的,INPUT和OUTPUT链路中的流量数据过滤具体可以包括如下过程:
1、当流量数据包的状态值(state)为RELATED或ESTABLISHED字段后直接接收(ACCEPT)该访问流量,已经成功建立TCP连接的数据包可以不用再过后面的网络隔离策略(Policy)链路
2、当流量数据包状态值(state)为INVALID字段直接丢弃(DROP),即对于无效的数据包直接丢弃。
3、标记网络流量为0xfffdffff,视为流量开始执行网络规则。
进而根据对应的流量进入(ingress)网络隔离规则进行流量过滤。具体可以根据流量数据包对应的IP地址与对应的访问白名单进行匹配,匹配成功则标记Mark为0x10000。当匹配Mark值为0x10000,匹配成功后可以返回(RETURN)链路,接受数据包,当不匹配Mark值为0x10000后丢弃当前数据包。此外,还可以在RETURN链路和DROP链路之间可以加入其他的自定义网络隔离策略进行流量过滤。
本实施例技术方案,通过以容器为隔离粒度,监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;将预设关键信息和目标网络隔离策略发送至对应的节点代理容器内,作为各POD资源对象的IPTables的目标网络隔离策略;当各POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据目标网络隔离策略对流量数据进行过滤,实现容器网络隔离。本发明实施例的技术方案解决了现有的实现容器网络微隔离的方法不具有通用性的问题,实现了一种具有通用性的,在POD粒度层级的网络隔离方法,该方法不受限于内核版本,也不受限于使用的网络插件类别。
图3为本发明实施例提供的一种容器网络微隔离方法的流程图,在上述实施例的基础上,进一步描述了在具体实例中的,多集群管理***各个功能模块之间进行配合实现容器网络微隔离的过程。
如图3所示,容器网络微隔离方法包括如下过程:
具体的,多集群管理***是由控制层的多个控制器对POD资源对象的信息进行监控,以及对具体的容器网络隔离策略进行整合计算,具体过程如下:
IdentityMaintainController(标识信息获取控制器)监听并整理当前集群上的所有Pod资源对象,为这些Pod资源对象创建Identity(标识信息)资源以及SimplifyPod资源。其中,Identity资源是指Pod资源对象的标识信息以及全量的属性信息。SimplifyPod资源值从Identity资源中提取出来的预设关键信息。
IdentityMaintainController在获取到Pod资源对象的创建、更新、删除事件之后,在本地缓存创建或更新对应的SimplifyPod信息,根据POD的标识信息填写对应数据。其中,对于新创建的Pod资源对象,需要先根据Pod的label(原始标签)进行查找Identity,如果Identity存在则更新状态,如果不存在则需要向api-server(应用接口服务)创建这个Identity资源。将SimplifyPod资源的identity字段补充上名称,并保存在cache缓存中。Identity和SimplifyPod的事件都会向代理节点Agent下发。在Agent初次与控制层建立连接或是Agent与控制层重新建立连接的时候进行全量信息下发;对于资源的变化(创建、更新、删除)下发给Agent进行更新时,采用增量信息下发的方式。
PreNetworkPolicyMaintainController和NetworkPolicyMaintainController这两个控制器用于管理网络隔离策略的计算与更新。
具体的,PreNetworkPolicyMaintainController负责监听Identity资源,当Identity资源变更就会重新计算之前定义的NetworkPolicy资源,为其重新计算规则,并将计算后的内容以PrenetworkPolicy资源的形式存储在缓存中。PreNetworkPolicyMaintainController会将自己执行的操作通过GRPC协议发送给Agent。NetworkPolicy控制器负责监听PodPolicy资源,为PodPolicy资源计算出规则,并将计算后的内容以PrenetworkPolicy资源的形式存储在缓存中。
其中,PreNetworkPolicy是一种cache缓存的策略资源,用于缓存经过预处理的PodPolicy资源,PodPolicy通过对应的控制器生产出这样格式的PreNetworkPolicy。Networkpolicy是kubernetes推出的契合云原生思想的网络策略,按照原生的NetworkPolicy提出PodPolicy资源,其资源与原生的NetworkPolicy基本一致,用户可以像使用NetworkPolicy一样,通过修改apiVersion就能很方便地将一个原生NetworkPolicy修改为PodPolicy来使用,即将网络隔离策略细粒度化为POD资源对象的网络隔离策略。PodPolicy将会根据Agent的白名单模式,将PodPolicy生成的规则区分为通行(ACCESS)与拒绝(DROP)。PodPolicy根据资源选择器给定的label选择包含这些label范围的Identity,作为规则将会生效在这些Identity上。
该实例中通过相应的控制器以容器为隔离粒度,监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;将预设关键信息和目标网络隔离策略发送至对应的节点代理容器内,作为各POD资源对象的IPTables的目标网络隔离策略;当各POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据目标网络隔离策略对流量数据进行过滤,实现容器网络隔离。本发明实施例的技术方案解决了现有的实现容器网络微隔离的方法不具有通用性的问题,实现了一种具有通用性的,在POD粒度层级的网络隔离方法,该方法不受限于内核版本,也不受限于使用的网络插件类别。
图4为本发明实施例提供的容器网络微隔离装置的结构示意图,本实施例可适用于保障云原生容器网络安全,进行容器网络微隔离的场景,该装置可以由软件和/或硬件的方式来实现,集成于具有应用开发功能的计算机设备中。
如图4所示,容器网络微隔离装置包括:资源对象信息获取模块310、网络隔离策略更新模块320和网络隔离模块330。
其中,资源对象信息获取模块310,用于监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;网络隔离策略更新模块320,用于将所述预设关键信息和所述目标网络隔离策略发送至对应的节点代理容器内,作为各所述POD资源对象的IPTables的目标网络隔离策略;网络隔离模块330,用于当各所述POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据所述目标网络隔离策略对所述流量数据进行过滤,实现容器网络隔离。
本实施例的技术方案,通过以容器为隔离粒度,监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;将预设关键信息和目标网络隔离策略发送至对应的节点代理容器内,作为各POD资源对象的IPTables的目标网络隔离策略;当各POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据目标网络隔离策略对流量数据进行过滤,实现容器网络隔离。本发明实施例的技术方案解决了现有的实现容器网络微隔离的方法不具有通用性的问题,实现了一种具有通用性的,在POD粒度层级的网络隔离方法,该方法不受限于内核版本,也不受限于使用的网络插件类别。
在一种可选的实施方式中,所述资源对象信息获取模块310具体用于:
获取目标集群内各所述POD资源对象的多项预设属性信息;
提取所述多项预设属性信息中的标识信息和网络配置信息作为所述预设关键信息。
在一种可选的实施方式中,所述容器网络微隔离装置还包括标识信息生成模块,用于:
在获取目标集群内各所述POD资源对象的多项预设属性信息之前,根据各所述POD资源对象的原始标签,按照预设的标识生成策略生成各所述POD资源对象的所述标识信息。
在一种可选的实施方式中,所述网络隔离策略更新模块320具体用于:
将所述预设关键信息和所述初始容器隔离策略转换为包含预设关键词信息格式的目标网络隔离策略。
在一种可选的实施方式中,所述资源对象信息获取模块310具体用于:
当所述目标集群内各POD资源对象发生创建、更新或删除中任一状态变化时,获取发生状态变化的POD资源对象的预设关键信息。
在一种可选的实施方式中,所述网络隔离模块330,具体用于:
将所述流量数据中的目标关键信息与所述目标网络隔离策略中的预设关键信息进行匹配,并根据匹配结果对所述流量数据进行过滤。
在一种可选的实施方式中,所述网络隔离模块330,还可用于:
基于各所述POD资源对象的IPTables的目标网络隔离策略中的预设关键信息生成白名单IP集合;
将所述流量数据中的目标关键信息与所述白名单IP集合中IP信息进行匹配,并根据匹配结果对所述流量数据进行过滤。
本发明实施例所提供的容器网络微隔离装置可执行本发明任意实施例所提供的容器网络微隔离方法,具备执行方法相应的功能模块和有益效果。
图5为本发明实施例提供的一种计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图5显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。计算机设备12可以任意具有计算能力的终端设备,如智能控制器及服务器、手机等终端设备。
如图5所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,***存储器28,连接不同***组件(包括***存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及***组件互连(PCI)总线。
计算机设备12典型地包括多种计算机***可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
***存储器28可以包括易失性存储器形式的计算机***可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机***存储介质。仅作为举例,存储***34可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。***存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如***存储器28中,这样的程序模块42包括但不限于操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图5中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
处理单元16通过运行存储在***存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发实施例所提供的容器网络微隔离方法,该方法包括:
监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;
将所述预设关键信息和所述目标网络隔离策略发送至对应的节点代理容器内,作为各所述POD资源对象的IPTables的目标网络隔离策略;
当各所述POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据所述目标网络隔离策略对所述流量数据进行过滤,实现容器网络隔离。
本实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的容器网络微隔离方法,包括:
监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;
将所述预设关键信息和所述目标网络隔离策略发送至对应的节点代理容器内,作为各所述POD资源对象的IPTables的目标网络隔离策略;
当各所述POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据所述目标网络隔离策略对所述流量数据进行过滤,实现容器网络隔离。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种容器网络微隔离方法,其特征在于,包括:
监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;
将所述预设关键信息和所述目标网络隔离策略发送至对应的节点代理容器内,作为各所述POD资源对象的IPTables的目标网络隔离策略;
当各所述POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据所述目标网络隔离策略对所述流量数据进行过滤,实现容器网络隔离。
2.根据权利要求1所述的方法,其特征在于,所述监控目标集群内各POD资源对象的动态变化的预设关键信息,包括:
获取目标集群内各所述POD资源对象的多项预设属性信息;
提取所述多项预设属性信息中的标识信息和网络配置信息作为所述预设关键信息。
3.根据权利要求2所述的方法,其特征在于,在获取目标集群内各所述POD资源对象的多项预设属性信息之前,所述方法还包括:
根据各所述POD资源对象的原始标签,按照预设的标识生成策略生成各所述POD资源对象的所述标识信息。
4.根据权利要求1所述的方法,其特征在于,所述根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略,包括:
将所述预设关键信息和所述初始容器隔离策略转换为包含预设关键词信息格式的目标网络隔离策略。
5.根据权利要求1所述的方法,其特征在于,所述监控目标集群内各POD资源对象的动态变化的预设关键信息,包括:
当所述目标集群内各POD资源对象发生创建、更新或删除中任一状态变化时,获取发生状态变化的POD资源对象的预设关键信息。
6.根据权利要求1所述的方法,其特征在于,所述根据所述目标网络隔离策略对所述流量数据进行过滤,包括:
将所述流量数据中的目标关键信息与所述目标网络隔离策略中的预设关键信息进行匹配,并根据匹配结果对所述流量数据进行过滤。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
基于各所述POD资源对象的IPTables的目标网络隔离策略中的预设关键信息生成白名单IP集合;
将所述流量数据中的目标关键信息与所述白名单IP集合中IP信息进行匹配,并根据匹配结果对所述流量数据进行过滤。
8.一种容器网络微隔离装置,其特征在于,包括:
资源对象信息获取模块,用于监控目标集群内各POD资源对象的动态变化的预设关键信息,并根据所述预设关键信息生和预设初始容器隔离策略成对应的目标网络隔离策略;
网络隔离策略更新模块,用于将所述预设关键信息和所述目标网络隔离策略发送至对应的节点代理容器内,作为各所述POD资源对象的IPTables的目标网络隔离策略;
网络隔离模块,用于当各所述POD资源对象有流量数据进入对应POD网络命名空间或离开时,根据所述目标网络隔离策略对所述流量数据进行过滤,实现容器网络隔离。
9.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的容器网络微隔离方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的容器网络微隔离方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211709792.0A CN116032614A (zh) | 2022-12-29 | 2022-12-29 | 容器网络微隔离方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211709792.0A CN116032614A (zh) | 2022-12-29 | 2022-12-29 | 容器网络微隔离方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116032614A true CN116032614A (zh) | 2023-04-28 |
Family
ID=86070270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211709792.0A Pending CN116032614A (zh) | 2022-12-29 | 2022-12-29 | 容器网络微隔离方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116032614A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112632A (zh) * | 2023-10-23 | 2023-11-24 | 北京纷扬科技有限责任公司 | 一种防止数据冲击的隔离方法、装置及存储介质 |
-
2022
- 2022-12-29 CN CN202211709792.0A patent/CN116032614A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112632A (zh) * | 2023-10-23 | 2023-11-24 | 北京纷扬科技有限责任公司 | 一种防止数据冲击的隔离方法、装置及存储介质 |
CN117112632B (zh) * | 2023-10-23 | 2024-01-12 | 北京纷扬科技有限责任公司 | 一种防止数据冲击的隔离方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109428922B (zh) | 一种订阅发布方法及服务器 | |
CN108462760A (zh) | 电子装置、集群访问域名自动生成方法及存储介质 | |
CN113709810B (zh) | 一种网络服务质量的配置方法、设备和介质 | |
CN112181542A (zh) | 功能调用方法、装置、电子设备及存储介质 | |
CN114911598A (zh) | 任务调度方法、装置、设备以及存储介质 | |
CN113361913A (zh) | 一种通信业务编排方法、装置、计算机设备及存储介质 | |
CN114650223B (zh) | 一种Kubernetes集群的网络配置方法、装置及电子设备 | |
CN116032614A (zh) | 容器网络微隔离方法、装置、设备和介质 | |
CN115617511A (zh) | 资源数据处理的方法、装置、电子设备和存储介质 | |
CN113204425A (zh) | 供进程管理内部线程的方法、装置、电子设备及存储介质 | |
CN113760318A (zh) | 信息处理方法、装置、服务器及存储介质 | |
CN107092494B (zh) | 访问apk资源的方法和装置 | |
CN108111513B (zh) | 应用于前置装置的数据管理方法、装置、介质及电子设备 | |
CN110688201A (zh) | 一种日志管理方法及相关设备 | |
CN115580497A (zh) | 容器环境下数据传输控制方法、设备及存储介质 | |
CN115442129A (zh) | 一种管理集群访问权限的方法、装置和*** | |
CN112291212B (zh) | 静态规则的管理方法、装置、电子设备和存储介质 | |
CN116841720A (zh) | 资源配置方法、装置、计算机设备、存储介质及程序产品 | |
CN114070889A (zh) | 配置方法、流量转发方法、设备、存储介质及程序产品 | |
CN113556370A (zh) | 一种服务调用方法和装置 | |
CN112380411A (zh) | 敏感词处理方法、装置、电子设备、***及存储介质 | |
US20220179711A1 (en) | Method For Platform-Based Scheduling Of Job Flow | |
CN115801569B (zh) | 一种访问规则部署方法、装置、设备、介质及云平台 | |
CN110262756B (zh) | 用于缓存数据的方法和装置 | |
CN115080229A (zh) | 资源对象管理方法及装置 |
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 |