CN117112071B - 一种跨平台配置信息转化方法、系统、设备及存储介质 - Google Patents
一种跨平台配置信息转化方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN117112071B CN117112071B CN202311387837.1A CN202311387837A CN117112071B CN 117112071 B CN117112071 B CN 117112071B CN 202311387837 A CN202311387837 A CN 202311387837A CN 117112071 B CN117112071 B CN 117112071B
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- configuration information
- configuration
- target
- virtualization 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.)
- Active
Links
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 46
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000007704 transition Effects 0.000 claims abstract description 47
- 238000004590 computer program Methods 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 3
- 238000011426 transformation method Methods 0.000 claims description 3
- 230000001131 transforming effect Effects 0.000 claims 1
- 238000013508 migration Methods 0.000 description 6
- 230000005012 migration Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012827 research and development Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000000796 flavoring agent Substances 0.000 description 1
- 235000019634 flavors Nutrition 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- 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
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明涉及一种跨平台配置信息转化方法、系统、设备及存储介质。所述方法包括:备份虚拟机;获取原配置结构;转化过渡配置结构;获取目标配置结构;创建目标虚拟机。所述系统包括:备份虚拟机模块;获取原配置结构模块;转化过渡配置结构模块;获取目标配置结构模块;创建目标虚拟机模块。本发明以过渡配置结构作为中间转化模板,这样能够提高不同种虚拟化平台之间的配置信息转化效率,节约人力成本,且对虚拟化平台的性能几乎无影响。
Description
技术领域
本发明属于计算机技术领域,涉及一种跨平台配置信息转化方法、系统、设备及存储介质。
背景技术
现在虚拟化技术正在广泛的应用中,虚拟机则是虚拟化技术的重要组成部分。出于用户对大量虚拟机跨平台迁移的业务需求,需要实现将不同种类平台的虚拟机配置信息进行相互转化,从而实现不同种类平台间的虚拟机迁移。
目前,开发人员在设计开发跨平台虚拟机迁移产品时,传统的配置信息转化方法是一对一直接转化,即先获取原虚拟化平台A的配置信息,再将该配置信息直接转化为目标虚拟化平台B的配置信息。但是,现在市面上有大量不同种类的虚拟机平台,至少超过40种,这样有多个原虚拟化平台和多个目标虚拟化平台的情况,开发人员需要转化的次数就是原虚拟化平台的种类数乘以目标虚拟化平台的种类数,工作量可谓相当庞大。
因此,在设计开发跨平台虚拟机迁移产品时,如何帮助研发人员快速方便地完成配置信息转化,是当前急需解决的技术问题。
发明内容
本发明为了解决上述背景技术中的技术问题,提供一种跨平台配置信息转化方法、系统、设备及存储介质。
本发明解决上述技术问题的技术方案如下:
第一个方面,提供了一种跨平台配置信息转化方法,所述方法,包括步骤:
备份原虚拟化平台上的待备份虚拟机;
获取已备份虚拟机的配置信息,并将该配置信息转化为原虚拟化平台的原配置结构;
按照过渡配置结构的配置参数结构,将原配置结构转化为过渡配置结构,其中所述过渡配置结构的配置参数结构由虚拟机基本信息、虚拟机计算资源信息、磁盘列表、网卡列表和自定义列表组成;
将过渡配置结构转化为目标虚拟化平台的目标配置结构;
将目标配置结构转化为目标虚拟化平台的虚拟机配置信息,并根据该配置信息创建目标虚拟机。
在其中一个实施例中,所述虚拟机基本信息包括:虚拟机设备名称、虚拟机操作系统类型、虚拟机启动模式、BIOS和处理器架构;所述虚拟机计算资源信息包括:处理器数量和虚拟机内存;所述磁盘列表包括:磁盘名称、磁盘格式、总线类型、磁盘启动盘信息和磁盘大小;所述网卡列表包括:网卡名称、MAC地址、总线类型和IP信息。
在其中一个实施例中,虚拟化平台包括:Vmware虚拟化平台、KVM虚拟化平台、Openstack虚拟化平台、SmartX虚拟化平台、HCI虚拟化平台、XSky虚拟化平台、Hyper-V虚拟化平台、Zstack虚拟化平台、ICS虚拟化平台、Cloudview虚拟化平台、H3C虚拟化平台、Kunpeng虚拟化平台、CNware虚拟化平台、Proxmox虚拟化平台和Xen虚拟化平台。
在其中一个实施例中,所述获取已备份虚拟机的配置信息,并将该配置信息转化为原虚拟化平台的原配置结构步骤,还包括:
读取数据库,获取该虚拟机的配置信息初始字符串A(0);
将配置信息初始字符串A(0)转化为json格式配置信息T(0);
将所述json格式配置信息T(0)转化为原虚拟化平台的原配置结构。
在其中一个实施例中,所述将目标配置结构转化为目标虚拟化平台的虚拟机配置信息,并根据该配置信息创建目标虚拟机步骤,还包括:
将目标配置结构转化为json格式配置信息T(2);
从json格式配置信息T(2)中获取目标虚拟机的配置信息,并根据该配置信息创建目标虚拟机。
第二个方面,提供了一种跨平台配置信息转化系统,包括:
备份虚拟机模块,用于备份原虚拟化平台上的待备份虚拟机;
获取原配置结构模块,用于获取已备份虚拟机的配置信息,并将该配置信息转化为原虚拟化平台的原配置结构;
转化过渡配置结构模块,用于按照过渡配置结构的配置参数结构,将原配置结构转化为过渡配置结构,其中所述过渡配置结构的配置参数结构由虚拟机基本信息、虚拟机计算资源信息、磁盘列表、网卡列表和自定义列表组成;
获取目标配置结构模块,用于将过渡配置结构转化为目标虚拟化平台的目标配置结构;
创建目标虚拟机模块,用于将目标配置结构转化为目标虚拟化平台的虚拟机配置信息,并根据该配置信息创建目标虚拟机。
在其中一个实施例中,所述获取原配置结构模块,包括:
获取配置信息初始字符串A(0)单元,用于读取数据库,获取该虚拟机的配置信息初始字符串A(0);
转化json格式配置信息T(0)单元,用于将配置信息初始字符串A(0)转化为json格式配置信息T(0);
转化原配置结构单元,用于将所述json格式配置信息T(0)转化为原虚拟化平台的原配置结构。
在其中一个实施例中,所述创建目标虚拟机模块,包括:
转化json格式配置信息T(2)单元,用于将目标配置结构转化为json格式配置信息T(2);
创建目标虚拟机单元,用于从json格式配置信息T(2)中获取目标虚拟机的配置信息,并根据该配置信息创建目标虚拟机。
第三个方面,提供了一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,所述处理器执行所述程序时执行上述跨平台配置信息转化方法的步骤。
第四个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述跨平台配置信息转化方法。
本发明的有益效果是:
(1)本发明中,将任意原虚拟化平台的虚拟机配置信息先转化为过渡配置结构,再由过渡配置结构统一转化为目标虚拟化平台的虚拟机配置信息,在处理大量不同种类虚拟化平台间的虚拟机配置信息转化时,转化效率更高,能够有效节约开发人力成本;
(2)本发明虚拟化平台的配置结构是一种内存结构,对配置结构进行修改,几乎不会影响到虚拟化平台的性能,能够实现无感地完成配虚拟机置信息的转化;
(3)本发明过渡配置结构的配置参数结构能够起到类似标准模板的作用,应用场景广泛,几乎可以满足市面上虚拟化平台的跨平台虚拟机迁移需求。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图1为本发明实施例1中跨平台配置信息转化方法的流程示意图。
图2为本发明实施例2中跨平台配置信息转化方法的流程示意图。
图3为本发明实施例2中3种原虚拟化平台与3种目标虚拟化平台之间的转化示意图。
图4为本发明实施例3中跨平台配置信息转化方法的流程示意图。
图5为本发明实施例3中5种原虚拟化平台与5种目标虚拟化平台之间的转化示意图。
图6为本发明实施例4中跨平台配置信息转化系统的结构示意图。
图7为本发明实施例4中获取原配置结构模块的结构示意图。
图8为本发明实施例4中创建目标虚拟机模块的结构示意图。
附图中,各标号所代表的部件列表如下:
4001、备份虚拟机模块;4002、获取原配置结构模块;4003、转化过渡配置结构模块;4004、获取目标配置结构模块;4005、创建目标虚拟机模块;40021、获取配置信息初始字符串A(0)单元;40022、转化json格式配置信息T(0)单元;40023、转化原配置结构单元;40051、转化json格式配置信息T(2)单元;40052、创建目标虚拟机单元。
实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例1
本实施例提供的方法,应用场景如下:
原虚拟化平台为Vmware,操作系统为Linux;
目标虚拟化平台为KVM,操作系统为Linux。
如图1所示,提供一种跨平台配置信息转化方法,该方法包括:
S101.备份原虚拟化平台Vmware上的待备份虚拟机。
S102.读取数据库,获取已备份虚拟机的配置信息初始字符串A(0)。
可以理解的是,虚拟化平台上可能运行一台或多台虚拟机,每台虚拟化的配置信息均是以字符串的形式记录保存在数据库中。
还可以理解的是,由于步骤S101完成了对原虚拟化平台全部内容的备份,因此在步骤S102中,备份系统可以直接读取数据库,获得需要的数据。
S103.将配置信息初始字符串A(0)转化为json格式配置信息T(0)。
值得说明的是,在步骤S103中,也可以将配置信息初始字符串A(0)转化为其他格式的配置信息。本实施例选择转化为json格式,因为其格式比较容易存储和解析转化。
S104.将所述json格式配置信息T(0)转化为原虚拟化平台Vmware的原配置结构。
S105.按照过渡配置结构的配置参数结构,将原配置结构转化为过渡配置结构,其中所述过渡配置结构的配置参数结构由虚拟机基本信息、虚拟机计算资源信息、磁盘列表、网卡列表和自定义列表组成,所述虚拟机基本信息包括:虚拟机设备名称、虚拟机操作系统类型、虚拟机启动模式、BIOS和处理器架构;所述虚拟机计算资源信息包括:处理器数量和虚拟机内存;所述磁盘列表包括:磁盘名称、磁盘格式、总线类型、磁盘启动盘信息和磁盘大小;所述网卡列表包括:网卡名称、MAC地址、总线类型和IP信息。
进一步的,IP信息包括IP地址和IP类型。
可以理解的是,本实施例中的原配置结构、过渡配置结构和目标配置结构,均是内存中的一种自定义结构,三者间的转化过程都是在内存中进行。开发人员可以对配置结构做修改,同时由于是内存中的结构,因此无论Windows系统还是Linux系统均可以使用,满足了广泛的虚拟机需求,通用性较好。
在本实施例中,原配置结构和目标配置结构不依赖于具体的结构;过渡配置结构具有特定的配置参数结构,通过虚拟机基本信息、虚拟机计算资源信息、磁盘列表和网卡列表,可以有效涵盖配置信息转化所需的全部内容,在结构中增加自定义,可以满足各虚拟化平台所存在的不同细节方面的处理需求。
示例地,过渡配置结构配置参数结构如下:
{
"basic_info":{
"machine_name":"xxx",
"machine_uuid":"7cdd1942-f6e1-4bfc-b64c-5b354f75c2e6",
"boot_mode": "bios",
"os_type": "linux",
"cpu_arch": "x86",
},
"flavor":{
"cpu_num": "4",
"memory_value": "2097152",
},
"disk_list": [
{
"bootable": true,
"disk_size": "21474836480",
"disk_name": "vda",
"bus_type": "virtio",
"disk_format": "raw"
}
],
"network_list": [
{
"network_name": "xxx"
"mac_attr_address": "fa:16:3e:a3:d8:0e",
"bus_type": "virtio",
"ip_list":[
{
"ipaddr":"0.0.0.0",
"ipaddr_type":"ipv4"
}
],
}
],
"custom_info":{
}
}。
0041.其中,上述示例里,各字段代表的意思是:
machine_name:代表虚拟机设备名称;
machine_uuid:代表虚拟机设备的唯一标识符;
cpu_num:代表处理器的数量;
memory_value:代表虚拟机内存;
boot_mode:代表虚拟机设备启动模式;
os_type:代表虚拟机操作系统类型;
cpu_arch:代表处理器架构;
disk_list:代表磁盘列表;
bootable:代表磁盘是否为启动盘,true代表是,false代表不是;
disk_size:代表磁盘大小;
disk_name:代表磁盘名称
bus_type:代表总线类型;
disk_format:代表磁盘格式;
network_list:代表网卡列表;
network_name:代表网卡名称;
mac_attr_address:代表MAC地址;
bus_type:代表总线类型;
ip_list:代表IP列表
Ipaddr:代表IP地址;
ipaddr_type:代表IP地址类型。
值得说明的是,如上文提到配置结构可以进行修改,开发人员也可以根据具体虚拟化平台环境的需要,在虚拟机基本信息、虚拟机计算资源信息、磁盘列表和网卡列表等几个大类结构下添加小类结构,以帮助少数目标虚拟化平台获得足够的转化信息,更为灵活。
S106.将过渡配置结构转化为目标虚拟化平台KVM的目标配置结构。
S107.将目标配置结构转化为json格式配置信息T(2)。
S108.从json格式配置信息T(2)中获取目标虚拟机的配置信息,并根据该目标虚拟机的配置信息创建目标虚拟机。
本实施例将任意原虚拟化平台Vmware的虚拟机配置信息先转化为过渡配置结构,再由过渡配置结构统一转化为目标虚拟化平台KVM的虚拟机配置信息,这样通过配置结构,几乎不会影响到虚拟化平台的性能,能够实现无感地完成配虚拟机置信息的转化。
实施例2
本实施例提供的方法,应用场景如下:
第一原虚拟化平台为Vmware,操作系统为Linux;
第二原虚拟化平台为Openstack,操作系统为Linux;
第三原虚拟化平台为HCI,操作系统为Linux;
第一目标虚拟化平台为XSky,操作系统为Linux;
第二目标虚拟化平台为Hyper-V,操作系统为Linux;
第三目标虚拟化平台为Zstack,操作系统为Linux。
结合如图2和图3所示,提供一种跨平台配置信息转化方法,该方法包括:
S201.备份第一原虚拟化平台Vmware、第二原虚拟化平台Openstack和第三原虚拟化平台HCI上的待备份虚拟机;
S202.读取数据库,分别获得第一原虚拟化平台Vmware的配置信息初始字符串A(0-1)、第二原虚拟化平台Openstack的配置信息初始字符串A(0-2)和第三原虚拟化平台HCI的配置信息初始字符串A(0-3)。
S203.将配置信息初始字符串A(0-1)、配置信息初始字符串A(0-2)和配置信息初始字符串A(0-3)分别转化为各自对应的json格式配置信息T(0-1)、json格式配置信息T(0-2)和json格式配置信息T(0-3)。
S204.将json格式配置信息T(0-1)、json格式配置信息T(0-2)和json格式配置信息T(0-3)分别转化为各自对应的原配置结构 M(0-1)、原配置结构 M(0-2)和原配置结构 M(0-3)。
S205.按照过渡配置结构的配置参数结构,将原配置结构 M(0-1)、原配置结构 M(0-2)和原配置结构 M(0-3)均转化为过渡配置结构,其中所述过渡配置结构的配置参数结构由虚拟机基本信息、虚拟机计算资源信息、磁盘列表、网卡列表和自定义列表组成,所述虚拟机基本信息包括:虚拟机设备名称、虚拟机操作系统类型、虚拟机启动模式、BIOS和处理器架构;所述虚拟机计算资源信息包括:处理器数量和虚拟机内存;所述磁盘列表包括:磁盘名称、磁盘格式、总线类型、磁盘启动盘信息和磁盘大小;所述网卡列表包括:网卡名称、MAC地址、总线类型和IP信息。
S206.将过渡配置结构分别转化为第一目标虚拟化平台XSky的目标配置结构 M(2-1)、第二目标虚拟化平台Hyper-V的目标配置结构 M(2-2)和第三目标虚拟化平台Zstack的目标配置结构 M(2-3)。
S207.将目标配置结构 M(2-1)、目标配置结构 M(2-2)、目标配置结构 M(2-3)分别转化为各自对应的json格式配置信息T(2-1)、json格式配置信息T(2-2)和json格式配置信息T(2-3)。
S208.从json格式配置信息T(2-1)中获取第一目标虚拟化平台XSky的配置信息,并根据该配置信息创建XSky的虚拟机;从json格式配置信息T(2-2)中获取第二目标虚拟化平台Hyper-V的配置信息,并根据该配置信息创建Hyper-V的虚拟机;从json格式配置信息T(2-3)中获取第三目标虚拟化平台Zstack的配置信息,并根据该配置信息创建Zstack的虚拟机。
本实施例将多个不同的原虚拟化平台的虚拟机配置信息均先转化为过渡配置结构,再由过渡配置结构统一转化为多个目标虚拟化平台的虚拟机配置信息,使得大量不同种虚拟化平台之间的虚拟机配置信息转化操作不再是传统的一对一进行,能够明显减少转化次数,这样提高了转化效率。
实施例3
本实施例提供的方法,应用场景如下:
第一原虚拟化平台为KVM,操作系统为Windows;
第二原虚拟化平台为H3C,操作系统为Linux;
第三原虚拟化平台为Kunpeng,操作系统为Linux;
第四原虚拟化平台为Cloudview,操作系统为Windows;
第五原虚拟化平台为SmartX,操作系统为Linux;
第一目标虚拟化平台为Xen,操作系统为Windows;
第二目标虚拟化平台为Kunpeng,操作系统为Linux;
第三目标虚拟化平台为CNware,操作系统为Linux;
第四目标虚拟化平台为Proxmox,操作系统为Linux;
第五目标虚拟化平台为ICS,操作系统为Windows。
结合图4和图5所示,提供一种跨平台配置信息转化方法,该方法包括:
S301.分别备份第一原虚拟化平台KVM、第二原虚拟化平台H3C和第三原虚拟化平台Kunpeng、第四原虚拟化平台Cloudview和第五原虚拟化平台SmartX的待备份虚拟机;
S302.读取数据库,分别获得第一原虚拟化平台KVM的配置信息初始字符串A(0-1)、第二原虚拟化平台H3C的配置信息初始字符串A(0-2)、第三原虚拟化平台Kunpeng的配置信息初始字符串A(0-3)、第四原虚拟化平台Cloudview的配置信息初始字符串A(0-4)和第五原虚拟化平台SmartX的配置信息初始字符串A(0-5);
S303.将配置信息初始字符串A(0-1)、配置信息初始字符串A(0-2)、配置信息初始字符串A(0-3)、配置信息初始字符串A(0-4)和配置信息初始字符串A(0-5)分别转化为各自对应的json格式配置信息T(0-1)、json格式配置信息T(0-2)、json格式配置信息T(0-3)、json格式配置信息T(0-4)和json格式配置信息T(0-5)。
S304.将json格式配置信息T(0-1)、json格式配置信息T(0-2)、json格式配置信息T(0-3)、json格式配置信息T(0-4)和json格式配置信息T(0-5)分别转化为各自对应的原配置结构 M(0-1)、原配置结构 M(0-2)和原配置结构 M(0-3)、原配置结构 M(0-4)和原配置结构 M(0-5)。
S305.按照过渡配置结构的配置参数结构,将原配置结构 M(0-1)、原配置结构 M(0-2)、原配置结构 M(0-3)、原配置结构 M(0-4)和原配置结构 M(0-5)均转化为过渡配置结构,其中所述过渡配置结构的配置参数结构由虚拟机基本信息、虚拟机计算资源信息、磁盘列表、网卡列表和自定义列表组成,所述虚拟机基本信息包括:虚拟机设备名称、虚拟机操作系统类型、虚拟机启动模式、BIOS和处理器架构;所述虚拟机计算资源信息包括:处理器数量和虚拟机内存;所述磁盘列表包括:磁盘名称、磁盘格式、总线类型、磁盘启动盘信息和磁盘大小;所述网卡列表包括:网卡名称、MAC地址、总线类型和IP信息。
S306.将过渡配置结构分别转化为第一目标虚拟化平台Xen的目标配置结构 M(2-1)、第二目标虚拟化平台Kunpeng的目标配置结构 M(2-2)、第三目标虚拟化平台CNware的目标配置结构 M(2-3)、第四目标虚拟化平台Proxmox的目标配置结构 M(2-4)和第五目标虚拟化平台ICS的目标配置结构 M(2-5);
S307.将目标配置结构 M(2-1)、目标配置结构 M(2-2)、目标配置结构 M(2-3)、目标配置结构 M(2-4)和目标配置结构 M(2-5)分别转化为各自对应的json格式配置信息T(2-1)、json格式配置信息T(2-2)、json格式配置信息T(2-3)、json格式配置信息T(2-4)和json格式配置信息T(2-5)。
S308.从json格式配置信息T(2-1)中获取第一目标虚拟化平台Xen的配置信息,并根据该配置信息创建Xen的虚拟机;从json格式配置信息T(2-2)中获取第二目标虚拟化平台Kunpeng的配置信息,并根据该配置信息创建Kunpeng的虚拟机;从json格式配置信息T(2-3)中获取第三目标虚拟化平台CNware的配置信息,并根据该配置信息创建CNware的虚拟机;从json格式配置信息T(2-4)中获取第四目标虚拟化平台Proxmox的配置信息,并根据该配置信息创建Proxmox的虚拟机;从json格式配置信息T(2-5)中获取第五目标虚拟化平台ICS的配置信息,并根据该配置信息创建ICS的虚拟机。
在本实施例中,基于配置结构的本身特性和过渡配置结构特定结构的通用性,使得各虚拟化平台和各操作系统都得到兼容,从原25次的转化操作缩减到了10次,方便了研发人员的开发工作,节约了人力成本。
实施例4
如图6所示,提供了一种跨平台配置信息转化系统,该系统包括:
备份虚拟机模块4001,用于备份原虚拟化平台上的待备份虚拟机;
获取原配置结构模块4002,用于获取已备份虚拟机的配置信息,并将该配置信息转化为原虚拟化平台的原配置结构;
转化过渡配置结构模块4003,用于按照过渡配置结构的配置参数结构,将原配置结构转化为过渡配置结构,其中所述过渡配置结构的配置参数结构由虚拟机基本信息、虚拟机计算资源信息、磁盘列表、网卡列表和自定义列表组成;
获取目标配置结构模块4004,用于将过渡配置结构转化为目标虚拟化平台的目标配置结构;
创建目标虚拟机模块4005,用于将目标配置结构转化为目标虚拟化平台的虚拟机配置信息,并根据该配置信息创建目标虚拟机。
其中,如图7所示,所述获取原配置结构模块4002,包括:
获取配置信息初始字符串A(0)单元40021,用于读取数据库,获取该虚拟机的配置信息初始字符串A(0);
转化json格式配置信息T(0)单元40022,用于将配置信息初始字符串A(0)转化为json格式配置信息T(0);
转化原配置结构单元40023,用于将所述json格式配置信息T(0)转化为原虚拟化平台的原配置结构。
其中,如图8所示,所述创建目标虚拟机模块4005,包括:
转化json格式配置信息T(2)单元40051,用于将目标配置结构转化为json格式配置信息T(2);
创建目标虚拟机单元40052,用于从json格式配置信息T(2)中获取目标虚拟机的配置信息,并根据该配置信息创建目标虚拟机。
本实施例过渡配置结构的配置参数结构能够起到类似标准模板的作用,应用场景广泛,几乎可以满足市面上虚拟化平台的跨平台虚拟机迁移需求。
实施例5
在本实施例中,提供一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,所述处理器执行所述程序时执行如实施例1至实施例3任一项所述跨平台配置信息转化方法的步骤。
实施例6
在本实施例中,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如实施例1至实施例3任一项所述跨平台配置信息转化方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++、Ruby、Go,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (5)
1.一种跨平台配置信息转化方法,其特征在于,所述方法,包括步骤:
备份原虚拟化平台上的待备份虚拟机;
获取已备份虚拟机的配置信息,并将该配置信息转化为原虚拟化平台的原配置结构;
按照过渡配置结构的配置参数结构,将原配置结构转化为过渡配置结构,其中所述过渡配置结构的配置参数结构由虚拟机基本信息、虚拟机计算资源信息、磁盘列表、网卡列表和自定义列表组成;其中,所述虚拟机基本信息包括:虚拟机设备名称、虚拟机操作系统类型、虚拟机启动模式、BIOS和处理器架构;所述虚拟机计算资源信息包括:处理器数量和虚拟机内存;所述磁盘列表包括:磁盘名称、磁盘格式、总线类型、磁盘启动盘信息和磁盘大小;所述网卡列表包括:网卡名称、MAC地址、总线类型和IP信息;
将过渡配置结构转化为目标虚拟化平台的目标配置结构;
将目标配置结构转化为目标虚拟化平台的虚拟机配置信息,并根据该配置信息创建目标虚拟机;
其中,所述获取已备份虚拟机的配置信息,并将该配置信息转化为原虚拟化平台的原配置结构步骤,还包括:
读取数据库,获取该虚拟机的配置信息初始字符串A;
将配置信息初始字符串A转化为json格式配置信息T;
将所述json格式配置信息T转化为原虚拟化平台的原配置结构;
所述将目标配置结构转化为目标虚拟化平台的虚拟机配置信息,并根据该配置信息创建目标虚拟机步骤,还包括:
将目标配置结构转化为json格式配置信息T;
从json格式配置信息T中获取目标虚拟机的配置信息,并根据该配置信息创建目标虚拟机。
2.根据权利要求1所述的跨平台配置信息转化方法,其特征在于,虚拟化平台包括:Vmware虚拟化平台、KVM虚拟化平台、Openstack虚拟化平台、SmartX虚拟化平台、HCI虚拟化平台、XSky虚拟化平台、Hyper-V虚拟化平台、Zstack虚拟化平台、ICS虚拟化平台、Cloudview虚拟化平台、H3C虚拟化平台、Kunpeng虚拟化平台、CNware虚拟化平台、Proxmox虚拟化平台和Xen虚拟化平台。
3.一种跨平台配置信息转化系统,其特征在于,包括:
备份虚拟机模块,用于备份原虚拟化平台上的待备份虚拟机;
获取原配置结构模块,用于获取已备份虚拟机的配置信息,并将该配置信息转化为原虚拟化平台的原配置结构;
转化过渡配置结构模块,用于按照过渡配置结构的配置参数结构,将原配置结构转化为过渡配置结构,其中所述过渡配置结构的配置参数结构由虚拟机基本信息、虚拟机计算资源信息、磁盘列表、网卡列表和自定义列表组成;其中,所述虚拟机基本信息包括:虚拟机设备名称、虚拟机操作系统类型、虚拟机启动模式、BIOS和处理器架构;所述虚拟机计算资源信息包括:处理器数量和虚拟机内存;所述磁盘列表包括:磁盘名称、磁盘格式、总线类型、磁盘启动盘信息和磁盘大小;所述网卡列表包括:网卡名称、MAC地址、总线类型和IP信息;
获取目标配置结构模块,用于将过渡配置结构转化为目标虚拟化平台的目标配置结构;
创建目标虚拟机模块,用于将目标配置结构转化为目标虚拟化平台的虚拟机配置信息,并根据该配置信息创建目标虚拟机;
其中,所述获取原配置结构模块,包括:
获取配置信息初始字符串A单元,用于读取数据库,获取该虚拟机的配置信息初始字符串A;
转化json格式配置信息T单元,用于将配置信息初始字符串A转化为json格式配置信息T;
转化原配置结构单元,用于将所述json格式配置信息T转化为原虚拟化平台的原配置结构;
所述创建目标虚拟机模块,包括:
转化json格式配置信息T单元,用于将目标配置结构转化为json格式配置信息T;
创建目标虚拟机单元,用于从json格式配置信息T中获取目标虚拟机的配置信息,并根据该配置信息创建目标虚拟机。
4.一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如权利要求1或2所述跨平台配置信息转化方法的步骤。
5.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1或2所述跨平台配置信息转化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311387837.1A CN117112071B (zh) | 2023-10-25 | 2023-10-25 | 一种跨平台配置信息转化方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311387837.1A CN117112071B (zh) | 2023-10-25 | 2023-10-25 | 一种跨平台配置信息转化方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117112071A CN117112071A (zh) | 2023-11-24 |
CN117112071B true CN117112071B (zh) | 2024-01-02 |
Family
ID=88811470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311387837.1A Active CN117112071B (zh) | 2023-10-25 | 2023-10-25 | 一种跨平台配置信息转化方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117112071B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102834822A (zh) * | 2010-04-12 | 2012-12-19 | 微软公司 | 由虚拟机共享的群集的快速-完整备份 |
CN103699430A (zh) * | 2014-01-06 | 2014-04-02 | 山东大学 | 基于j2ee架构的远程kvm虚拟机管理系统的工作方法 |
CN107463427A (zh) * | 2017-06-29 | 2017-12-12 | 北京北信源软件股份有限公司 | 一种虚拟机操作系统类型与版本的获取方法与装置 |
CN107656797A (zh) * | 2017-09-27 | 2018-02-02 | 郑州云海信息技术有限公司 | 跨虚拟化平台迁移虚拟机的方法和装置 |
CN108206750A (zh) * | 2016-12-16 | 2018-06-26 | 北京国双科技有限公司 | 虚拟机网卡的配置方法及装置 |
CN108363608A (zh) * | 2018-02-06 | 2018-08-03 | 广东睿江云计算股份有限公司 | 一种虚拟机配置方法及其系统 |
CN112328365A (zh) * | 2020-11-05 | 2021-02-05 | 济南浪潮数据技术有限公司 | 一种虚拟机迁移方法、装置、设备及存储介质 |
CN114237814A (zh) * | 2021-11-17 | 2022-03-25 | 上海浦东发展银行股份有限公司 | 跨虚拟化平台的虚拟机迁移方法、装置和计算机设备 |
CN114253666A (zh) * | 2021-11-19 | 2022-03-29 | 苏州浪潮智能科技有限公司 | 一种虚拟机迁移的方法、装置、设备及可读介质 |
CN114296882A (zh) * | 2021-12-31 | 2022-04-08 | 苏州浪潮智能科技有限公司 | 一种虚拟机内存快照的导出方法、装置及介质 |
CN114860393A (zh) * | 2022-03-17 | 2022-08-05 | 新华三大数据技术有限公司 | 跨平台虚拟机迁移方法、装置和设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8544003B1 (en) * | 2008-12-11 | 2013-09-24 | Mcafee, Inc. | System and method for managing virtual machine configurations |
US9043784B2 (en) * | 2012-01-12 | 2015-05-26 | Red Hat, Inc. | Management of inter-dependent configurations of virtual machines in a cloud |
-
2023
- 2023-10-25 CN CN202311387837.1A patent/CN117112071B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102834822A (zh) * | 2010-04-12 | 2012-12-19 | 微软公司 | 由虚拟机共享的群集的快速-完整备份 |
CN103699430A (zh) * | 2014-01-06 | 2014-04-02 | 山东大学 | 基于j2ee架构的远程kvm虚拟机管理系统的工作方法 |
CN108206750A (zh) * | 2016-12-16 | 2018-06-26 | 北京国双科技有限公司 | 虚拟机网卡的配置方法及装置 |
CN107463427A (zh) * | 2017-06-29 | 2017-12-12 | 北京北信源软件股份有限公司 | 一种虚拟机操作系统类型与版本的获取方法与装置 |
CN107656797A (zh) * | 2017-09-27 | 2018-02-02 | 郑州云海信息技术有限公司 | 跨虚拟化平台迁移虚拟机的方法和装置 |
CN108363608A (zh) * | 2018-02-06 | 2018-08-03 | 广东睿江云计算股份有限公司 | 一种虚拟机配置方法及其系统 |
CN112328365A (zh) * | 2020-11-05 | 2021-02-05 | 济南浪潮数据技术有限公司 | 一种虚拟机迁移方法、装置、设备及存储介质 |
CN114237814A (zh) * | 2021-11-17 | 2022-03-25 | 上海浦东发展银行股份有限公司 | 跨虚拟化平台的虚拟机迁移方法、装置和计算机设备 |
CN114253666A (zh) * | 2021-11-19 | 2022-03-29 | 苏州浪潮智能科技有限公司 | 一种虚拟机迁移的方法、装置、设备及可读介质 |
CN114296882A (zh) * | 2021-12-31 | 2022-04-08 | 苏州浪潮智能科技有限公司 | 一种虚拟机内存快照的导出方法、装置及介质 |
CN114860393A (zh) * | 2022-03-17 | 2022-08-05 | 新华三大数据技术有限公司 | 跨平台虚拟机迁移方法、装置和设备 |
Non-Patent Citations (5)
Title |
---|
"Dynamic resource provisioning and secured file sharing using virtualization in cloud azure";Perumal Kumaresan 等;《Journal of Cloud Computing》;第11卷(第1期);第1-3页 * |
"云计算环境下可信虚拟数据中心构建及其关键技术研究";万鑫;《中国博士学位论文全文数据库 (信息科技辑)》;第I138-3页 * |
"基于文件过滤驱动的跨平台网络文件系统CPNFS";周家劲,谢俊峰 等;《现代计算机》;第28卷(第6期);第90-95页 * |
"基于虚拟化技术的计算机实验云平台的设计与实现";王韬;《中国优秀硕士学位论文全文数据库 (社会科学Ⅱ辑)》;第H131-134页 * |
面向OpenStack/Ceph的虚拟机备份系统研究;杨皓森;胡晓勤;黄传波;;计算机系统应用(第11期);第98-104页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117112071A (zh) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9823851B2 (en) | Secure migratable architecture having security features | |
US20190087212A1 (en) | Android simulator and method for implementing android simulator | |
US7134007B2 (en) | Method for sharing firmware across heterogeneous processor architectures | |
US20080263258A1 (en) | Method and System for Migrating Virtual Machines Between Hypervisors | |
US20110246988A1 (en) | Hypervisor for starting a virtual machine | |
US9858098B2 (en) | Hypervisor modification of system tables | |
US20090265708A1 (en) | Information Processing Apparatus and Method of Controlling Information Processing Apparatus | |
US20040107421A1 (en) | Methods and systems for cooperative scheduling of hardware resource elements | |
US7421431B2 (en) | Providing access to system management information | |
US20150193249A1 (en) | Idle processor management in virtualized systems via paravirtualization | |
US11301225B2 (en) | Reducing application startup time by generating bytecode from metadata at build time | |
CN115988218A (zh) | 一种虚拟化视频编解码系统、电子设备和存储介质 | |
US11269606B2 (en) | Firmware publication of multiple binary images | |
CN111625290B (zh) | 一种Android平台下布局文件预加载方法、装置及电子设备 | |
CN117112071B (zh) | 一种跨平台配置信息转化方法、系统、设备及存储介质 | |
US9684529B2 (en) | Firmware and metadata migration across hypervisors based on supported capabilities | |
US11526358B2 (en) | Deterministic execution replay for multicore systems | |
US20150242330A1 (en) | Guest-programmable location of advanced configuration and power interface (acpi) tables in virtualized systems | |
CN107168815A (zh) | 一种收集硬件错误信息的方法 | |
CN115604331A (zh) | 一种数据的处理系统、方法以及装置 | |
CN117112072B (zh) | 一种跨平台虚拟机驱动替换方法、系统及存储介质 | |
CN107636624B (zh) | 没有使用的特殊指令的垃圾收集 | |
US8135943B1 (en) | Method, apparatus, and computer-readable medium for generating a dispatching function | |
US11372653B1 (en) | Runtime access to firmware platform configuration data | |
US7694301B1 (en) | Method and system for supporting input/output for a virtual machine |
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 |