虚拟机迁移指南
虚拟机迁移指南
1. 确保虚拟机是持久化的
虚拟机必须是持久化的才能进行迁移。如果虚拟机是临时的(transient),需要先将其配置为持久化。
将临时虚拟机转换为持久化虚拟机
如果虚拟机是临时的,可以使用以下命令将其转换为持久化:
1 | sudo virsh dumpxml mgtest > /tmp/mgtest.xml |
2. 在线迁移虚拟机
确保虚拟机磁盘缓存设置为 none 或 directsync
编辑虚拟机的 XML 配置文件:
1 | sudo virsh edit mgtest |
在 <disk> 部分中添加或修改 <driver> 部分,将 cache 设置为 none 或 directsync,例如:
1 | <disk type='file' device='disk'> |
保存并退出编辑器。
重启虚拟机
为了使配置生效,需要重启虚拟机:
1 | sudo virsh shutdown mgtest |
进行在线迁移
使用以下命令进行在线迁移:
1 | sudo virsh migrate --live mgtest qemu+ssh://192.168.50.235/system |
3. 离线迁移虚拟机
确保虚拟机是持久化的
如果虚拟机是临时的,可以使用以下命令将其转换为持久化:
1 | sudo virsh dumpxml mgtest > /tmp/mgtest.xml |
关闭虚拟机
1 | sudo virsh shutdown mgtest |
进行离线迁移
执行离线迁移命令:
1 | sudo virsh migrate --offline --persistent mgtest qemu+ssh://192.168.50.235/system |
4. 示例流程
检查虚拟机状态
1 | sudo virsh list --all |
将临时虚拟机转换为持久化(如果需要)
1 | sudo virsh dumpxml mgtest > /tmp/mgtest.xml |
关闭虚拟机
1 | sudo virsh shutdown mgtest |
进行在线迁移
1 | sudo virsh migrate --live mgtest qemu+ssh://192.168.50.235/system |
进行离线迁移
1 | sudo virsh migrate --offline --persistent mgtest qemu+ssh://192.168.50.235/system |
5. NFS 配置步骤
服务器端配置
安装NFS服务器:
1
2sudo apt-get update
sudo apt-get install nfs-kernel-server创建共享目录:
1
2
3sudo mkdir -p /srv/nfs_share
sudo chown nobody:nogroup /srv/nfs_share
sudo chmod 777 /srv/nfs_share配置NFS导出:
编辑
/etc/exports文件,添加共享目录的配置:1
sudo nano /etc/exports
添加以下内容:
1
/srv/nfs_share 192.168.50.0/24(rw,sync,no_subtree_check,no_root_squash)
导出NFS共享目录:
1
sudo exportfs -ra
启动并启用NFS服务:
1
2sudo systemctl restart nfs-kernel-server
sudo systemctl enable nfs-kernel-server
客户端配置
安装NFS客户端:
在两个主机上分别安装NFS客户端:
1
2sudo apt-get update
sudo apt-get install nfs-common创建挂载点目录:
在两个主机上分别创建挂载点目录,例如
/mnt/nfs_share:1
sudo mkdir -p /mnt/nfs_share
挂载NFS共享目录:
在两个主机上分别执行以下命令,将NFS共享目录挂载到本地目录:
1
sudo mount -t nfs -o rw 192.168.50.100:/srv/nfs_share /mnt/nfs_share
配置自动挂载(可选):
为了在系统重启后自动挂载NFS共享目录,可以编辑
/etc/fstab文件:1
sudo nano /etc/fstab
添加以下内容:
1
192.168.50.100:/srv/nfs_share /mnt/nfs_share nfs defaults 0 0
验证配置
验证挂载:
在两个主机上分别执行以下命令,确认NFS共享目录是否成功挂载:
1
df -h
测试读写权限:
在两个主机上分别尝试在挂载的共享目录中创建文件,确保读写权限正常:
1
2sudo touch /mnt/nfs_share/testfile
ls -l /mnt/nfs_share/testfile
通过以上步骤,可以配置和验证NFS共享目录,以便在虚拟机迁移过程中使用。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 FrankTest!
评论
