virt-v2v 使用指南

1.定义.

virt-v2v将外部的虚拟化平台上的虚拟机转化到可以运行的KVM平台上。它可以读取在VMware、Xen运行Hyper-V和其他虚拟机管理程序上的Windows和Linux的虚拟机,并将其转换为KVM的libvirt,OpenStack,oVirt管理,红帽虚拟化(RHV)等几种方式。

2.基本转化图

                          ┌────────────┐  ┌─────────▶ -o null
-i disk ────────────┐ │ │ ─┘┌───────▶ -o local
-i ova ──────────┐ └──▶ │ virt-v2v │ ──┘┌───────▶ -o qemu
└────▶ │ conversion │ ───┘┌────────────┐
VMware─▶┌────────────┐ │ server │ ────▶ -o libvirt │─▶ KVM
Xen ───▶│ -i libvirt ──▶ │ │ │ (default) │
... ───▶│ (default) │ │ │ ──┐ └────────────┘
└────────────┘ │ │ ─┐└──────▶ -o glance
-i libvirtxml ─────────▶ │ │ ┐└─────────▶ -o rhv
└────────────┘ └──────────▶ -o vdsm

3.安装

(主机是centos7.2系统)

3.1 KVM 需要有 CPU 的支持(Intel vmx或 AMD svm),在安装 KVM 之前检查一下 CPU 是否提供了虚拟技术的支持:

# egrep'^flags.*(vmx|svm)' /proc/cpuinfo

有显示, 有显示则说明处理器具有VT功能,在主板BIOS中开启CPU的Virtual Technolege(VT,虚化技术)

3.2 安装kvm及其需要的软件包

# yum installkvm kmod-kvm qemu kvm-qemu-img virt-viewer virt-manager libvirt libvirt-pythonpython-virtinst

或# yumgroupinstall KVM

检查kvm模块是否安装,使用以下命令显示两个模块则表示安装完成

# lsmod | grepkvm

3.3 安装irt-v2v

#yum installvirt-v2v

4.基本参数语法

-i libvirt 读取本地libvirt的资源。当然libvirt 可以连接多中虚拟化平台的资源,比如Vmware,Xen,或者其他的。当连接外部的虚拟化平台时使用 -ic 。

-i libvirtxml  读取libvirt 的XML文件。

-i ova 是读取VMware的ova 文件。

-o glance 是输出到 OpenStack Glance.

-o libvirt 可以输出到任意的libvirt 目标,可以连接本地的和远端的kvm虚拟化平台。使用-oc 到远端。

-o local 输出到本地的磁盘镜像和一个配置文件。(一般也不用)

-o qemu 和local比较像,一般也不用。

-o rhv  输出到rhv平台上。

  -o vdsm 只是用来当 virt-v2v 在VDSM的运行控制下(基本不用).

--in-place instructs virt-v2v to customize the guest OS in the input virtual machine, instead of creating a new VM in the target hypervisor.

5.支持的平台和虚拟机类型。

VMware ESXi >=5.0

OVA exported from VMware

OVAs from other hypervisors will not work.

SUSE Xen

Citrix Xen

Citrix Xen has not been recently tested.

Hyper-V(不一定好使)

从本地但是这个images必须支持虚拟化,并且格式是qemu支持的。

物理机器:

使用 virt-p2v

Virtualization management systems (Output)

OpenStack Glance

Red Hat Virtualization (RHV) 4.1 and up

Local libvirt

And hence virsh(1), virt-manager(1), and similar tools.

Local disk

Red Hat Enterprise Linux 3, 4, 5, 6, 7

CentOS 3, 4, 5, 6, 7

Scientific Linux 3, 4, 5, 6, 7

Oracle Linux

Fedora

SLES 10 and up

OpenSUSE 10 and up

Windows XP to Windows 10 

Currently NT 5.2 to NT 6.3 are supported.

虚拟机固件

BIOS or UEFI for all guest types

6.简单操作的实例。

1:从VMware vcenter server 到本地libvirt。

首先需要有一个VMware vcenter server 然后设置好Datacenter。

virt-v2v -ic vpx://vcenter.example.com/Datacenter/esxi vmware_guest

转换后是在本地/var/lib/libvirt/images

2:从VMware vcenter server 到RHV/ovirt.

首先确保Vmware 和 RHV 平台配置运行正常。(关于RHV的有其他章节介绍)

 virt-v2v -ic vpx://vcenter.example.com/Datacenter/esxi vmware_guest \
-o rhv -os rhv.nfs:/export_domain --network rhvm

3:从本地到OpenStack glance。

(现在仅仅支持从kvm本地到openstack)

virt-v2v -i disk disk.img -o glance

4:从本地到本地。(比较简单,实现方式也比较多,注意改名字)

virt-v2v -i disk disk.img -o local -os /var/tmp
virt-v2v -i libvirtxml guest-domain.xml -o local -os /var/tmp
virt-v2v -i disk disk.img -o qemu -os /var/tmp --qemu-boot

virt-v2v 使用指南的更多相关文章

  1. App架构师实践指南五之性能优化二

    App架构师实践指南五之性能优化二 2018年07月30日 13:08:44 nicolelili1 阅读数:214   从UI和CPU方面来说App流畅体验优化,核心为流畅度/卡顿性能优化. 1.基 ...

  2. 教老婆学Linux运维(二)Linux常用命令指南【下】

    目录 tips:紧接上一篇,Linux常用命令指南[上] 2.4 文件解压缩 2.4.1 官宣的linux压缩工具:tar tar的基本命令格式为 tar [参数选项] [文件或目录] 我们前面学的命 ...

  3. JavaScript权威指南 - 函数

    函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...

  4. UE4新手之编程指南

    虚幻引擎4为程序员提供了两套工具集,可共同使用来加速开发的工作流程. 新的游戏类.Slate和Canvas用户接口元素以及编辑器功能可以使用C++语言来编写,并且在使用Visual Studio 或 ...

  5. JavaScript权威指南 - 对象

    JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自 ...

  6. JavaScript权威指南 - 数组

    JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...

  7. const extern static 终极指南

    const extern static 终极指南 不管是从事哪种语言的开发工作,const extern static 这三个关键字的用法和原理都是我们必须明白的.本文将对此做出非常详细的讲解. co ...

  8. Atitit.研发管理软件公司的软资产列表指南

    Atitit.研发管理软件公司的软资产列表指南 1. Isv模型下的软资产1 2. 实现层面implet1 3. 规范spec层1 4. 法则定律等val层的总结2 1. Isv模型下的软资产 Sof ...

  9. HA 高可用软件系统保养指南

    又过了一年 618,六月是公司一年一度的大促月,一般提前一个月各系统就会减少需求和功能的开发,转而更多去关注系统可用性.稳定性和管控性等方面的非功能需求.大促前的准备工作一般叫作「备战」,可以把线上运 ...

  10. 第六代智能英特尔® 酷睿™ 处理器图形 API 开发人员指南

    欢迎查看第六代智能英特尔® 酷睿™ 处理器图形 API 开发人员指南,该处理器可为开发人员和最终用户提供领先的 CPU 和图形性能增强.各种新特性和功能以及显著提高的性能. 本指南旨在帮助软件开发人员 ...

随机推荐

  1. 图解HTTP第六章:HTTP首部

    学习HTTP首部的结构和首部中各字段的用法. HTTP首部字段 使用首部字段是为了给浏览器和server提供报文主体大小.所使用的语言.认证信息等内容. 首部字段相应单个HTTP首部能够有多个值.假设 ...

  2. redmine安装笔记

    切换到redmine安装目录 对所有ip开放启动命令,并且注册为后台运行 nohup ruby bin/rails server webrick -e production -b 0.0.0.0 -p ...

  3. linux ln 命令使用参数详解(ln -s 软链接)(转)

    这是linux中一个非常重要命令,请大家一定要熟悉.它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln -s 源文件 目标文件. 当 我们需要在不同的 ...

  4. HDU-1047-Integer Inquiry(Java大数水题 && 格式恶心)

    Integer Inquiry Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  5. servlet监听器与事件

    前言 在Servlet 2.4/JSP 2.0中,共同拥有八个Listener接口,六个Event类别. 參考:Servlet中的八大Listener 入门 阅读文件夹 Web监听器 监听器的分类 S ...

  6. tony_update yum

    更改方法是这样的 在 /etc/yum.repos.d 下 1  wget http://mirrors.163.com/.help/CentOS6-Base-163.repo 2  #mv  Cen ...

  7. git revert 后悔了 还原修改前的版本 + git 常用命令

    昨天手残 然后在GitHub for windows 上点了revert 然后就给重置了 更手残的是又给同步了 .  但是 GitHub 会保留之前的版本 . 只要删掉本次修改就可. 解决方案:  g ...

  8. Unmapped Spring configuration files found.

    © 版权声明:本文为博主原创文章,转载请注明出处 1.问题描述: 搭建SSH框架后,IDEA弹出如下提示: 2.解决方案: File --> Project Structure --> M ...

  9. .net之GridView、DataList、DetailsView(二)

    GridView自带分页功能,效率不高,适用于小数据量的显示. protected void GridView1_PageIndexChanging(object sender, GridViewPa ...

  10. 使用 cacti 批量监控服务器以及其 PHP 运作环境配置

    http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/ http://www.360doc.com/content/12/0711/22/1465 ...