详细介绍kvm虚拟机静态和动态迁移(图文介绍)

本文主要介绍了kvm虚拟机静态和动态迁移,具体如下:

一、kvm虚拟机静态迁移

1.静态迁移就是虚拟机在关机状态下,拷贝虚拟机虚拟磁盘文件与配置文件到目标虚拟主机中,实现的迁移。

(1)虚拟主机各自使用本地存储存放虚拟机磁盘文件

本文实现基于本地磁盘存储虚拟机磁盘文件的迁移方式,

(2)虚拟主机之间使用共享存储存放虚拟机磁盘文件

该方式只是在目标虚拟主机上重新定义虚拟机就可以了。

2.静态迁移过程如下
(1)确定虚拟机关闭状态

(2)准备迁移oeltest02虚拟机,查看该虚拟机配置的磁盘文件
(3)导入虚拟机配置文件

[root@node1~]# virsh dumpxml oeltest02 > /root/oeltest02.xml


(4)拷贝配置文件到目标虚拟主机上。
(5)查看虚拟机磁盘文件并拷贝到目标虚拟主机。
拷贝虚拟磁盘文件

3.目标虚拟主机上

上面已经将虚拟机磁盘文件与配置文件都已经复制到目标虚拟主机上了。下面开始配置与启动。

(1)查看目标虚拟主机环境。
查看虚拟机磁盘文件,目录结构与源虚拟主机一致。
(2)定义注册虚拟主机

(3)启动虚拟主机并确认
至此虚拟机静态迁移完成。

二、kvm虚拟机动态迁移

相比KVM虚拟机静态迁移中需要拷贝虚拟机虚拟磁盘文件,kvm虚拟机动态迁移无需拷贝虚拟磁盘文件,但是需要迁移到的虚拟主机之间需要有相同的目录结构虚拟机磁盘文件,本文这部分内容通过nfs来实现,当然也可以采用GFS2集群文件系统来实现,本文的动态迁移是基于共享存储动态迁移。KVM动态迁移目前有两种,一种是基于共享存储的动态迁移,一种是基于基于数据块的动态迁移,需要qemu-kvm-0.12.2以上版本支持,OEL6.3版本是qemu-kvm-0.12.1.2,其它发行版可能有支持。

1.虚拟化平台架构

2.虚拟化环境介绍

(1)KVM虚拟化服务器node1

操作系统版本:OEL6.3x64
KVM虚拟化:自带版本
桥接IP地址1:192.168.159.150
测试虚拟机:oeltest01
虚拟机IP地址:192.168.159.132
虚拟磁盘文件1:/data/test01.qcow2
虚拟磁盘文件2:/data/test01_add01.qcow2
nfs挂载目录:/data

(2)KVM虚拟化服务器node2

操作系统版本:OEL6.3x64
KVM虚拟化:自带版本
桥接IP地址1:192.168.159.160
nfs挂载目录:/data

(3)nfs服务器(nfs配置略)

操作系统版本:OEL5.8x64
桥接IP地址1:192.168.169.180

nfs服务目录:/mnt/vg/nfs/abc

3.kvm虚拟主机配置准备
(1)节点1挂载nfs目录
(2)节点2挂载nfs目录
确保两节点都有相同的虚拟机磁盘文件存储目录。

4.kvm虚拟机迁移

(1)节点1虚拟机状态,oeltest01虚拟机开机状态
(2)节点2虚拟机状态,无虚拟机运行
(3)在主机1上执行迁移命令

[root@node1~]#virsh migrate --live --verbose oeltest01 qemu+ssh://192.168.159.160/system tcp://192.168.159.160
root@192.168.159.160'spassword:
Migration:[100%]


过程有一个暂停与关闭的过程。

(4)客户机一直ping查看迁移,可以看到中间有两个包的中断,基本上没有太大影响。
(5)虚拟主机2上,可以看到虚拟机oeltest01已经启动了。
虽然oeltest01虚拟机已经在节点2上启动了,但是虚拟主机上还没有oeltest01虚拟机的配置文件。所以需要创建配置文件并定义虚拟机。

(6)虚拟主机2上,通过迁移过来的虚拟机内存状态创建虚拟机配置文件,并通过xml配置文件定义虚拟机。
在虚拟主机2上进入虚拟机没有问题。
到此,kvm虚拟机动态迁移成功。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • ubuntu kylin虚拟机中安装KVM

    1.确定物理机CPU是否支持虚拟化 查看方法1:计算机->属性->处理器(Inter(R) Core(TM) i5-2450M),然后去网上查看自己的电脑CPU是否支持虚拟化, 地址http://ark.intel.com/zh-cn/找到自己CPU的信息,虚拟化技术后是否显示为yes,如果是no说明无法使用虚拟化技术. 确定CPU支持虚拟化后,要在BIOS中开启虚拟化,我的CPU是Intel的,BIOS是这样的: 选Security, 再进Virtualization项, 把各项设置成ENA

  • KVM虚拟化技术之virt-manager使用及KVM虚拟化平台网络模型介绍

    一.使用virt-manager创建和管理虚拟机 1.使用VNC Viewer连接进入虚拟化平台主机 2.打开终端输入virt-manager命令启动virt-manager虚拟机管理界面 #virt-manager 3.通过virt-manager安装CentOS 6.6的虚拟机 点击如图所示图标新建虚拟机: 选择PXE引导,我的网络内存在一个系统自动化部署服务器: 选择操作系统类型和版本: 设置内存和CPU个数: 设置硬盘大小,这里采用动态扩展磁盘空间方式: 忽略这个错误,由于是虚拟磁盘,不

  • KVM虚拟机技术学习总结

    最近在学习KVM,进程不算太快,近期整理了一下KVM虚拟机技术学习笔记,现在就分享给大家,也给大家做个参考.有需要的朋友可以来了解一下. KVM虚拟机的管理主要是通过virsh命令对虚拟机进行管理. 1.  查看KVM虚拟机配置文件及运行状态 (1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/ autostart目录是配置kvm虚拟机开机自启动目录. (2) virsh命令帮助 # virsh -help 或直接virsh命令和,再执行子命令.如下所示. [root@n

  • KVM虚拟机的创建、管理与迁移介绍

    虚拟机迁移技术为服务器虚拟化提供了便捷的方法.尽管商业的虚拟软件功能比较强大,但是开源虚拟机如 Linux 内核虚拟机 KVM 和 XEN 发展迅速,迁移技术日趋完善.  一.安装guest虚拟机 1.直接通过virt-manager安装.管理虚拟机(略) 2.通过命令行安装guest虚拟机 qemu-img create -f qcow2 /images/centos6.3-x86_64.img 10G chown qemu:qemu /images/centos6.3-x86_64.img

  • Linux KVM的QCOW2 和 ROW的详解及区别介绍

     QCOW2和ROW 区别 kvm虚拟机中需要选择磁盘镜像的格式,通常的选择有两种,一种是raw镜像格式,一种是qcow2格式. raw格式是原始镜像,会直接当作一个块设备给虚拟机来使用,至于文件里面的空洞,则是由宿主机的文件系统来管理的,Linux下的文件系统可以很好的支持空洞的特性,所以,如果你创建了一个100G的raw格式的文件,ls看的时候,可以看到这个文件是100G的,但是用du 来看,这个文件会很小. qcow2是kvm支持的磁盘镜像格式,我们创建一个100G的qcow2磁盘之后,无

  • KVM虚拟化技术之使用Qemu-kvm创建和管理虚拟机的方法

    一.KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machine的缩写,即基于内核的虚拟机),是一种用于Linux内核中的虚拟化基础设施,可以将Linux内核转化为一个hypervisor.KVM在2007年2月被导入Linux 2.6.20核心中,以可加载核心模块的方式被移植到FreeBSD及illumos上. KVM在具备Intel VT或AMD-V功能的x86平台上运行.它也被移植到S/390,PowerPC与IA-64平台上.在Linux内核3.9版中,加入A

  • centos 6.6 安装 KVM 虚拟机的方法

    KVM是指基于Linux内核的虚拟机(Kernel-base Virtual Machine),增加到Linux内核是Linux发展的一个重要里程碑,这也是第一个整合到Linux主线内核的虚拟化技术.在KVM模型中,每一个虚拟机都是一个由Linux调度程序管理的标准进程,你可以在用户空间启动客户机操作系统,一个普通的Linux进程有两种运行模式:内核和用户,KVM增加了第三种模式:客户模式(有自己的内核和用户模式). 1 KVM虚拟机的管理工具 准确的来说,KVM仅仅是Linux内核的一个模块,

  • kvm中使用console命令记录的方法

    前言 在工作中,我们可能都会接触到 KVM 虚拟机,并且公司的很多应用也都会跑在 KVM 虚拟机上.因此,对 KVM的熟练应用,也是运维必不可少的能力之一.那么在 KVM 的实践过程中,我们肯定会经常去思考如何能够更深入.更标准的实践好 KVM.由此,就引发了很多使用经验(技巧). kvm中使用console命令记录 KVM上有个console功能,但是在使用时候会出现以下错误: 无论什么操作都没法动. 所以需要对虚拟机修改以下内容即可正常操作: 以下所以内容都是在虚拟机中修改的,可以用vnc连

  • kvm安装和删除虚拟机的方法

    什么是 KVM ? KVM 是指基于 Linux 内核的虚拟机(Kernel-based Virtual Machine). 2006 年 10 月,由以色列的Qumranet 组织开发的一种新的"虚拟机"实现方案. 2007 年 2 月发布的 Linux 2.6.20 内核第一次包含了 KVM .增加 KVM 到 Linux 内核是 Linux 发展的一个重要里程碑,这也是第一个整合到 Linux 主线内核的虚拟化技术. KVM 在标准的 Linux 内核中增加了虚拟技术,从而我们可

  • kvm虚拟机的创建与克隆操作方法

    前言 这篇文章给大家介绍了kvm虚拟机的创建与克隆,下面话不多说,来看看详细的操作步骤 一.创建虚拟机: qemu-img create -f qcow2 -o preallocation=metadata /data/kvm_centos/centos6.7_base.qcow2 10G virt-install --name=centos6.7_base --ram 512 --vcpus=1 -f /data/kvm_centos/centos6.7_base.qcow2 --locati

随机推荐