CN114039751B - 一种网络动态感知装置、***和方法 - Google Patents
一种网络动态感知装置、***和方法 Download PDFInfo
- Publication number
- CN114039751B CN114039751B CN202111250963.3A CN202111250963A CN114039751B CN 114039751 B CN114039751 B CN 114039751B CN 202111250963 A CN202111250963 A CN 202111250963A CN 114039751 B CN114039751 B CN 114039751B
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- container
- information
- service
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000004458 analytical method Methods 0.000 claims abstract description 15
- 230000008447 perception Effects 0.000 claims abstract description 12
- 230000008859 change Effects 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 5
- 239000008186 active pharmaceutical agent Substances 0.000 description 25
- 238000005516 engineering process Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
在本发明实施例公开了一种网络动态感知装置、***和方法,装置设置于混合容器集群与虚拟机混合业务***,所述***还包括容器集群、虚拟机集群、防火墙,该装置包括:获取所述容器集群中各业务容器的容器属性信息的容器信息感知模块;获取在所述虚拟机集群中各业务虚拟机的虚拟机属性信息的虚拟机感知模块;根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至数据库中的分析模块。实现了在混合容器集群与虚拟机混合业务***中的多安全区域中,在每个区域均有容器和虚拟机混合运行业务的场景下,不同区域之间访问控制的动态开放。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种网络动态感知装置、***和方法。
背景技术
随着云原生技术的飞速发展,越来越多的企业开始把业务放到容器中运行。由于历史原因,大部分的企业以前的业务都运行在虚拟机中,后来将部分业务迁移到Kubernetes(容器集群管理***)的容器中,这就导致许多企业中既有虚拟机中运行的业务,又有Kubernetes的容器中运行的业务。稍微大型一些的企业,往往会有多个业务部门、多个数据中心,出于网络安全的考虑会划分多个安全区域,每个安全区域是隔离开的。
由于Kubernetes中的容器的IP地址是随机变化的,每一次容器重启或销毁漂移都会导致IP地址变化,而多个安全区域之间的普通防火墙设备则依赖网络五元组(源IP、源端口、目标IP、目标端口、协议)来识别一条唯一的访问信息。如此导致一个多安全区域中,在每个区域均有容器和虚拟机混合运行业务的场景下,不同区域之间访问控制策略的动态开放的难题。
发明内容
有鉴于上述问题,本发明实施例提出一种网络动态感知装置、***和方法,以解决现有技术中一个多安全区域中,在每个区域均有容器和虚拟机混合运行业务的场景下,不同区域之间访问控制策略的动态开放的难题。
本发明一方面提供了一种网络动态感知装置,所述装置设置于混合容器集群与虚拟机混合业务***,所述***还包括容器集群、虚拟机集群、防火墙,其特征在于,所述装置包括:
容器信息感知模块,用于获取所述容器集群中各业务容器的容器属性信息;所述容器属性信息包括所述各业务容器的第一接口信息和第一网络信息;
虚拟机感知模块,用于获取在所述虚拟机集群中各业务虚拟机的虚拟机属性信息;所述虚拟机属性信息包括所述各业务虚拟机的第二接口信息和第二网络信息;
分析模块,用于根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至数据库中;所述预设防火墙控制规则包括所述防火墙可识别的业务标签信息与访问控制操作的对应规则。
本发明另一方面在于提供一种混合容器集群与虚拟机混合业务***,其特征在于,所述***包括容器集群、虚拟机集群、容器集群接口模块、虚拟机容器接口模块、上述的网络动态感知装置和防火墙,其中,
所述容器集群接口模块用于:
每隔预设时间段收集所述容器集群中各业务容器的容器属性信息;
所述虚拟机容器接口模块用于:
每隔预设时间段收集所述虚拟机集群中各业务虚拟机的虚拟机属性信息;
所述防火墙用于:
提取接收到的业务请求中的访问对象业务容器或访问对象业务虚拟机的访问业务标签;
将所述访问业务标签与所述访问控制规则信息中的业务标签信息进行匹配;
根据匹配的所述业务标签信息,执行对应的访问控制操作。
本发明再一方面在于提供一种跨区域混合访问控制方法,其特征在于,所述方法应用于上述的混合容器集群与虚拟机混合业务***,所述方法包括:
所述网络动态感知模块获取所述容器集群中各业务容器的容器属性信息、业务虚拟机的虚拟机属性信息;
根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至所述数据库中;
当所述防火墙接收到对所述业务容器或所述业务虚拟机的业务请求时,提取所述数据库中的所述访问控制规则信息,根据所述访问控制规则信息执行所述业务请求。
本发明又一方面在于提供一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现一种跨区域混合访问控制方法。
本发明再一方面在于提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如跨区域混合访问控制方法。
综上所述,在本发明实施例中,容器信息感知模块,用于获取所述容器集群中各业务容器的容器属性信息;所述容器属性信息包括所述各业务容器的第一接口信息和第一网络信息;虚拟机感知模块,用于获取在所述虚拟机集群中各业务虚拟机的虚拟机属性信息;所述虚拟机属性信息包括所述各业务虚拟机的第二接口信息和第二网络信息;分析模块,用于根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至数据库中;所述预设防火墙控制规则包括所述防火墙可识别的业务标签信息与访问控制操作的对应规则。实现了通过动态网络感知装置,用来向Kubernetes和KVM集群获取容器、虚拟机的网络IP地址变动信息,并将数据库中的容器、虚拟机的网络信息翻译成为防火墙所需要的访问控制规则信息,提供防火墙兼容API给上层的防火墙设备,实现了一个多安全区域中,在每个区域均有容器和虚拟机混合运行业务的场景下,不同区域之间访问控制的动态开放。
附图说明
图1示出了本发明实施例一中的一种网络动态感知装置的结构框图;
图2A示出了本发明实施例中的网络动态感知装置应用实例示意图;
图2B示出了本发明实施例中的网络动态感知装置应用实例示意图;
图2C示出了本发明实施例中的数据流实例示意图;
图3示出了本发明实施例二中的一种混合容器集群与虚拟机混合业务***的结构框图;
图4示出了本发明实施例三中的一种跨区域混合访问控制方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
名词解释:
Kubernetes
开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。在生产环境中部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡。Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署,规划,更新,维护的一种机制。
容器
容器是伴随着瘦客户端***的发展而诞生的。在开发瘦客户端***时,开发人员要花费大量的精力去关注线程安全、事务、网络、资源等等细节,从而降低了开发效率。由于这些对这些细节的解决方法一般是固定不变,或者只有参数改变的,所以从代码重用和设计模式的角度出发,开发人员将这些底层细节提取出来,做成平台,并提供一定的接口。这样,业务开发人员就不需要在关注与这些底层细节的实现,而专注于业务逻辑的实现。容器一般位于应用服务器之内,由应用服务器负责加载和维护。一个容器只能存在于一个应用服务器之内,一个应用服务器可以建立和维护多个容器。
KVM
是kernel-based Virtual Machine的简称,也称为基于内核的虚拟机,是一个开源的操作***虚拟化模块,集成在Linux的各个主要发行版本中。KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)是基于硬件的完全虚拟化,使用KVM,可允许运行多个虚拟机,包括Linux和Windows操作***。每个虚拟机有私有的硬件,包括网卡、磁盘以及图形适配卡等。这种技术类似与vmware的虚拟机技术。
虚拟机
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件***功能的、运行在一个完全隔离环境中的完整计算机***。在实体计算机中能够完成的工作在虚拟机中都能够实现。在计算机中创建虚拟机时,需要将实体机的部分硬盘和内存容量作为虚拟机的硬盘和内存容量。每个虚拟机都有独立的CMOS、硬盘和操作***,可以像使用实体机一样对虚拟机进行操作。
网络五元组
源IP地址,源端口,目的IP地址,目的端口,和传输层协议这五个量组成的一个集合。例如:192.168.1.1 10000TCP 121.14.88.76 80就构成了一个五元组。其意义是,一个IP地址为192.168.1.1的终端通过端口10000,利用TCP协议,和IP地址为121.14.88.76,端口为80的终端进行连接。
防火墙
防火墙技术是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术。防火墙技术的功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。
访问控制
访问控制是给出一套方法,将***中的所有功能标识出来,组织起来,托管起来,将所有的数据组织起来标识出来托管起来,然后提供一个简单的唯一的接口,这个接口的一端是应用***一端是权限引擎。权限引擎所回答的只是:谁是否对某资源具有实施某个动作(运动、计算)的权限。返回的结果只有:有、没有、权限引擎异常了。访问控制是几乎所有***(包括计算机***和非计算机***)都需要用到的一种技术。访问控制是按用户身份及其所归属的某项定义组来限制用户对某些信息项的访问,或限制对某些控制功能的使用的一种技术,如UniNAC网络准入控制***的原理就是基于此技术之上。访问控制通常用于***管理员控制用户对服务器、目录、文件等网络资源的访问。
数据库
数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。本专利的中的数据库主要用来存储容器和虚拟机的网络信息数据。
实施例一
参照图1,示出了本发明实施例一中的一种网络动态感知装置,所述装置设置于混合容器集群与虚拟机混合业务***,所述***还包括容器集群、虚拟机集群、防火墙,其特征在于,上述装置具体包括:
容器信息感知模块101,用于获取所述容器集群中各业务容器的容器属性信息;所述容器属性信息包括所述各业务容器的第一接口信息和第一网络信息。
本发明实施例中,如图2A所示,在混合容器集群与虚拟机混合业务***中,Kubernetes(容器集群管理***)集群中容器的IP地址是随机变化的,每一次容器重启或销毁漂移都会导致IP地址变化,而多个安全区域之间的普通防火墙设备则依赖网络五元组(源IP、源端口、目标IP、目标端口、协议)来识别一条唯一的访问信息。
其中,在一个多安全区域,每个区域均有容器和虚拟机混合运行业务的场景下,针对存在的多个安全区域的访问控制时,首先需要网络动态感知模块获取各安全区域中容器集群中各业务容器的容器属性信息,存储在固定的位置,以便防火墙针对各容器属性信息制定访问规则。
具体地,在Kubernetes集群中有专门的API接口,记录着集群中所有容器的网络信息,即容器属性信息包括所述各业务容器的接口信息和网络信息,为了区别于其他接口信息和网络信息,将各业务容器的接口信息和网络信息定义为第一接口信息和第一网络信息。
可选地,所述容器信息感知模块101,还用于:
获取在容器集群中业务容器的容器属性信息的第一变动提示信息,根据所述第一变动提示信息,获取所述业务容器的更新的容器属性信息。
具体地,当混合容器集群与虚拟机混合业务***中的容器集群中任一业务容器的容器属性信息发生变动时,会向动态感知模块发送提示信息,该提示信息中包含有更新的容器接口信息和网络信息。
具体地,网络动态感知模块根据上述获得的提示信息,即第一变动提示信息,,获取其中包含的更新的容器接口信息和网络信息。
可选地,所述容器信息感知模块101,还用于:
每隔预设周期获取所述容器集群中各业务容器的容器属性信息。
具体地,网络动态感知模块还可以通过周期性的主动获取容器集群中各业务容器的接口信息和网络信息,以便及时获取更新信息。
通常情况下,预设周期由相关技术人员根据具体应用场景设置,本发明实施例对预设周期的时长不加以具体限制。
虚拟机感知模块102,用于获取在所述虚拟机集群中各业务虚拟机的虚拟机属性信息;所述虚拟机属性信息包括所述各业务虚拟机的第二接口信息和第二网络信息。
本发明实施例中,同样地,网络动态感知模块获取在混合容器集群与虚拟机混合业务***中的虚拟机集群中各业务虚拟机的虚拟机属性信息,即虚拟机的接口信息和网络信息。为了区别于第一接口信息和第一网络信息,这里将业务虚拟机的接口信息和网络信息定义为第二接口信息和第二网络信息。
可以理解地,KVM虚拟机开源的API接口模块,这个模块主要是负责提供API接口管控集群中的虚拟机,当然也包括从这个接口获取到所有虚拟机的网络信息。
可选地,所述虚拟机信息感知模块102,还用于:
通过所述虚拟机容器接口模块获取所述虚拟机集群中任一业务虚拟机的虚拟机属性信息的第二变动提示信息;
具体地,当虚拟机集群中任一业务虚拟机的虚拟机接口信息或网络信息发生变更时,会向网络动态感知模块发送提示信息,提示信息中包含更新的接口信息和网络信息。
通过所述虚拟机容器接口模块获取所述业务虚拟机的更新的虚拟机属性信息。
具体地,网络动态感知模块接收到提示信息时,即第二变动提示信息时,获取其中包含的更新的虚拟机接口信息和网络信息。
可选地,所述虚拟机信息感知模块102,还用于:
每隔预设周期通过所述虚拟机容器接口模块获取所述虚拟机集群中各业务虚拟机的虚拟机属性信息。
具体地,网络动态感知模块还可以通过周期性的主动获取虚拟机集群中各业务虚拟机的接口信息和网络信息,以便及时获取更新信息。
通常情况下,预设周期由相关技术人员根据具体应用场景设置,本发明实施例对预设周期的间隔时长不加以具体限制。
分析模块103,用于根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至数据库中;所述预设防火墙控制规则包括所述防火墙可识别的业务标签信息与访问控制操作的对应规则。
本发明实施例中,如图2B所示,网络动态感知模块根据预设防火墙控制规则,将获取到的容器属性信息和虚拟机属性信息添加业务标签信息。
其中,在预设防火墙控制规则中,各业务标签信息分别对应访问控制规则,即各容器和虚拟机处理的业务种类,允许怎样的访问和拒绝怎样的访问,以此生成访问控制规则,并存储在数据库中。
可选地,所述分析模块103,还用于:
根据所述预设防火墙控制规则,将所述更新的容器属性信息和更新的所述虚拟机属性信息添加业务标签信息,生成更新的访问控制规则信息。
具体地,当网络动态感知模块获取更新的业务容器属性信息或业务虚拟机属性信息后,将更新的属性信息也添加对应的业务标签信息,生成更新的访问控制规则并存储在数据库中。
以下以实例的形式对网络动态感知装置中各模块之间的功能进行详细说明,如实例图2B所示:
K8M-API模块:是Kubernetes集群内置的API接口模块,任何一个Kubernetes集群都有这个模块。这个模块主要是负责提供API接口管控整个Kubernetes集群,当然也包括从这个接口获取到集群中所有的容器网络信息。
KVM-API模块:是KVM虚拟机开源的API接口模块,这个模块主要是负责提供API接口管控集群中的虚拟机,当然也包括从这个接口获取到所有虚拟机的网络信息。
感知模块:用来向Kubernetes和KVM集群获取容器、虚拟机的网络IP地址变动信息;其中,感知模块包括容器信息感知模块和虚拟机感知模块。
分析模块:可以将数据库中的容器、虚拟机的网络信息翻译成为防火墙所需要的访问控制规则信息,提供防火墙能识别的标准API接口。
数据库:用来接收来自于感知模块收集到的容器、虚拟机的网络数据信息,同时提供给网络信息给分析模块。
防火墙:从网络动态感知装置的分析模块API上获取最新的访问控制规则信息。不同安全区域的流量经过防火墙时,防火墙就会按照规则表实施访问控制行为,控制容器与虚拟机跨安全区域的访问控制。
综上所述,在本发明实施例,容器信息感知模块,用于获取所述容器集群中各业务容器的容器属性信息;所述容器属性信息包括所述各业务容器的第一接口信息和第一网络信息;虚拟机感知模块,用于获取在所述虚拟机集群中各业务虚拟机的虚拟机属性信息;所述虚拟机属性信息包括所述各业务虚拟机的第二接口信息和第二网络信息;分析模块,用于根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至数据库中;所述预设防火墙控制规则包括所述防火墙可识别的业务标签信息与访问控制操作的对应规则。实现了通过动态网络感知装置,用来向Kubernetes和KVM集群获取容器、虚拟机的网络IP地址变动信息,并将数据库中的容器、虚拟机的网络信息翻译成为防火墙所需要的访问控制规则信息,提供防火墙兼容API给上层的防火墙设备,实现了一个多安全区域中,在每个区域均有容器和虚拟机混合运行业务的场景下,不同区域之间访问控制的动态开放。
实施例二
参照图3,示出了本发明实施例二的一种混合容器集群与虚拟机混合业务***的结构框图,
所述***具体包括容器集群201、虚拟机集群202、容器集群接口模块203、虚拟机容器接口模块204、实施例一描述的网络动态感知装置205和防火墙206,容器集群201与容器集群接口模块203可以互相通信、虚拟机集群202与虚拟机容器接口模块204可以互相通信、实施例一描述的网络动态感知装置205和防火墙206相互连接,并且防火墙206分别与容器集群201以及虚拟机集群202连接,其中,
所述容器集群接口模块201用于:
每隔预设时间段收集所述容器集群中各业务容器的容器属性信息;
所述虚拟机容器接口模块202用于:
每隔预设时间段收集所述虚拟机集群中各业务虚拟机的虚拟机属性信息;
所述防火墙206用于:
提取接收到的业务请求中的访问对象业务容器或访问对象业务虚拟机的访问业务标签;
将所述访问业务标签与所述访问控制规则信息中的业务标签信息进行匹配;
根据匹配的所述业务标签信息,执行对应的访问控制操作。
本发明实施例中,本发明实施例中,防火墙接收到对业务容器或者业务虚拟机的业务访问请求时,在数据库中提取存储好或更新好的访问控制规则信息。
本发明实施例中,如图2B所示,防火墙根据业务访问请求对应的业务标签,在访问控制规则信息中查询对应的访问控制操作,并执行对应的允许访问或拒绝访问的操作。
具体地,防火墙接收到业务访问请求后,提取其中访问对象和访问类型,即访问业务标签。
具体地,防火墙将上述访问业务标签与访问控制规则中的业务标签信息进行匹配,就会得到对应该业务标签的访问控制规则。
具体地,防火墙根据对应业务标签信息的访问控制规则执行读音的访问控制操作即可。
综上所述,在本发明实施例中,通过网络动态感知模块获取在混合容器集群与虚拟机混合业务***中的容器集群中各业务容器的容器属性信息或虚拟机集群中各业务虚拟机的虚拟机属性信息;并根据预设防火墙控制规则,将容器属性信息和虚拟机属性信息改写为访问控制规则信息存储至数据库中;当防火墙接收到对业务容器或业务虚拟机的业务请求时,提取数据库中的访问控制规则信息并按其执行业务请求。实现了一个多安全区域中,在每个区域均有容器和虚拟机混合运行业务的场景下,不同区域之间访问控制的动态开放。解决了多安全区域中,在每个区域均有容器和虚拟机混合运行业务的场景下,不同区域之间访问控制策略的动态开放的难题。
实施例三
参照图4,示出了本发明实施例三的一种跨区域混合访问控制方法的流程图,所述方法应用于上述实施例中的混合容器集群与虚拟机混合业务***,所述方法具体可以包括以下步骤:
步骤301,所述网络动态感知模块获取所述容器集群中各业务容器的容器属性信息、业务虚拟机的虚拟机属性信息;
步骤302,根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至所述数据库中;
步骤303,当所述防火墙接收到对所述业务容器或所述业务虚拟机的业务请求时,提取所述数据库中的所述访问控制规则信息,根据所述访问控制规则信息执行所述业务请求。
以下以实例的形式对各模块之间的数据流进行详细说明,如图2B所示:
第一步:网络动态感知装置中的感知模块会动态从K8M-API(Kubernetes集群API接口)和KVM-API(虚拟机集群API接口)中获取容器、虚拟机的网络信息。
第二步:然后按照***管理员配置好的标签策略,给每个容器和虚拟机打上相应的标签,需要互相访问的同一类容器和虚拟机,就会被打上相同的标签。
第三步:凡事标记过标签信息的网络数据,感知模块就会被会存储在数据存储模块中。
第四步:防火墙模块从动态网络感知装置的分析模块API上请求获取最新的访问控制规则信息。
第五步:分析模块将数据库中的容器、虚拟机的网络信息翻译成为防火墙所需要的访问控制规则信息。
第六步:防火墙模块从分析模块API上获取到最新的访问控制规则信息后,不同安全区域的流量经过防火墙时,防火墙就会按照规则表实施访问控制行为,控制容器与虚拟机跨安全区域的访问控制。
具体地,关于源数据和目标数据,下面用实例图2C来进行说明:
源数据:来自Kubernetes集群中的容器网络信息和来自KVM集群中的虚拟机网络信息。
中间数据:经过网络动态感知装置处理之后,存储在装置中的数据库的序列化数据。
目标数据:防火墙模块从装置中读取到的最终访问控制规则信息数据。
所产生的目标数据是防火墙实施网络访问控制所必须的规则数据,不同安全区域的流量经过防火墙时,防火墙就会按照规则表实施访问控制行为,以此目标数据中的规则信息来控制各区域之间的安全控制。
可以理解地,在数据处理过程中存在一些前期的准备步骤和辅助步骤:
首先,需要获取到Kubernetes集群和KVM集群的API地址与权限信息,这个信息一般在集群***IT管理员那里可以获得。
然后,将Kubernetes集群和KVM集群的API地址与权限信息配置到网络动态感知装置中,请启动装置。
最后,装置启动后会自动监听提供访问控制规则信息的API接口,在防火墙上配置指向本装置的访问控制规则API接口。
上述步骤的优点是可以提前设定好获取时间的源头集群API地址,以便于装置从源头获取到容器和虚拟机的网络信息。另外,让防火墙端知道后面的访问规则信息是从本装置的分析模块API中去获取的,这样防火墙才会加载到装置的规则信息,这样防火墙才能与本装置进行联动,达到理想的效果。
综上所述,在本发明实施例中,通过网络动态感知模块获取在混合容器集群与虚拟机混合业务***中的容器集群中各业务容器的容器属性信息或虚拟机集群中各业务虚拟机的虚拟机属性信息;并根据预设防火墙控制规则,将容器属性信息和虚拟机属性信息改写为访问控制规则信息存储至数据库中;当防火墙接收到对业务容器或业务虚拟机的业务请求时,提取数据库中的访问控制规则信息并按其执行业务请求。实现了网络动态感知模块会动态从K8M-API(Kubernetes集群API接口)和KVM-API(虚拟机集群API接口)中获取容器、虚拟机的网络信息,然后按照***管理员配置好的标签策略,给每个容器和虚拟机打上相应的标签。需要互相访问的同一类容器和虚拟机,就会被打上相同的标签,标记过标签信息的网络数据会存储在数据存储模块中。同时防火墙模块会周期性的从网络动态感知装置中请求获取最新的访问控制规则,网络动态感知装置会将数据库中的容器、虚拟机的网络信息翻译成为防火墙所需要的访问控制规则信息。防火墙模块获取到访问控制规则表后,不同安全区域的流量经过防火墙时,就会按照规则表实施访问控制行为。这样一来就不需要依赖支持VXLAN(虚拟扩展局域网)协议的高端交换机设备,也规避了Sidecar模式(将应用程序的组件部署到单独的进程或容器中以提供隔离和封装的模式)出现的业务容器资源占用开销大的问题。同时也解决了上述方法已经解决和未解决的这些问题,实现了容器与虚拟机跨安全区域混合访问控制。
可选地,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述跨区域混合访问控制方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(RandomAccess Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (8)
1.一种网络动态感知装置,所述装置设置于混合容器集群与虚拟机混合业务***,所述***还包括容器集群、虚拟机集群、防火墙,其特征在于,所述装置包括:
容器信息感知模块,用于每隔预设周期获取所述容器集群中各业务容器的容器属性信息;所述容器属性信息包括所述各业务容器的第一接口信息和第一网络信息;
虚拟机感知模块,用于每隔预设周期获取在所述虚拟机集群中各业务虚拟机的虚拟机属性信息;所述虚拟机属性信息包括所述各业务虚拟机的第二接口信息和第二网络信息;
分析模块,用于根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至数据库中;所述预设防火墙控制规则包括所述防火墙可识别的业务标签信息与访问控制操作的对应规则;
所述网络动态感知装置与所述防火墙相互连接,所述防火墙分别与所述容器集群以及所述虚拟机集群连接。
2.根据权利要求1所述的装置,其特征在于,所述容器信息感知模块,还用于:
获取在容器集群中业务容器的容器属性信息的第一变动提示信息,根据所述第一变动提示信息,获取所述业务容器的更新的容器属性信息。
3.根据权利要求1所述的装置,其特征在于,所述虚拟机信息感知模块,还用于:
通过所述虚拟机容器接口模块获取所述虚拟机集群中任一业务虚拟机的虚拟机属性信息的第二变动提示信息;
通过所述虚拟机容器接口模块获取所述业务虚拟机的更新的虚拟机属性信息。
4.根据权利要求2-3中任一所述的装置,其特征在于,所述分析模块,还用于:
根据所述预设防火墙控制规则,将所述更新的容器属性信息和更新的所述虚拟机属性信息添加业务标签信息,生成更新的访问控制规则信息。
5.一种混合容器集群与虚拟机混合业务***,其特征在于,所述***包括容器集群、虚拟机集群、容器集群接口模块、虚拟机容器接口模块、权利要求1-4任一项所述的网络动态感知装置和防火墙,其中,
所述容器集群接口模块用于:
每隔预设时间段收集所述容器集群中各业务容器的容器属性信息;
所述虚拟机容器接口模块用于:
每隔预设时间段收集所述虚拟机集群中各业务虚拟机的虚拟机属性信息;
所述防火墙用于:
提取接收到的业务请求中的访问对象业务容器或访问对象业务虚拟机的访问业务标签;
将所述访问业务标签与所述访问控制规则信息中的业务标签信息进行匹配;
根据匹配的所述业务标签信息,执行对应的访问控制操作。
6.一种跨区域混合访问控制方法,其特征在于,所述方法应用于权利要求5所述的混合容器集群与虚拟机混合业务***,所述方法包括:
所述网络动态感知装置每隔预设周期获取所述容器集群中各业务容器的容器属性信息、业务虚拟机的虚拟机属性信息;
根据预设防火墙控制规则,将所述容器属性信息和所述虚拟机属性信息添加业务标签信息,生成访问控制规则信息,并存储至所述数据库中;
当所述防火墙接收到对所述业务容器或所述业务虚拟机的业务请求时,提取所述数据库中的所述访问控制规则信息,根据所述访问控制规则信息执行所述业务请求。
7.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求6所述的方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求6所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111250963.3A CN114039751B (zh) | 2021-10-26 | 2021-10-26 | 一种网络动态感知装置、***和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111250963.3A CN114039751B (zh) | 2021-10-26 | 2021-10-26 | 一种网络动态感知装置、***和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114039751A CN114039751A (zh) | 2022-02-11 |
CN114039751B true CN114039751B (zh) | 2024-06-14 |
Family
ID=80142048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111250963.3A Active CN114039751B (zh) | 2021-10-26 | 2021-10-26 | 一种网络动态感知装置、***和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114039751B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115766289A (zh) * | 2022-12-23 | 2023-03-07 | 河南大学 | 一种面向虚拟机集群的分布式网络安全方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108449197A (zh) * | 2018-01-03 | 2018-08-24 | 北京大学 | 一种基于软件定义网络的多云环境网络构建方法 |
CN113315754A (zh) * | 2021-04-25 | 2021-08-27 | 中国民生银行股份有限公司 | 容器出访防火墙智能联动方法及装置、设备、介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2014233616B9 (en) * | 2010-01-15 | 2015-05-21 | Endurance International Group, Inc. | Unaffiliated web domain hosting service based on a common service architecture |
US9215210B2 (en) * | 2014-03-31 | 2015-12-15 | Nicira, Inc. | Migrating firewall connection state for a firewall service virtual machine |
CN107426252B (zh) * | 2017-09-15 | 2019-10-25 | 北京百悟科技有限公司 | 提供web应用防火墙服务的方法和设备 |
CN109639455B (zh) * | 2018-11-09 | 2021-07-20 | 武汉烽火信息集成技术有限公司 | 一种容器云平台的网络管理方法及*** |
US11588693B2 (en) * | 2020-02-26 | 2023-02-21 | Red Hat, Inc. | Migrating networking configurations |
-
2021
- 2021-10-26 CN CN202111250963.3A patent/CN114039751B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108449197A (zh) * | 2018-01-03 | 2018-08-24 | 北京大学 | 一种基于软件定义网络的多云环境网络构建方法 |
CN113315754A (zh) * | 2021-04-25 | 2021-08-27 | 中国民生银行股份有限公司 | 容器出访防火墙智能联动方法及装置、设备、介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114039751A (zh) | 2022-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110535831B (zh) | 基于Kubernetes和网络域的集群安全管理方法、装置及存储介质 | |
US9609023B2 (en) | System and method for software defined deployment of security appliances using policy templates | |
CN107066242B (zh) | 确定软件容器中软件的标识的方法和*** | |
US9594546B1 (en) | Governed application deployment on trusted infrastructure | |
CN102571698B (zh) | 一种虚拟机访问权限的控制方法、***及装置 | |
CN114514507B (zh) | 在云基础设施环境中支持配额策略语言的***和方法 | |
US10154065B1 (en) | Policy management in software container computing environments | |
US20120066487A1 (en) | System and method for providing load balancer visibility in an intelligent workload management system | |
CN103946834A (zh) | 虚拟网络接口对象 | |
US20080126406A1 (en) | Complexity management tool | |
US20110214118A1 (en) | Systems and methods for generating and storing translation information as package metadata | |
US11960578B2 (en) | Correspondence of external operations to containers and mutation events | |
US11290527B2 (en) | Automatic tagging of cloud resources for implementing security policies | |
US10992519B2 (en) | Storage system for network information | |
CN103685608A (zh) | 一种自动配置安全虚拟机ip地址的方法及装置 | |
US20180131605A1 (en) | Floating internet protocol for private networks | |
CN109923547B (zh) | 程序行为监控设备、分布式对象生成管理设备、存储介质、以及程序行为监视*** | |
CN111352737A (zh) | 一种基于资源池的容器云计算服务平台 | |
JP2022094938A (ja) | データアクセスを監視及び制御する為の方法、コンピュータ・プログラム、及びセキュリティシステムエージェント機器 | |
CN114039751B (zh) | 一种网络动态感知装置、***和方法 | |
US11973850B2 (en) | System and method for automatic deployment of a cloud environment | |
US20240103911A1 (en) | Intent-based orchestration of independent automations | |
CN114489954A (zh) | 基于虚拟化平台的租户创建方法、租户访问方法及设备 | |
CN103309722A (zh) | 一种云计算***及其应用访问方法 | |
CN117009981A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |