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. 性能测试之Tomcat优化

    1.Tomcat最大连接数等配置   Tomcat的server.xml中Context元素的以下参数都是什么意思? <Connector port="8080"maxThr ...

  2. SQL语句练习手册--第一篇

    表架构 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师 ...

  3. linux 命令笔记: iptables

    配置虚拟机网卡 NAT 联网: iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -j MASQUERADE iptables -A FROWARD - ...

  4. PIVOT 和 UPIVOT 的使用(行转列)

    PIVOT 通过将表达式某一列中的唯一值转换为输出中的多个列来旋转表值表达式,并在必要时对最终输出中所需的任何其余列值执行聚合.UNPIVOT 与 PIVOT 执行相反的操作,将表值表达式的列转换为列 ...

  5. C#代码用法

    1.new的用法using System;using System.Collections.Generic;using System.Text;namespace yanz{public class ...

  6. Codeforces Round #275 (Div. 2) C

    题目传送门:http://codeforces.com/contest/483/problem/C 题意分析:题目意思没啥好说的. 去搞排列列举必须TLE.那么就想到构造. 1.n.2.n-1.3.n ...

  7. 快速搭建一个成熟,强壮的App框架【转载】

    App框架搭建 招聘信息: iOS 研发工程师 iOS开发工程师 iOS开发实习工程师 新浪微博-Android开发工程师&iOS开发工程师 美术设计师(2D) UI设计师 cocos2dx手 ...

  8. Cassandra安装和初次使用

    Cassandra安装和初次使用 卡珊德拉(Cassandra)又译卡桑德拉.卡珊卓,为希腊.罗马神话中特洛伊(Troy)的公主,阿波罗(Apollo)的祭司.因神蛇以舌为她洗耳或阿波罗的赐予而有预言 ...

  9. IOS下移除按钮默认美化样式

    今天在做项目中发现 ios会自己美化按钮的样式  美化的一般都是加一个圆角 也就是常说的border-radius 属性    今天在弄一个input标签的时候加了一个border-bottom属性  ...

  10. Nginx (简体中文)

    博文地址:https://wiki.archlinux.org/index.php/Nginx_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)#.E5.AE.89.E8. ...