CN108363607A - 一种云平台虚拟机的虚拟链路断电恢复方法 - Google Patents
一种云平台虚拟机的虚拟链路断电恢复方法 Download PDFInfo
- Publication number
- CN108363607A CN108363607A CN201711016513.1A CN201711016513A CN108363607A CN 108363607 A CN108363607 A CN 108363607A CN 201711016513 A CN201711016513 A CN 201711016513A CN 108363607 A CN108363607 A CN 108363607A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- link
- virtual
- port
- cloud platform
- 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.)
- Granted
Links
Classifications
-
- 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
-
- 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)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Power Sources (AREA)
Abstract
本发明涉及云计算技术领域,特别是一种云平台虚拟机的虚拟链路断电恢复方法。本发明所述的方法是创建虚拟机绑定端口的时候保存端口相关的信息到虚拟机所在的配置目录,并通过链路恢复程序对比配置目录中的特征文件与本节点标识信息,进行链路恢复。本发明提出了一种云平台虚拟机的虚拟链路断电恢复方法,解决了云平台大规模宿主节点由于断电等因素所导致的虚拟机虚拟网络链路恢复困难,任务量大的问题。
Description
技术领域
本发明涉及云计算技术领域,特别是一种云平台虚拟机的虚拟链路断电恢复方法。
背景技术
随着云平台集群规模的不断扩大,其运维的成本也不断提高,尤其是当发生断电等不可控制因素时,云平台需要快速从断电状态中进行恢复。当前,很多云平台都是基于OpenStack开源云平台进行二次开发而成;特别是,当二次开发所采用的计算组件并非OpenStack所原生的NOVA组件时,计算组件需要与Neutrun的端口进行绑定。这里面的绑定步骤非常复杂,如果仅仅是通过创建虚拟机的时候临时进行绑定,那当发生任何例如虚拟链路断开、宿主机操作系统重启、断电等类似现象时;计算组件所管理的虚拟机将无法与Neutron组件的端口进行正常绑定而通信;此时需要人工恢复。人工恢复涉及到在计算组件的数据库中查询虚拟机UUID和名称、在Neutron网络组件中查询虚拟机所对应的端口ID,另外还需要在虚拟机宿主机上执行命令查询所创建的本地网桥名称以及VETH设备名称等。这一系列的人工操作如果仅仅对于单台虚拟机的链路恢复也是可行的,但是如果所涉及的宿主节点和虚拟机一多,人工操作恢复几乎不可能。
发明内容
本发明解决的技术问题在于提出了一种云平台虚拟机的虚拟链路断电恢复方法,实现了云平台中用户虚拟机的虚拟链路被破坏后的及时快速恢复。
本发明解决上述技术问题的技术方案是:
所述的方法是创建虚拟机绑定端口的时候保存端口相关的信息到虚拟机所在的配置目录,并通过链路恢复程序对比配置目录中的特征文件与本节点标识信息,进行链路恢复。
所述的方法包括如下步骤:
(1)获取虚拟机所绑定的端口信息,并在虚拟机配置目录分别创建以端口ID为名称标识的链路恢复程序和记录有宿主节点标识的特征文件;
(2)链路恢复程序读取宿主节点上计算组件的配置文件获取云平台虚拟机配置目录所在路径和本节点的标识信息;
(3)链路恢复程序依次读取云平台用户虚拟机配置目录中的特征文件与本节点标识信息进行对比,并执行链路恢复。
所述的执行链路恢复进一步包括:
(1)创建虚拟机接入的虚拟网桥并启动;
(2)创建VETH设备并启动;
(3)将VETH设备分别接入所述虚拟网桥和宿主节点上面的OVS虚拟交换机;
所述的执行链路恢复必须在满足虚拟机配置目录中的特征文件与本节点标识信息进行对比一致的情况下才能执行,否则不执行。
所述的端口信息包括端口所有者ID,端口ID,端口对应的IP地址和MAC地址。
所述的虚拟机配置目录是指存放有用于启动虚拟机的XML格式文件的目录,存放介质可以是本地存储,也可以是共享存储;
所述共享存储包括NAS类型存储和IP-SAN、FC-SAN格式以文件系统挂载形式的存储。
所述的链路恢复程序包括两部分,第一部分为调用子程序,用于构造脚本执行参数;第二部分为被调用子程序;
所述的调用子程序为每台虚拟机所独有,即每台虚拟机配置目录中都各自存在;
所述的调用子程序构造的参数包括端口ID、虚拟机UUID、网桥名称、VETH设备名称、端口MAC地址;
所述的被调用子程序为所有虚拟机所共有的子程序,可以被云平台上所述所有调用子程序所调用。
所述的计算组件为云平台上用于管理虚拟机整个生命周期的组件程序,计算组件通过配置文件进行标识和控制。
所述的链路恢复程序的类型可以是SHELL脚本,也可以是其他任一种计算机可执行程序。
本发明方案的有益效果如下:
1、本发明方法,保证了云平台中用户虚拟机的虚拟链路被破坏时,能够及时的通过一键操作快速恢复,解决了云平台大规模宿主节点由于断电等因素所导致的虚拟机虚拟网络链路恢复困难,任务量大的问题。
2、本发明尤其适用于采用共享存储机制存储虚拟机配置目录的实现方案,可以通过对比当前计算组件所在的节点标识信息与虚拟机目录中的宿主节点特征文件内容,准确的执行本节点上面的虚拟机链路恢复,而不会出现多节点重复恢复虚拟链路的问题。
3、本发明原理简单、效果明显,基于云平台之外、简单的自定义第三方独立程序,通过将链路恢复程序分成虚拟机各自单独子程序部分和虚拟机共有通用子程序部分具有通用性的特点。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明方法的流程图;
图2为本发明结构示意图。
具体实施方式
本发明提出一种云平台虚拟机的虚拟链路断电恢复方法,可以实现云平台中用户虚拟机的虚拟链路被破坏后的及时快速恢复。
请参见图1为本发明实施例所提供的一种云平台虚拟机的虚拟链路断电恢复方法的流程图,图2为本发明实施例的结构示意图。下面分别对其各个流程具体实现进行描述。
云平台在创建虚拟机进行虚拟网卡绑定的时候,获取相应的虚拟端口信息,包括端口所有者ID(即云平台用户ID),端口ID,端口对应的IP地址和MAC地址,在虚拟机配置目录中进行保存,这里以共享存储本地挂载目录为例进行说明。
执行如下命令挂载共享存储挂载本地目录用以存放云平台集群虚拟机的配置文件:
mount-t nfs 20.251.51.115:/cephFileSystem//cephFileSystem
规定虚拟机配置目录为/cephFileSystem/instances/config/${云平台用户ID}/${虚拟机标识},如下为其中一个实例:
/cephFileSystem/instances/config/5613886f35574273ab45b92473e4315a/i-01473E37/
在该虚拟机创建的过程中,在虚拟机配置目录中新增以端口ID为名称标识的链路恢复程序和记录有宿主节点标识的特征文件,分别为:start_net_5c31a8e9-2477-4248-8778-27cd342dbfbd.sh和nodeinfo。其中后者nodeinfo内容这里以记录宿主节点IP为例,其内容如下所示:
[root@gcloud51107 i-01473E37]#cat nodeinfo
20.251.51.107
[root@gcloud51107 i-01473E37]
而其中前者内容类似如下所示:
[root@gcloud51107 i-01473E37]#catstart_net_5c31a8e9-2477-4248-8778-27cd342dbfbd.sh
/usr/share/gcloud/network/net_start.sh 5c31a8e9-2477-4248-8778-27cd342dbfbd 542c2d24-8812-4638-8a7c-c0e6f1d0b2f5 brC3723D08 preC3723D08aftC3723D08 fa:16:3e:fb:99:28
net_start.sh后面参数分别为端口ID,虚拟机UUID,虚拟机本地网桥,VETH设备两端名称,虚拟机MAC地址。
如上描述在虚拟机配置目录中start_net_5c31a8e9-2477-4248-8778-27cd342dbfbd.sh为本发明描述的链路恢复程序第一部分——虚拟机各自独有的链路恢复调用子程序;/usr/share/gcloud/network/net_start.sh为本发明描述的链路恢复程序第二部分——虚拟机共有的链路恢复被调用子程序,其内容类似如下:
该子程序的作用为:
(1)获取第一部分调用程序各个虚拟机的独有参数信息;
(2)创建虚拟机接入的虚拟网桥并启动;
(3)创建VETH设备并启动;
(4)将VETH设备分别接入所述虚拟网桥和宿主节点上面的OVS虚拟交换机。
断电恢复程序这里以SHELL脚本为例进行说明,其作用:
(1)断电恢复程序读取宿主节点上计算组件的配置文件获取云平台虚拟机配置目录所在路径和本节点的标识信息;
(2)断电恢复程序依次读取云平台用户虚拟机配置目录中的特征文件与本节点标识信息进行对比,并执行链路恢复。
其中计算组件配置文件包括如下虚拟机配置目录所在路径配置项INSTANCE_CONFIG_PATH和标识本节点的配置项NODE_IP:
以上描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出实质性创造所获得的方案,都属于本发明保护的范围。
Claims (8)
1.一种云平台虚拟机的虚拟链路断电恢复方法,其特征在于:所述的方法是创建虚拟机绑定端口的时候保存端口相关的信息到虚拟机所在的配置目录,并通过链路恢复程序对比配置目录中的特征文件与本节点标识信息,进行链路恢复。
2.根据权利要求1所述的方法,其特征在于:所述的方法包括如下步骤:
(1)获取虚拟机所绑定的端口信息,并在虚拟机配置目录分别创建以端口ID为名称标识的链路恢复程序和记录有宿主节点标识的特征文件;
(2)链路恢复程序读取宿主节点上计算组件的配置文件获取云平台虚拟机配置目录所在路径和本节点的标识信息;
(3)链路恢复程序依次读取云平台用户虚拟机配置目录中的特征文件与本节点标识信息进行对比,并执行链路恢复。
3.根据权利要求2所述的方法,其特征在于,所述的执行链路恢复进一步包括:
(1)创建虚拟机接入的虚拟网桥并启动;
(2)创建VETH设备并启动;
(3)将VETH设备分别接入所述虚拟网桥和宿主节点上面的OVS虚拟交换机;
所述的执行链路恢复必须在满足虚拟机配置目录中的特征文件与本节点标识信息进行对比一致的情况下才能执行,否则不执行。
4.根据权利要求2所述的方法,其特征在于,所述的端口信息包括端口所有者ID,端口ID,端口对应的IP地址和MAC地址。
5.根据权利要求2所述的方法,其特征在于,所述的虚拟机配置目录是指存放有用于启动虚拟机的XML格式文件的目录,存放介质可以是本地存储,也可以是共享存储;
所述共享存储包括NAS类型存储和IP-SAN、FC-SAN格式以文件系统挂载形式的存储。
6.根据权利要求2所述的方法,其特征在于,所述的链路恢复程序包括两部分,第一部分为调用子程序,用于构造脚本执行参数;第二部分为被调用子程序;
所述的调用子程序为每台虚拟机所独有,即每台虚拟机配置目录中都各自存在;
所述的调用子程序构造的参数包括端口ID、虚拟机UUID、网桥名称、VETH设备名称、端口MAC地址;
所述的被调用子程序为所有虚拟机所共有的子程序,可以被云平台上所述所有调用子程序所调用。
7.根据权利要求2所述的方法,其特征在于,所述的计算组件为云平台上用于管理虚拟机整个生命周期的组件程序,计算组件通过配置文件进行标识和控制。
8.根据权利要求2所述的方法,其特征在于,所述的链路恢复程序的类型可以是SHELL脚本,也可以是其他任一种计算机可执行程序。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711016513.1A CN108363607B (zh) | 2017-10-25 | 2017-10-25 | 一种云平台虚拟机的虚拟链路断电恢复方法 |
PCT/CN2017/109530 WO2019080162A1 (zh) | 2017-10-25 | 2017-11-06 | 一种云平台虚拟机虚拟链路断电后的恢复方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711016513.1A CN108363607B (zh) | 2017-10-25 | 2017-10-25 | 一种云平台虚拟机的虚拟链路断电恢复方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108363607A true CN108363607A (zh) | 2018-08-03 |
CN108363607B CN108363607B (zh) | 2020-02-14 |
Family
ID=63010073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711016513.1A Active CN108363607B (zh) | 2017-10-25 | 2017-10-25 | 一种云平台虚拟机的虚拟链路断电恢复方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108363607B (zh) |
WO (1) | WO2019080162A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114928591A (zh) * | 2022-05-31 | 2022-08-19 | 济南浪潮数据技术有限公司 | 一种虚拟机ip地址的添加方法、装置以及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102244589A (zh) * | 2011-07-19 | 2011-11-16 | 北京星网锐捷网络技术有限公司 | 处理虚拟交换单元系统中链路故障的方法及对端设备 |
US20150138951A1 (en) * | 2013-11-15 | 2015-05-21 | International Business Machines Corporation | Vlag pim link failover using pim hello message |
CN106506353A (zh) * | 2016-10-27 | 2017-03-15 | 吉林大学 | 基于sdn的虚拟网络单链路故障恢复方法及系统 |
-
2017
- 2017-10-25 CN CN201711016513.1A patent/CN108363607B/zh active Active
- 2017-11-06 WO PCT/CN2017/109530 patent/WO2019080162A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102244589A (zh) * | 2011-07-19 | 2011-11-16 | 北京星网锐捷网络技术有限公司 | 处理虚拟交换单元系统中链路故障的方法及对端设备 |
US20150138951A1 (en) * | 2013-11-15 | 2015-05-21 | International Business Machines Corporation | Vlag pim link failover using pim hello message |
CN106506353A (zh) * | 2016-10-27 | 2017-03-15 | 吉林大学 | 基于sdn的虚拟网络单链路故障恢复方法及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114928591A (zh) * | 2022-05-31 | 2022-08-19 | 济南浪潮数据技术有限公司 | 一种虚拟机ip地址的添加方法、装置以及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108363607B (zh) | 2020-02-14 |
WO2019080162A1 (zh) | 2019-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108536761B (zh) | 报表数据查询方法及服务器 | |
US20230138736A1 (en) | Cluster file system-based data backup method and apparatus, and readable storage medium | |
CN102779185B (zh) | 一种高可用分布式全文索引方法 | |
CN107797767B (zh) | 一种基于容器技术部署分布式存储系统及其存储方法 | |
WO2017162032A1 (zh) | 执行数据恢复操作的方法及装置 | |
CN108566290A (zh) | 服务配置管理方法、系统、存储介质和服务器 | |
CN111324610A (zh) | 一种数据同步的方法及装置 | |
CN109240846A (zh) | 一种电源故障诊断方法、装置及服务器 | |
CN111130962B (zh) | 一种交换机自动化配置方法、设备、系统及存储介质 | |
CN105677904B (zh) | 基于分布式文件系统的小文件存储方法及装置 | |
CN108415756A (zh) | 一种云平台虚拟机的云盘自动恢复方法 | |
CN105635311A (zh) | 一种云管理平台中资源池信息同步的方法 | |
CN115827008B (zh) | 一种基于云原生平台Kubernetes的云原生大数据组件管理系统 | |
CN102638372B (zh) | 一种分布式集群系统及其实现方法 | |
CN106919438A (zh) | 一种虚拟化环境中工作流处理方法和框架 | |
CN107329806A (zh) | 一种开发环境构建方法及装置 | |
CN107861737A (zh) | 一种大型系统的数据库版本迁移方法 | |
WO2020238860A1 (zh) | 分布式文件批处理方法、装置、与可读存储介质 | |
CN103294799B (zh) | 一种数据并行批量导入只读查询系统的方法及系统 | |
CN103139281B (zh) | 个性化印刷系统及其控制方法 | |
US10951540B1 (en) | Capture and execution of provider network tasks | |
CN108363607A (zh) | 一种云平台虚拟机的虚拟链路断电恢复方法 | |
CN106557530B (zh) | 业务系统、数据修复方法及装置 | |
CN107783891A (zh) | 一种采集nginx日志的方法及服务器 | |
CN108228417A (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 | ||
CB02 | Change of applicant information |
Address after: 523808 19th Floor, Cloud Computing Center, Chinese Academy of Sciences, No. 1 Kehui Road, Songshan Lake Hi-tech Industrial Development Zone, Dongguan City, Guangdong Province Applicant after: G-Cloud Technology Co., Ltd. Address before: 523808 Guangdong province Dongguan City Songshan Lake Science and Technology Industrial Park Building No. 14 Keyuan pine Applicant before: G-Cloud Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |