基于NFS共享存储实现KVM虚拟机动态迁移

基于NFS共享存储实现KVM虚拟机动态迁移

一:配置环境

二:安装相关的依赖包

三:实现NFS共享存储

四:KVM机配置相同的步骤

五:安装KVM01安装虚拟机

六:实现迁移 

实验初始配置:所有主机关闭防火墙与selinux

[[email protected] ~]# iptables -F

[[email protected] ~]# systemctl stop firewalld

[[email protected] ~]# systemctl disable firewalld

[[email protected] ~]# setenforce 0

[[email protected] ~]# sed -i ‘/SELINUX/ s/enforcing/disabled/g‘ /etc/sysconfig/selinux

基于NFS共享存储实现KVM虚拟主机动态迁移

在KVM中可以将运行中的虚拟机从一个KVM主机迁移到另一个KVM主机中运行,而不需要任何停机时间。如果两个KVM主机都能够访问相同的存储池,那么实时迁移工作就很好了。要使存储池在KVM主机上都可访问,您需要使用NFS或GFS2文件系统(集群文件系统)。在本例中,我使用NFS文件系统来存储VM映像文件。在迁移过程中,VM的“内存”内容将被复制到目标KVM主机,而在某个时间点上,将发生迁移VM。注意,当您在KVM主机上共享文件系统时,将不会在网络上传输VM的磁盘映像,因为两个KVM主机都可以访问相同的存储池。

迁移介绍:迁移是指将在KVM上运行的虚拟机系统转移到其他物理机的KVM上运行

静态迁移:在虚拟机关机的情况迁移

动态迁移:在虚拟机上服务正常运行的情况下迁移,要基于共享存储

动态迁移特点:

不会对最终用户造成明显影响

仅有非常短暂的停机时间

动态迁移拓扑图

实验环境:

KVM01  192.168.200.10

KVM02  192.168.200.11

NFS    192.168.200.12

1、 设置3台服务器主机名、配置 /etc/hosts 保证网络连接

2、 两台主机的KVM连接‘NFS共享存储’

3、 在源主机的KVM中新建虚拟机并安装系统

4、 连接KVM、并进行迁移

动态迁移演示

源主机 KVM01 192.168.200.10

目的主机 KVM02 192.168.200.11

NFS共享存储 192.168.200.12 共享 /kvm-share

KVM01与KVM02主机都需安装KVM软件并调整网络模式, 所有服务器确保关闭iptables与selinux。

VMware 虚拟机中 linux 开机前需要勾选Inter VT-x/EPT 或 AMD/RVI(v)

一:配置环境

[[email protected] ~]#hostname KVM01

[[email protected] ~]#bash

[[email protected] ~]#hostname KVM02

[[email protected] ~]#bash

[[email protected] ~]#hostname NFS

[[email protected] ~]#bash

[[email protected] ~]# cat /proc/cpuinfo | grep vmx                     #查看是否支持虚拟化功能
flags  : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities
flags  : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities

[[email protected] ~]# vim /etc/hosts                    #编辑hosts文件

192.168.200.111 KVM01

192.168.200.112 KVM02

192.168.200.113 NFS

[[email protected] ~]# scp /etc/hosts 192.168.200.11:/etc

[[email protected] ~]# scp /etc/hosts 192.168.200.12:/etc

二:安装相关依赖包

两台KVM都需要安装依赖包

在CentOS7的系统光盘镜像中,已经提供了安装KVM所需软件,通过部署基于光盘镜像的本地yum源,直接使用yum安装所需软件即可。

[[email protected] ~]# yum -y groupinstall "GNOME Desktop"       #安装GNOME桌面环境

[[email protected] ~]# yum -y install qemu-kvm                   #KVM模块

[[email protected] ~]# yum -y install qemu-kvm-tools             #KVM调试工具,可不安装

[[email protected] ~]# yum -y install qemu-img                   #qemu组件,创建磁盘,启动虚拟机

[[email protected] ~]# yum -y install bridge-utils               #网络支持工具

[[email protected] ~]# yum -y install libvirt                    #虚拟机管理工具

[[email protected] ~]# yum -y install virt-manage0r              #图形界面管理虚拟机

[[email protected] ~]# yum -y install qemu-kvm qemu-kvm-tools virt-install qemu-img bridge-utils libvirt virt-manager

检测KVM模块安装是否成功

[[email protected] ~]# lsmod | grep kvm

kvm_intel 174841 0

kvm 578518 1 kvm_intel

irqbypass 13503 1 kvm

注意:使用yum安装完桌面后,将系统默认的运行target修改为graphical.target。重启系统后进入图形界面,若不修改系统的默认运行target,重启时可能会出错。

开启服务,安装完成后还需要开启libvirtd服务

[[email protected] ~]# systemctl start libvirtd

[[email protected] ~]# systemctl enable libvirtd

三:实现NFS存储共享

NFS SERVER:配置共享目录 /kvm-share

[[email protected] ~]# cat /etc/exports

[[email protected] ~]# mkdir /kvm-share

[[email protected] ~]# systemctl start nfs

两台KVM主机上的操作:

查看共享是否成功

[[email protected] ~]# showmount -e 192.168.200.113

Export list for 192.168.200.113:

/kvm-share 192.168.200.112,192.168.200.111

[[email protected] ~]# showmount -e 192.168.200.113

Export list for 192.168.200.113:

/kvm-share 192.168.200.112,192.168.200.111

 四:KVM机配置相同的步骤

点击QEMU/KVM

 用xftp将镜像传到/virtual/IOS下

创建共享存储池

 在kvm-share中创建一个共享存储卷

 五:KVM01安装虚拟机

KVM01:192.168.200.10 在共享存储上创建虚拟机

新建虚拟机

前进

选择自己上传的镜像

内存可以按自己需求调大调小

 选中自己创建的共享存储池

点击管理选中自己创建的存储卷

设置在安装前定义自己的配置

网络如果之前做过BRIDGE配置选桥接

我没有做,所以选择NET模式

设置主机引导,这里需要在将自己的镜像选定一下,因为有时会自动取消选定

 

点击开始安装,后面的跟安装Linux相同,这里不做赘述

六:实现迁移

KVM迁移:打开virt-manager 选择文件 选择Add Connection

源主机连接目标主机

如果遇到下面的错误需要安装openssh-askpass

[[email protected] ~]# yum -y install openssh-askpass

[[email protected] ~]# yum -y install openssh-askpass

输入密码

 连接到会有新的一个QEMU/KVM后面有自己的ip

尝试迁移

有相同的报错做如下操作

[[email protected] ~]# virsh shutdown centos7.0

域 centos7.0 被关闭

[[email protected] ~]# virsh edit centos7.0

<driver name=‘qemu‘ type=‘raw‘ cache=‘none‘/>

[[email protected] ~]# virsh start centos7.0

域 centos7.0 已开始

[[email protected] ~]# virsh list --all

Id 名称 状态

----------------------------------------------------

2 centos7.0 running

 这样就可以迁移成功了

原文地址:https://www.cnblogs.com/CAPF/p/11765501.html

时间: 2024-08-06 11:58:28

基于NFS共享存储实现KVM虚拟机动态迁移的相关文章

Win2012R2 Hyper-V初级教程08 &mdash; 基于非共享存储下的虚拟机实时迁移

今天主要和大家共同学习一下基于非共享存储实时迁移,常规来说我们在做虚拟化的迁移的时候都会采用共享存储的方式进行,因为这样子只需要迁移虚拟机还不需要迁移存储内容,好处在于速度快.安全性高,但是有时候我们可以需要在无共享存储的情况下进行实时迁移,下面我们就来测试一下. 一.实验拓扑图: 二.基本要求: u 源和目标计算机必须加域 或在同一个信任域中. u 迁移的用户必须具有相应的管理员权限Hyper-V管理员组 三.迁移方式与配置 u 一种为本地执行迁移即需要登录到源服务器进行迁移 u 一种为远程管

基于本地存储的kvm虚拟机在线迁移

基于本地存储的kvm虚拟机在线迁移 kvm虚拟机迁移分为4种(1)热迁移基于共享存储(2)热迁移基于本地存储(3)冷迁移基于共享存储(4)冷迁移基于本地存储 这里介绍的是热迁移基于本地存储 动态块迁移版本要求qemu版本要求  大于或等于0.12.1 rpm -qa|grep qemu qemu-kvm-0.12.1.2-2.491.el6_8.1.x86_64 qemu-kvm-tools-0.12.1.2-2.491.el6_8.1.x86_64 目标宿主机:10.11.30.52源宿主机:

KVM虚拟化笔记(十四)------kvm虚拟机动态迁移

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

虚拟机在 OpenStack 里没有共享存储条件下的在线迁移[转]

原文链接:http://www.ibm.com/developerworks/cn/cloud/library/1508_wangyx_openstacklivemigrate/ 迁移(Migration)就是把一个虚拟机从一台物理主机搬到另一台物理主机,动态(Live)就是在迁移过程中虚拟机正常工作不影响用户的使用.对系统管理员来说,动态迁移是个非常有用的工具,当计划对一个物理主机进行更新或者升级(update/upgrade)的时候,管理员不需要关闭这个物理主机上的虚拟机,只是在更新或者升级

烂泥:NFS做存储与KVM集成

本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前有关NFS的文章,我们介绍的都是NFS的使用挂载等等.这篇文章我们介绍有关NFS作为存储使用. 既然本篇文章的主题是有关NFS的,我们还是先把NFS服务器搭建完毕.具体搭建过程可参考<烂泥:NFS存储与VSphere配合使用>,这篇文章. 在此有关NFS配置文件/etc/exports中的几个参数,我们需要先介绍下: ro 该主机对该共享目录有只读权限. rw 该主机对该共享目录有读写权限,需要配合no_root_squash参数使用. ro

NFS共享存储服务

NFS是一种基于TCP/IP传输的网络文件系统协议.通过使用NFS协议,NFS客户机可以像访问本地目录一样访问远程NFS服务器中的共享资源.但是,NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中中使用.NFS服务的实现依赖于RPC机制,RPC充当NFS客户端和NFS服务器的中介,以完成远程到本地的映射过程.下面我将在VMware虚拟机中使用两台Redhat6.5 Linux模拟NFS共享存储服务,一台为Redhat6-2提供服务,一台为Redhat6-4访问测

生产场景NFS共享存储优化及实战

生产场景NFS共享存储优化: 1.硬件:sas/ssd磁盘,买多块,raid0/raid10,网卡好 2.NFS服务器端优化加all_squash,async /backup/NFS 192.168.0.0/24(rw,async,all_squash)用这两个选项效率高了,但是就不可靠了. 3.客户端挂载:rsize,wsize,noatime,nodiratime四个选项为性能优化选项,nosuid,noexec两个选项为安全优化选项 mount -t nfs -o noatime,nodi

搭建nfs共享存储服务之三客户端配置及实战测试故障总结

在客户端操作的: 1. 检查客户端有没有安装nfs-utils和rpcbind软件程序 (这两个必须安装) [[email protected] ~]# rpm -qa nfs-utils rpcbindnfs-utils-1.2.3-75.el6.x86_64rpcbind-0.2.0-13.el6_9.1.x86_64 如果没有安装,需要用yum安装.安装方法参考:搭建nfs共享存储服务之二 [[email protected] ~]# /etc/init.d/rpcbind statusr

kvm虚拟机在线迁移

本次实验环境示意图如下图图1所示: 图意解析: 三台VMware虚拟机Original.Destination和Nfsrv,把Original上的KVM虚拟机在线迁移到 Destination上 注:离线迁移本次实验不做演示,只演示基于NFS共享的在线迁移   一NFS服务端配置 1.设置共享目录 [[email protected] ~]# hostname Nfsrv.wjcyf.com [[email protected] ~]# cat /etc/exports /share 192.1