静态迁移
虚拟机静态迁移是指虚拟机关机状态下,将虚拟机磁盘镜像文件和配置文件复制到另一台宿主机上,整个迁移过程系统处于关闭状态。
动态迁移
虚拟机热迁移是指在不中断业务的情况下,将虚拟机从一台物理服务器移动至另一台物理服务器。虚拟机管理器提供内存数据快速复制和共享存储技术,确保虚拟机迁移前后数据不变。
虚拟机静态迁移
1,关闭虚拟机
virsh destroy openeuler-node01
2,查看虚拟机的磁盘文件
virsh domblklist openeuler22.03_clone2
Target Source
---------------------------------------------
vda /data/openeuler22.03_clone2.qcow2
3,将虚拟机磁盘文件拷贝到目标宿主机
scp /data/openeuler22.03_clone2.qcow2 root@192.168.100.73:/data/openeuler22.03_clone2.qcow2
4,导出虚拟机配置信息
virsh dumpxml openeuler22.03_clone2 > openeuler22.03_clone2.xml
5,将虚拟机配置文件拷贝到目标宿主机
scp openeuler22.03_clone2.xml root@192.168.100.73:/data/openeuler22.03_clone2.xml
6,注册虚拟机
virsh define /data/openeuler22.03_clone2.xml
7,启动虚拟机
virsh start openeuler22.03_clone2
虚拟机动态迁移
nfs-server 部署
安装 nfs
dnf install nfs-utils rpcbind -y
查看 nfs 版本
rpm -qa | grep nfs-utils
开启 nfs 服务
systemctl start nfs-server
查看 nfs 支持的版本信息
cat /proc/fs/nfsd/versions
启动 nfs 服务
按顺序启动rpcbind和nfs服务
systemctl start rpcbind && systemctl enable rpcbind
systemctl start nfs-server && systemctl enable nfs-server
nfs服务启动查看端口是否生效
rpcinfo -p
nfs 共享目录
/etc/exports 是nfs默认的配置文件
vim /etc/exports
/var/lib/libvirt/images/ 192.168.100.0/255.255.255.0(rw,sync,no_root_squash)
查看nfs共享的目录
exportfs -rv
exportfs 参数
Firewalld
firewall-cmd --add-service=nfs --permanent
firewall-cmd --add-service=rpc-bind –permanent
firewall-cmd --add-service=mountd --permanent
firewall-cmd --reload
或
firewall-cmd --add-service={nfs,mountd,rpc-bind} --permanent
NFS 挂载
showmount命令测试NFS服务器的输出目录状态
showmount -e 192.168.100.91
showmount [选项] NFS服务器名称或地址
mount 挂载
创建nfs挂载目录
mkdir /data
mount命令格式
mount 服务器名或IP地址:输出目录 本地挂载目录
mount -t nfs -o vers=3,nolock,proto=tcp 192.168.100.234:/var/lib/libvirt/images /data
umount 卸载
umount /data
fstab 文件
vim /etc/fstab
192.168.100.234:/var/lib/libvirt/images /data nfs vers=3,nolock,proto=tcp 0 0
虚拟机动态迁移
virsh migrate --live openeuler-node01 --unsafe --verbose qemu+ssh://192.168.100.73/system
参数说明
虚拟机验证
virsh list --all
libvirt远程管理虚拟机
libvirt支持使用ssh,tcp,tls协议进行远程管理,例如:virsh -c qemu:///system 连接到远程机器,连接到远程机器使用远程主机的用户和主机名进行身份验证。
本机virsh 交互
virsh -c qemu:///system list
virsh -c qemu:///session
查看虚拟机列表
virsh -c qemu+ssh://root@127.0.0.1/system list
登录虚拟机
virsh -c qemu+ssh://root@127.0.0.1/system console openeuler22.03_clone2