P2v, V2v 实践

P2v, V2v 实践P2V(物理机转虚拟机)p2v,就是physicalmachinetovirtualmachine,物理机转换成虚拟机,物理机有硬件和软件资源两部分,虚拟机同样也有硬件和软件资源,只是硬件是虚拟出来的。p2v是把物理机的软件资源(操作系统,数据等)迁移到虚拟机,虚拟机的物理资源(CPU、内存、磁盘等),根据现场情况分配创建。 p2v,一般会通过转换整个物理磁盘,或者某个分区成某种格式的镜像…


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

P2V(物理机转虚拟机)

p2v,就是physical machine to virtual machine,物理机转换成虚拟机,物理机有硬件和

软件资源两部分,虚拟机同样也有硬件和软件资源,只是硬件是虚拟出来的。p2v是把

物理机的软件资源(操作系统,数据等)迁移到虚拟机,虚拟机的物理资源(CPU、内

存、磁盘等),根据现场情况分配创建。

 

p2v,一般会通过转换整个物理磁盘,或者某个分区成某种格式的镜像文件,来完成软

件资源的迁移。不同的虚拟化产品会有不同的p2v转换工具,这里介绍了qemu/kvm虚

拟化环境下p2v。

使用dd转换整个物理磁盘

dd转换磁盘

如图Figure-1所示,用dd命令将整个物理磁盘sda转换成raw格式的镜像文件

system.img,物理磁盘为500G,导出的文件大小约470G,大约花了4个小时。

 P2v, V2v 实践

Figure -1

创建新的虚拟机

创建基于libvirt XML的Qemu/KVM虚拟机,如图Fiure-2所示上面转换的system.img作为系统

启动的磁盘。

 P2v, V2v 实践

                                    Figure-2

启动虚拟机,查看磁盘

虚拟机系统后,使用VNC客户端访问虚拟机,fdisk -l 查看虚拟磁盘分区,如

Figure-3所示,与原来的物理磁盘一致。

 P2v, V2v 实践

                                 Figure-3

使用clonezilla备份整个物理磁盘到文件

Clonezilla是一款克隆备份/还原的工具,由于不仅可以对整个磁盘或者某个分区进行备份,

更在于其能够读取原磁盘分区信息,以及只备份有效的数据,因此其效率相比其他工具有较明显优

势。使用clonezilla进行p2v,其实就是先对物理磁盘进行备份,然后再还原到虚拟机磁盘的过程。

从官方网站http://www.clonezilla.org下载下面的文件

clonezilla-live-20170905-zesty-amd64.iso

clonezilla-live-2.5.2-31-amd64.zip

制作启动盘

准备一U盘,使用分区工具DiskGenius创建一fat32分区,如图Figure-4用tuxboot-0.8.2制作

一个clonezilla启动盘,制作启动盘参考这个链接:

http://www.clonezilla.org/liveusb.php

 P2v, V2v 实践

Figure-4

执行备份

用clonezilla启动盘引导物理机,进入clonezilla程序,按照提示步骤对整个硬盘进行备份,生成备份文件,备份文件根据情况可以存放在移动硬盘、文件服务器,Figure-5 — Figure-19是备份过程中的大致步骤截图,整个过程参考这个链接中的介绍:http://www.clonezilla.org/clonezilla-live-doc.php。整个备份过程大约持续25分钟左右,生成的备份文件夹大小在50M(不压缩)左右,相比dd来说,效率提高了很多。Figure-20是备份完成后目标文件夹下的文件列表。

 P2v, V2v 实践

Figure-5

 P2v, V2v 实践

   Figure-6

        P2v, V2v 实践

                           Figre-7

       P2v, V2v 实践

                         Figure-8

       P2v, V2v 实践

                          Figure-9

   P2v, V2v 实践

                     Figure-10

   P2v, V2v 实践

                              Figure-11

   P2v, V2v 实践

Figure-12

   P2v, V2v 实践

Figure-13

    P2v, V2v 实践

                               Figure-14

   P2v, V2v 实践

                         Figure-15

  P2v, V2v 实践

                        Figure-16

  P2v, V2v 实践

                     Figure-17

      P2v, V2v 实践

                       Figure-18

    P2v, V2v 实践

                       Figure-19

    P2v, V2v 实践

                   Figure-20

1) 使用clonezilla还原备份文件到虚拟机磁盘

l 创建一基于libvirt XML的Qemu/KVM虚拟机,如图Figure-21和Figure-22所示,该虚拟机从clonezilla虚拟的光驱启动,用于备份的物理磁盘是500G,虚拟机的虚机磁盘应该大于物理磁盘大小。

 P2v, V2v 实践

                     Figure-21

   P2v, V2v 实践

                     Figure-22

l 启动虚拟机机,进入clonezilla程序,进行还原操作

还原过程是与备份相反的一个过程,从备份文件还原到磁盘上,与备份过程有很多

项相似,这里就不一一列出了,整个过程参考这个链接上的介绍:

http://www.clonezilla.org/clonezilla-live-doc.php。

 

在虚拟机环境是用网络ssh方式访问物理机,来读取存放在移动硬盘上的备份文件

的。(用usb直通的方式,让虚拟机直接可以访问移动硬盘,测试下来发现clonezilla

不能正常访问该移动硬盘)

v2v

v2v,就是不同虚拟化环境的虚拟机之间互相迁移、转换。这里介绍了用qemu-img手动静态转

换VirtualBox虚拟机镜像、以及Vmware虚拟机镜像为raw或者qcow2格式的镜像,然后以该镜

像为系统盘创建Qemu/KVM虚拟机。

安装虚拟化套件

在Centos7.2系统上,安装oracle virtualbox、vmware workstation以及Qemu/KVM

这三种虚拟化环境,以及libvirt管理套件

Virtualbox VM–>Qemu VM

Orcale vm virtualbox管理器创建一台虚拟机,并安装GuestOS(centos);用qemu-img转

换vdi格式的镜像为qcow2格式的镜像,创建一台基于libvirt XML定义的 Qemu/KVM虚拟

机(可能无法加载virtio驱动,虚拟磁盘建议采用ide总线),其系统盘镜像就是由vdi

格式转换而成raw格式的镜像文件,通过virsh可以正常启动该虚拟机(参考Figure-23,

Figure-24)

Vmware VM–>Qemu VM

Vmware workstation管理其创建一台虚拟机,并安装GuestOS(centos);用qemu-img转换

vmdk格式的镜像为raw格式的镜像,创建一台基于libvirt XML定义的Qemu/KVM虚拟机(可

能无法加载virtio驱动,虚拟磁盘建议采用ide总线),其系统盘镜像就是由vmdk格式转

换而成raw格式的镜像文件,通过virsh可以正常启动该虚拟机(参考Figure-25,Figure-26)

   P2v, V2v 实践

                         Figure-23

   P2v, V2v 实践

                           Figure-24   

P2v, V2v 实践

                      Figure-25

  P2v, V2v 实践

                    Figure-26

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158849.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 两个正序数组 找中位数_两个有序数组的中位数

    两个正序数组 找中位数_两个有序数组的中位数原题连接给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。示例 1:输入:nums1 = [1,3], nums2 = [2]输出:2.00000解释:合并数组 = [1,2,3] ,中位数 2示例 2:输入:nums1 = [1,2], nums2 = [3,4]输出:2.50000解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5示例 3:输入:nums1 = [0,

    2022年8月8日
  • vue.js 三种方式安装(vue-cli)

    vue.js 三种方式安装(vue-cli)Vue.js(读音/vjuː/,类似于view)是一个构建数据驱动的web界面的渐进式框架。Vue.js的目标是通过尽可能简单的API实现响应的数据绑定和组合的视图组件。它不仅易于上手,还便于与第三方库或既有项目整合。下面介绍三种Vue.js的安装方法:1.独立版本我们可以在Vue.js的官网上直接下载vue…

    2022年6月14日
  • pycharm+anaconda安装教程_anaconda配置pycharm

    pycharm+anaconda安装教程_anaconda配置pycharm对了宝贝儿们,卑微小李的公众号【野指针小李】已开通,期待与你一起探讨学术哟~摸摸大!目录1WhyAnaconda?2Anaconda安装流程2.1卸载python2.2下载anaconda2.2安装anaconda1WhyAnaconda?Anaconda最大的优势我认为在于可以做环境管理,可以通过创建不同的环境,安装不同的包。简单来说,就比如我们在github上下载了一个代码,是用python2.6写的,但是我们的python是3.7的版本。如果我们没有用anaconda,那么我们

    2022年8月27日
  • 玩玩webgame开发(2):人物移动与战争迷雾实现

    玩玩webgame开发(2):人物移动与战争迷雾实现惯例,先上下效果图片:[img]/upload/attachment/47613/3b8e0d31-b9cc-3272-abbb-0941300a68ef.png[/img]在上一篇玩玩webgame开发(1)大概给出了jquery方式的地图实现,最近又做了一些改进,加进了更多元素。代码全部改成jquery插件的方式。有机会做专门的介绍。这次的主题主要是地图上面人物的移动以及战…

    2022年5月25日
  • Redis的各种用途以及使用场景

    Redis的各种用途以及使用场景Redis的各种用途以及使用场景

    2022年4月22日
  • c语言爱心代码详解_C语言程序源代码

    c语言爱心代码详解_C语言程序源代码1、love图案的C语言爱心代码C语言爱心代码如下:#include<stdio.h>intmain(){inti,j,k,n=0,x=0,y=50;//爱心的头部没有规律,所以直接打印printf(“\n\n\n\n\n”);printf(“lovelovelovelove\n”);printf(“lovelovelove

    2022年10月13日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号