CN113176930B - 一种容器内虚拟机的浮动地址管理方法及*** - Google Patents

一种容器内虚拟机的浮动地址管理方法及*** Download PDF

Info

Publication number
CN113176930B
CN113176930B CN202110547669.2A CN202110547669A CN113176930B CN 113176930 B CN113176930 B CN 113176930B CN 202110547669 A CN202110547669 A CN 202110547669A CN 113176930 B CN113176930 B CN 113176930B
Authority
CN
China
Prior art keywords
target
address
container
virtual machine
node
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
CN202110547669.2A
Other languages
English (en)
Other versions
CN113176930A (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.)
Chongqing Unisinsight Technology Co Ltd
Original Assignee
Chongqing Unisinsight Technology Co 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 Chongqing Unisinsight Technology Co Ltd filed Critical Chongqing Unisinsight Technology Co Ltd
Priority to CN202110547669.2A priority Critical patent/CN113176930B/zh
Publication of CN113176930A publication Critical patent/CN113176930A/zh
Application granted granted Critical
Publication of CN113176930B publication Critical patent/CN113176930B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • 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
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提出一种容器内虚拟机的浮动地址管理方法及***,管理节点响应绑定请求,向目标执行节点发送绑定指令;绑定请求包括虚拟机的标识信息和目标地址,目标执行节点为运行目标容器的执行节点,目标容器为运行虚拟机的容器,目标地址为用于与虚拟机绑定的浮动地址,绑定指令包括目标容器的IP地址和目标地址;目标执行节点依据绑定指令生成第一转换关系,第一转换关系为目标容器的IP地址与目标地址之间的映射关系;目标执行节点将目标地址配置于目标执行节点的网卡,目标执行节点可以通过网卡接收或发送携带目标地址的流量段。用户可以通过FIP直接访问虚拟机,可直接登录,可使用FIP下所有的端口和资源,方便用户使用虚拟机。

Description

一种容器内虚拟机的浮动地址管理方法及***
技术领域
本申请涉及计算机应用领域,具体而言,涉及一种容器内虚拟机的浮动地址管理方法及***。
背景技术
随着Docker和Kubernetes生态圈的发展,云计算领域用容器来构建云平台的厂商越来越多。容器技术为应用程序提供了隔离的运行空间,每个容器内都包含一个独享的完整用户环境空间,容器内的变动不会影响其他容器的运行环境。但是容器之间共享同一个***内核,意味着对于不同内核或操作***需求的应用是不可能部署在一起的。相对应的虚拟机技术则是虚拟了一个完整的操作***,为用户提供了不依赖宿主机内核的运行环境,另外在隔离性和安全性方面都有容器技术不可比拟的优势。
因此容器和虚拟机融合,在同一个云平台中提供,整合容器和虚拟机各自的优势,弥补双方的不足,是云计算领域的一个发展方向。当在容器内搭建虚拟机后,发现容器内虚拟机的访问有诸多限制,用户不能像使用主机上虚拟机一样方便的使用虚拟机,成为了困扰本领域技术人员的一个难题。
发明内容
本申请的目的在于提供一种容器内虚拟机的浮动地址管理方法及***,以至少部分改善上述问题。
为了实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供一种容器内虚拟机的浮动地址管理方法,应用于浮动地址管理***,所述浮动地址管理***包括一个管理节点和至少一个执行节点;
所述管理节点响应绑定请求,向目标执行节点发送绑定指令;
其中,所述绑定请求包括虚拟机的标识信息和目标地址,所述目标执行节点为运行目标容器的执行节点,所述目标容器为运行所述虚拟机的容器,所述目标地址为用于与所述虚拟机绑定的浮动地址,所述浮动地址与所述浮动地址管理***的管理网卡或业务网卡的地址处于同一个网段,所述绑定指令包括所述目标容器的IP地址和所述目标地址;
所述目标执行节点依据所述绑定指令生成第一转换关系,其中,所述第一转换关系为所述目标容器的IP地址与所述目标地址之间的映射关系;
所述目标执行节点将所述目标地址配置于所述目标执行节点的网卡。
第二方面,本申请实施例提供一种容器内虚拟机的浮动地址管理***,所述浮动地址管理***包括一个管理节点和至少一个执行节点;
所述管理节点用于响应绑定请求,向目标执行节点发送绑定指令;
其中,所述绑定请求包括虚拟机的标识信息和目标地址,所述目标执行节点为运行目标容器的执行节点,所述目标容器为运行所述虚拟机的容器,所述目标地址为用于与所述虚拟机绑定的浮动地址,所述浮动地址与所述浮动地址管理***的管理网卡或业务网卡的地址处于同一个网段,所述绑定指令包括所述目标容器的IP地址和所述目标地址;
所述目标执行节点用于依据所述绑定指令生成第一转换关系,其中,所述第一转换关系为所述目标容器的IP地址与所述目标地址之间的映射关系;
所述目标执行节点还用于将所述目标地址配置于所述目标执行节点的网卡。
相对于现有技术,本申请实施例所提供的一种容器内虚拟机的浮动地址管理方法及***,管理节点响应绑定请求,向目标执行节点发送绑定指令;绑定请求包括虚拟机的标识信息和目标地址,目标执行节点为运行目标容器的执行节点,目标容器为运行虚拟机的容器,目标地址为用于与虚拟机绑定的浮动地址,绑定指令包括目标容器的IP地址和目标地址;目标执行节点依据绑定指令生成第一转换关系,第一转换关系为目标容器的IP地址与目标地址之间的映射关系;目标执行节点将目标地址配置于目标执行节点的网卡,目标执行节点可以通过网卡接收或发送携带目标地址的流量段。用户可以通过FIP直接访问虚拟机,可直接登录,可使用FIP下所有的端口和资源,方便用户使用虚拟机。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。
图1为本申请实施例提供的容器内虚拟机的浮动地址管理***连接示意图;
图2为本申请实施例提供的容器内虚拟机的浮动地址管理的流程示意图;
图3为本申请实施例提供的容器内虚拟机的浮动地址管理的流程示意图之一;
图4为本申请实施例提供的容器内虚拟机的浮动地址管理的流程示意图之一;
图5为本申请实施例提供的容器内虚拟机的浮动地址管理的流程示意图之一;
图6为本申请实施例提供的容器内虚拟机的浮动地址管理的流程示意图之一;
图7为本申请实施例提供的容器内虚拟机的浮动地址管理的流程示意图之一。
图中:10-管理节点;20-执行节点。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本申请的描述中,需要说明的是,术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
Kubernetes强大的调度能力和灵活的扩展方式是目前容器领域的标准化存在。容器内跑虚拟机,即容器内运行可以创建虚拟机的libvirt和qemu等进程,在Linux操作***中虚拟机本质上就是一个操作***进程,可以运行在容器内部。
容器内虚拟机可以做到虚拟机和容器真正的统一调度和管理,又可以充分利用Kubernetes的故障发现,滚动升级等管理机制。
以Redhat开源的kubevirt为例,虚拟机作为一种CRD资源,其定制controller会将虚拟机CRD转换为容器(简称,POD),POD内管理libevirt和qemu等进程,POD内虚拟机运行后,POD的网络会通过网桥的方式(或者NAT方式),将虚拟机的网络和POD的网络连接起来,虚拟机对外的IP即为POD的IP,虚拟机的网络出POD后,和其他POD的网络保持同等的传输方式和优先级。
因为虚拟机网络和POD网络存在上述关系,访问虚拟机,需要先访问POD,集群外访问POD的方式主要有NodePort、Ingress和Load Balancer的方式。LoadBalancer需要借助集群外的Balancer,使用限制较高。NodePort通过将主机端口与cluster服务端口绑定,外部用户访问POD服务,不同的节点对外端口(NodePort)端口可转发到不同的服务。用户可通过“节点IP地址+NodePort”访问POD服务。Ingress通过将集群对外URL路径和cluster服务端口绑定,外部用户访问POD服务,不同的URL路径可转发到不同的服务。用户可通过“IP地址+主机端口+URL路径”访问POD服务。以上方式均只能将POD内虚拟机的部分网络导出,但是NodePort占用主机端口较多,Ingress只能将应用地址导出且对虚拟机内的业务负载均衡器有限制,且两种访问都需要加上主机端口,不能像使用主机上虚拟机一样方便的使用虚拟机。
针对以上情况,POD内虚拟机的访问有诸多限制,用户不能像使用主机上虚拟机一样方便的使用虚拟机。故本申请提供了一种容器内虚拟机的类似浮动IP(FIP)的访问方式,用户可以通过FIP直接访问虚拟机,可ssh FIP直接登录,也可以使用该FIP下所有的端口和资源。而容器内虚拟机的类似浮动IP(FIP)的访问方式需要对虚拟机的浮动地址进行管理,进而本申请实施例提供了一种容器内虚拟机的浮动地址管理方法。
本申请实施例提供的容器内虚拟机的浮动地址管理方法,应用于如图1所示的浮动地址管理***。浮动地址管理***包括一个管理节点10和至少一个执行节点20。在一种可能的实现方式中管理节点10可以作为执行节点20,此时浮动地址管理***可以仅包括一个管理节点10,其同时也是执行节点。在一种可能的实现方式中,浮动地址管理***包括除开管理节点10以外的至少执行节点20,管理节点10与执行节点20通信连接。浮动地址管理***可以是一个服务器集群。
本申请实施例提供的一种容器内虚拟机的浮动地址管理方法,可以但不限于应用于图1所示的浮动地址管理***,具体的流程,请参考图2:
S102,管理节点响应绑定请求,向目标执行节点发送绑定指令。
其中,绑定请求包括虚拟机的标识信息和目标地址,目标执行节点为运行目标容器的执行节点,目标容器为运行虚拟机的容器,目标地址为用于与虚拟机绑定的浮动地址,浮动地址与浮动地址管理***的管理网卡或业务网卡的地址处于同一个网段,绑定指令包括目标容器的IP地址和目标地址。
在一种可能的实现方式中,管理节点10可以依据标识信息确定运行虚拟机的容器,作为目标容器,从而确定目标容器的IP地址,确定运行目标容器的执行节点为目标执行节点。生成包括目标容器的IP地址和目标地址的绑定指令,并将绑定指令发送给目标执行节点。
需要说明的是,浮动地址(简称,FIP)的网段与浮动地址管理***的管理网卡或业务网卡的地址处于同一个网段,因此,FIP不需要额外的路由支持。
S201,目标执行节点依据绑定指令生成第一转换关系。
其中,第一转换关系为目标容器的IP地址与目标地址之间的映射关系。
在一种可能的实现方式中,可以依据第一转换关系,执行虚拟机所在POD的IP地址和目标地址之间进行NAT地址转换。当目标执行节点获取到携带目标地址的流量段时,可以将该流量段传给IP地址与目标地址具有映射关系的目标容器。当目标执行节点中的目标容器需要外发流量段时,初始的流量段携带的IP地址为目标容器的IP地址,目标执行节点依据第一转换关系,将外发流浪段的IP地址修改为对应的目标地址。
S202,目标执行节点将目标地址配置于目标执行节点的网卡。
可选地,为了节省主机的网卡,可将目标地址以Secondary ip的方式配置在目标执行节点的管理网卡或业务网卡上。即目标执行节点的任意一张网卡均可以配置多个浮动地址,配置的浮动地址具有相同的前缀标识或后缀标识。
在一种可能的实现方式中,目标执行节点在目标地址配置于目标执行节点的网卡后,可以通过网卡接收或发送携带目标地址的流量段。用户可以通过FIP直接访问虚拟机,可ssh FIP直接登录,也可以使用该FIP下所有的端口和资源,方便了用户使用虚拟机,克服了现有技术存在的问题。
综上所述,本申请实施例提供了一种容器内虚拟机的浮动地址管理方法,管理节点响应绑定请求,向目标执行节点发送绑定指令;绑定请求包括虚拟机的标识信息和目标地址,目标执行节点为运行目标容器的执行节点,目标容器为运行虚拟机的容器,目标地址为用于与虚拟机绑定的浮动地址,绑定指令包括目标容器的IP地址和目标地址;目标执行节点依据绑定指令生成第一转换关系,第一转换关系为目标容器的IP地址与目标地址之间的映射关系;目标执行节点将目标地址配置于目标执行节点的网卡,目标执行节点可以通过网卡接收或发送携带目标地址的流量段。用户可以通过FIP直接访问虚拟机,可ssh FIP直接登录,可使用FIP下所有的端口和资源,方便用户使用虚拟机。
在一种可能的实现方式,目标执行节点通过虚拟机所在POD网卡对应的主机虚拟cali网口和主机管理口网卡或业务口网卡进行流量转发。
可选地,在虚拟机所在的主机的管理口网卡或业务口网卡设置FIP,以Secondaryip的方式。示例中的转换规则,对出入的ip都做了限制,故不会影响网卡上的其他网络流量。
在一种可能的实现方式中,客户端的显示界面上会显示空闲的浮动地址和虚拟机的标识信息,用户可以观察显示界面上的内容,点击相应的浮动地址和虚拟机的标识信息,从而在客户端生成绑定请求。客户端将绑定请求传输给管理节点10,以使管理节点10响应绑定请求。
在图2的基础上,关于如何保存目标地址与虚拟机的绑定关系,本申请实施例还提供了一种可能的实现方式,请参考图3,容器内虚拟机的浮动地址管理方法还包括:
S103,管理节点保存目标地址与虚拟机的绑定关系,将目标地址以注解的形式添加至虚拟机对应的CRD资源中。
在图3的基础上,关于如何解除虚拟机与目标地址之间的绑定关系,本申请实施例还提供了一种可能的实现方式,请参考图4,容器内虚拟机的浮动地址管理方法还包括:
S104,管理节点响应解绑请求,向目标执行节点发送解绑指令。
其中,解绑请求包括虚拟机的标识信息和/或目标地址,解绑指令包括目标容器的IP地址和所述目标地址。
可选地,在知晓虚拟机的标识信息和对应的目标地址中的任意一个时,查询虚拟机对应的CRD资源中的注解信息,可以确定另一个,从而生成解绑指令。当然地,在另一种情况下,解绑请求可以同时包括虚拟机的标识信息和目标地址。
需要说明的是,解绑请求也可以是用户在客户端输入相应指令所生成的请求,客户端将解绑请求传输给管理节点10。
S203,目标执行节点在接收到解绑指令后,删除与解绑指令对应的第一转换关系。
其中,与解绑指令对应的第一转换关系,为解绑指令中的目标容器的IP地址和目标地址之间的映射关系。
S204,目标执行节点将配置于目标执行节点的网卡的目标地址删除。
可选地,管理节点10通过解绑指令通知目标执行节点删除与解绑指令对应的第一转换关系,并将配置于目标执行节点的网卡的目标地址删除。此时,目标执行节点不在接收对携带目标地址的流量段,也不能发送携带目标地址的流量段。
在图4的基础上,在管理节点响应解绑请求之后,关于如何删除虚拟机与目标地址之间的绑定关系,本申请实施例还提供了一种可能的实现方式,请参考图5,容器内虚拟机的浮动地址管理方法还包括:
S105,管理节点删除目标地址与虚拟机的绑定关系,将虚拟机对应的CRD资源中目标地址对应的注解删除。
在图3的基础上,关于虚拟机关机时,如何管理对应的浮动地址,本申请实施例还提供了一种可能的实现方式,请参考图6,容器内虚拟机的浮动地址管理方法还包括:
S106,当管理节点监测到虚拟机关机时,向目标执行节点发送解绑指令。
其中,解绑指令包括目标容器的IP地址和目标地址,具体可参照S104中的解绑指令。
目标执行节点在接收到解绑指令后,执行S203和S204。
请继续参考图6,关于虚拟机重启时,如何管理对应的浮动地址,本申请实施例还提供了一种可能的实现方式,容器内虚拟机的浮动地址管理方法还包括:
S107,当管理节点监测到虚拟机重启时,获取当前运行虚拟机的容器,确定为新的目标容器,将运行新的目标容器的执行节点确定为新的目标执行节点。
可能地,当虚拟机重启时,虚拟机对应的目标执行节点可能会发生变化,即新生成的目标容器可能运行于其他的执行节点。所以需要获取当前运行虚拟机的容器,确定为新的目标容器,将运行新的目标容器的执行节点确定为新的目标执行节点。
在确定新的目标执行节点、新的目标容器的IP地址以及注解中的目标地址,可以生成新的绑定指定,向新的目标执行节点发送绑定指令,新的目标执行节点在接收到新的绑定指令后,重复S201和S202,进行绑定。
在图2的基础上,关于如何获取目的地址,本申请实施例还提供了一种可能的实现方式,请参考图7,在管理节点响应绑定请求,向目标执行节点发送绑定指令之前,还包括:
S101,管理节点响应池创建请求,将池创建请求包含的浮动地址添加至新建的浮动地址池。
其中,池创建请求包括至少一个空闲的浮动地址。
在一种可能的实现方式中,客户端显示浮动地址池中的浮动地址,从中确定一个作为目标地址。
本申请实施例提供了一种容器内虚拟机的浮动地址管理方法,解决了POD内虚拟机访问受限的问题,一方面用户可直接通过FIP进行SSH登录虚拟机;再一方面,用户虚拟机绑定了FIP后,使用该FIP可以访问虚拟机的所有端口和资源,不受主机端口的限制;再一方面,FIP配置在主机管理口或业务口已有的网卡上,在网卡资源受限的情况下,节省资源,且不需要添加额外路由或设备支持;再一方面,实现了FIP浮动的思想,虚拟机和FIP不是全生命周期的一对一关系,虚拟机可以按需使用,提高了FIP的使用率。
本申请实施例还提供了一种容器内虚拟机的浮动地址管理***,如图1所示,容器内虚拟机的浮动地址管理***包括一个管理节点10和至少一个执行节点20。
管理节点10用于响应绑定请求,向目标执行节点发送绑定指令;
其中,绑定请求包括虚拟机的标识信息和目标地址,目标执行节点为运行目标容器的执行节点,目标容器为运行虚拟机的容器,目标地址为用于与虚拟机绑定的浮动地址,浮动地址与浮动地址管理***的管理网卡或业务网卡的地址处于同一个网段,绑定指令包括目标容器的IP地址和目标地址;
目标执行节点用于依据绑定指令生成第一转换关系,其中,第一转换关系为目标容器的IP地址与目标地址之间的映射关系;
目标执行节点还用于将目标地址配置于目标执行节点的网卡。
可选地,管理节点10还用于保存目标地址与虚拟机的绑定关系,将目标地址以注解的形式添加至虚拟机对应的CRD资源中。
可选地,管理节点10还用于响应池创建请求,将池创建请求包含的浮动地址添加至新建的浮动地址池;
其中,池创建请求包括至少一个空闲的浮动地址。
需要说明的是,本实施例所提供的器内虚拟机的浮动地址管理***,其可以执行上述方法流程实施例所示的方法流程,以实现对应的技术效果。为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

Claims (10)

1.一种容器内虚拟机的浮动地址管理方法,其特征在于,应用于浮动地址管理***,所述浮动地址管理***包括一个管理节点和至少一个执行节点;
所述管理节点响应绑定请求,向目标执行节点发送绑定指令;
其中,所述绑定请求包括虚拟机的标识信息和目标地址,所述目标执行节点为运行目标容器的执行节点,所述目标容器为运行所述虚拟机的容器,所述目标地址为用于与所述虚拟机绑定的浮动地址,所述浮动地址与所述浮动地址管理***的管理网卡或业务网卡的地址处于同一个网段,所述绑定指令包括所述目标容器的IP地址和所述目标地址;
所述目标执行节点依据所述绑定指令生成第一转换关系,其中,所述第一转换关系为所述目标容器的IP地址与所述目标地址之间的映射关系;
所述目标执行节点将所述目标地址配置于所述目标执行节点的网卡。
2.如权利要求1所述的容器内虚拟机的浮动地址管理方法,其特征在于,在所述管理节点响应绑定请求之后,所述方法还包括:
所述管理节点保存所述目标地址与所述虚拟机的绑定关系,将所述目标地址以注解的形式添加至所述虚拟机对应的CRD资源中。
3.如权利要求2所述的容器内虚拟机的浮动地址管理方法,其特征在于,所述方法还包括:
所述管理节点响应解绑请求,向目标执行节点发送解绑指令;
其中,所述解绑请求包括虚拟机的标识信息和/或目标地址,所述解绑指令包括所述目标容器的IP地址和所述目标地址;
所述目标执行节点在接收到所述解绑指令后,删除与所述解绑指令对应的第一转换关系;
所述目标执行节点将配置于所述目标执行节点的网卡的所述目标地址删除。
4.如权利要求3所述的容器内虚拟机的浮动地址管理方法,其特征在于,在所述管理节点响应解绑请求之后,所述方法还包括:
所述管理节点删除所述目标地址与所述虚拟机的绑定关系,将所述虚拟机对应的CRD资源中所述目标地址对应的注解删除。
5.如权利要求2所述的容器内虚拟机的浮动地址管理方法,其特征在于,所述方法还包括:
当所述管理节点监测到所述虚拟机关机时,向目标执行节点发送解绑指令;
其中,所述解绑指令包括所述目标容器的IP地址和所述目标地址;
所述目标执行节点在接收到所述解绑指令后,删除与所述解绑指令对应的第一转换关系;
所述目标执行节点将配置于所述目标执行节点的网卡的所述目标地址删除。
6.如权利要求5所述的容器内虚拟机的浮动地址管理方法,其特征在于,在所述当所述管理节点监测到所述虚拟机关机时,向目标执行节点发送解绑指令之后,所述方法还包括:
当所述管理节点监测到所述虚拟机重启时,获取当前运行所述虚拟机的容器,确定为新的目标容器,将运行新的目标容器的执行节点确定为新的目标执行节点;
重复向所述目标执行节点发送绑定指令的步骤。
7.如权利要求1所述的容器内虚拟机的浮动地址管理方法,其特征在于,在所述管理节点响应绑定请求,向目标执行节点发送绑定指令之前,所述方法还包括:
所述管理节点响应池创建请求,将所述池创建请求包含的浮动地址添加至新建的浮动地址池;
其中,所述池创建请求包括至少一个空闲的浮动地址。
8.一种容器内虚拟机的浮动地址管理***,其特征在于,所述浮动地址管理***包括一个管理节点和至少一个执行节点;
所述管理节点用于响应绑定请求,向目标执行节点发送绑定指令;
其中,所述绑定请求包括虚拟机的标识信息和目标地址,所述目标执行节点为运行目标容器的执行节点,所述目标容器为运行所述虚拟机的容器,所述目标地址为用于与所述虚拟机绑定的浮动地址,所述浮动地址与所述浮动地址管理***的管理网卡或业务网卡的地址处于同一个网段,所述绑定指令包括所述目标容器的IP地址和所述目标地址;
所述目标执行节点用于依据所述绑定指令生成第一转换关系,其中,所述第一转换关系为所述目标容器的IP地址与所述目标地址之间的映射关系;
所述目标执行节点还用于将所述目标地址配置于所述目标执行节点的网卡。
9.如权利要求8所述的容器内虚拟机的浮动地址管理***,其特征在于,
所述管理节点还用于保存所述目标地址与所述虚拟机的绑定关系,将所述目标地址以注解的形式添加至所述虚拟机对应的CRD资源中。
10.如权利要求8所述的容器内虚拟机的浮动地址管理***,其特征在于,
所述管理节点还用于响应池创建请求,将所述池创建请求包含的浮动地址添加至新建的浮动地址池;
其中,所述池创建请求包括至少一个空闲的浮动地址。
CN202110547669.2A 2021-05-19 2021-05-19 一种容器内虚拟机的浮动地址管理方法及*** Active CN113176930B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110547669.2A CN113176930B (zh) 2021-05-19 2021-05-19 一种容器内虚拟机的浮动地址管理方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110547669.2A CN113176930B (zh) 2021-05-19 2021-05-19 一种容器内虚拟机的浮动地址管理方法及***

Publications (2)

Publication Number Publication Date
CN113176930A CN113176930A (zh) 2021-07-27
CN113176930B true CN113176930B (zh) 2023-09-01

Family

ID=76929540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110547669.2A Active CN113176930B (zh) 2021-05-19 2021-05-19 一种容器内虚拟机的浮动地址管理方法及***

Country Status (1)

Country Link
CN (1) CN113176930B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114422295B (zh) * 2021-12-27 2023-05-23 联想(北京)有限公司 一种网络信息处理方法、电子设备以及存储介质
CN115174524B (zh) * 2022-05-18 2024-01-02 天翼云科技有限公司 一种浮动ip分配方法、装置、电子设备及存储介质
CN116016438B (zh) * 2022-12-12 2023-08-15 上海道客网络科技有限公司 基于容器云平台的多子网统一分配ip地址的方法和***

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106341438A (zh) * 2015-07-10 2017-01-18 阿里巴巴集团控股有限公司 请求处理方法和装置
CN106953943A (zh) * 2017-04-25 2017-07-14 中国联合网络通信集团有限公司 适用于交换机通信的方法及装置
CN108804202A (zh) * 2018-06-11 2018-11-13 郑州云海信息技术有限公司 一种企业级容器镜像管理方法和***
CN109154849A (zh) * 2016-05-23 2019-01-04 W·特纳 包括核心层、用户接口和配备有基于容器的用户空间的服务层的超融合***
CN109634723A (zh) * 2018-12-20 2019-04-16 国网新疆电力有限公司信息通信公司 融合存载模块的通信方法及融合存载模块
CN112148489A (zh) * 2020-09-22 2020-12-29 网易(杭州)网络有限公司 游戏资源调度方法、装置、设备及存储介质
CN112398688A (zh) * 2020-11-13 2021-02-23 广东省华南技术转移中心有限公司 容器网络配置方法、容器网络***以及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10721290B2 (en) * 2015-06-05 2020-07-21 Nutanix, Inc. Architecture for managing I/O and storage for a virtualization environment using executable containers and virtual machines

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106341438A (zh) * 2015-07-10 2017-01-18 阿里巴巴集团控股有限公司 请求处理方法和装置
CN109154849A (zh) * 2016-05-23 2019-01-04 W·特纳 包括核心层、用户接口和配备有基于容器的用户空间的服务层的超融合***
CN106953943A (zh) * 2017-04-25 2017-07-14 中国联合网络通信集团有限公司 适用于交换机通信的方法及装置
CN108804202A (zh) * 2018-06-11 2018-11-13 郑州云海信息技术有限公司 一种企业级容器镜像管理方法和***
CN109634723A (zh) * 2018-12-20 2019-04-16 国网新疆电力有限公司信息通信公司 融合存载模块的通信方法及融合存载模块
CN112148489A (zh) * 2020-09-22 2020-12-29 网易(杭州)网络有限公司 游戏资源调度方法、装置、设备及存储介质
CN112398688A (zh) * 2020-11-13 2021-02-23 广东省华南技术转移中心有限公司 容器网络配置方法、容器网络***以及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
云环境下多租户的网络隔离的研究与实现;杨约社;《中国优秀硕士学位论文全文数据库 信息科技辑》(第12期);I139-20 *

Also Published As

Publication number Publication date
CN113176930A (zh) 2021-07-27

Similar Documents

Publication Publication Date Title
CN113176930B (zh) 一种容器内虚拟机的浮动地址管理方法及***
US11218420B2 (en) Virtual network interface objects
CN108293022B (zh) 一种报文传输的方法、装置和***
JP6403800B2 (ja) エンタープライズ・ベース・ネットワーク及びマルチテナント・ネットワーク間でのアプリケーションの移行
KR101912073B1 (ko) 가상화된 네트워크와 비-가상화된 네트워크 간 가상화 게이트웨이
JP5809696B2 (ja) 分散型仮想ネットワーク・ゲートウェイ
US7941539B2 (en) Method and system for creating a virtual router in a blade chassis to maintain connectivity
US11240152B2 (en) Exposing a subset of hosts on an overlay network to components external to the overlay network without exposing another subset of hosts on the overlay network
US7945647B2 (en) Method and system for creating a virtual network path
CN106533890B (zh) 一种报文处理方法、装置及***
US20170272400A1 (en) Network virtualization of containers in computing systems
CN103931140A (zh) 虚拟化网络的分布式地址解析服务
CN109039913A (zh) 虚拟路由装置和虚拟机通信***
US9166947B1 (en) Maintaining private connections during network interface reconfiguration
CN112910685A (zh) 实现对容器网络统一管理的方法及装置
JP7132494B2 (ja) マルチクラウド運用プログラム、およびマルチクラウド運用方法
CN115622878A (zh) k8s网桥插件实现方法、装置、电子设备和可读存储介质
CN117061352A (zh) 多模态虚拟网元的实现方法、装置、设备及介质
US10243920B1 (en) Internet protocol address reassignment between virtual machine instances
CN112243045A (zh) 服务数据处理方法、装置、节点结构及电子设备
US9929951B1 (en) Techniques for using mappings to manage network traffic
CN116389599A (zh) 网关服务请求的处理、云原生网关***的管理方法及装置
US10491427B2 (en) Computer system, gateway apparatus control method and storage medium
US11363113B1 (en) Dynamic micro-region formation for service provider network independent edge locations
McGeer et al. The instageni project

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