迁移

218次阅读
没有评论

共计 2626 个字符,预计需要花费 7 分钟才能阅读完成。

初始化 ubuntu1804 环境配置

在 vmware 创建两台虚拟机

迁移

配置尽量与我保持一致,特别是标红的地方,机房硬盘 只有 20GB,可能会遇到空间不足的情况建议扩容。

环境确认没问题之后,开机,ctrl+alt+ t 调出命令行粘贴以下命令。

# 更新软件源和软件包
sudo apt update && sudo apt upgrade -y
# 安装 KVM 虚拟化组件
# 核心组件:qemu-kvm(虚拟化)、libvirt(管理)、virtinst(创建工具)
# 网络支持:bridge-utils(网络桥接)
# 固件支持:ovmf(UEFI 启动)
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients virtinst bridge-utils ovmf
# 安装 virt-manager
sudo apt install virt-manager -y
# 安装用于 SSH 认证的图形化密码提示工具
sudo apt install ssh-askpass-fullscreen
# 重启虚拟机
reboot

使用 VMware 创建另一台 配置相同 的虚拟机,但 用户名不同

最终 使用两台虚拟机 测试迁移

迁移

KVM 创建虚拟机

此时创建的这台虚拟机就是需要迁移的虚拟机

ssh 上传系统镜像到 ubuntu1804

迁移
迁移
迁移
迁移
迁移
迁移

点击打开后,点击前进

迁移

后面两步不用修改,点击前进,点击完成

选择中文

迁移

后续按以前学习的正常安装 ubuntu 就行

配置 SSH 免密登录

在客户端 (192.168.84.148, 用户 u) 上操作:

# 生成 SSH 密钥对
ssh-keygen -t rsa -b 4096 -C "u@148"  # 直接回车使用默认路径

# 将公钥复制到服务器端
ssh-copy-id ubuntu@192.168.84.150

测试免密登录:ssh ubuntu@192.168.84.150  
# 应该可以直接登录,不需要密码

配置 NFS 共享存储

在 ubuntu 主机 (192.168.84.146) 上配置 NFS 客户端(ip 都需要改为你自己的)

# 1. 安装 NFS 服务器软件包
sudo apt install nfs-kernel-server
# 2. 创建专门的共享目录
sudo mkdir -p /nfs_share/libvirt_images
# 3. 将目录所有权设置为 libvirt 用户
sudo chown libvirt-qemu:libvirt /nfs_share/libvirt_images
sudo chmod 755 /nfs_share/libvirt_images

# 4. 编辑 NFS 导出配置文件
sudo nano /etc/exports
#在文件末尾添加以下内容(ip 需要改为自己的)
/nfs_share/libvirt_images 192.168.84.143(rw,sync,no_subtree_check,no_root_squash)

# 5. 导出共享目录
# 导出共享目录
sudo exportfs -a
# 重启 NFS 服务
sudo systemctl restart nfs-kernel-server
# 设置开机自启
sudo systemctl enable nfs-kernel-server

# 6. 验证 NFS 服务器配置
# 检查导出的共享
sudo exportfs -v
# 查看 NFS 服务状态
sudo systemctl status nfs-kernel-server

在 ljg 主机 (192.168.84.143) 上配置 NFS 客户端(ip 都需要改为你自己的)

# 1. 安装 NFS 客户端软件包
sudo apt install nfs-common
# 2. 创建本地挂载点
sudo mkdir -p /mnt/libvirt_shared

# 3. 测试 NFS 连接
# 查看 ubuntu 主机共享的目录
showmount -e 192.168.84.146
# 应该显示:/nfs_share/libvirt_images 192.168.84.143

# 4. 手动挂载 NFS 共享
sudo mount -t nfs 192.168.84.146:/nfs_share/libvirt_images /mnt/libvirt_shared
# 5. 设置开机自动挂载
# 编辑 fstab 文件
sudo nano /etc/fstab
# 在文件末尾添加:192.168.84.146:/nfs_share/libvirt_images /mnt/libvirt_shared nfs rw,hard,intr,timeo=300,retrans=3 0 0

# 6. 验证挂载
# 检查是否挂载成功
df -h | grep nfs
# 测试写入权限
sudo touch /mnt/libvirt_shared/test_file
sudo rm /mnt/libvirt_shared/test_file

迁移虚拟机磁盘到共享存储

# 1. 在 ubuntu 主机上移动磁盘文件
# 停止虚拟机
virsh shutdown ubuntu18.04
# 等待虚拟机完全关闭
virsh list --all
# 移动磁盘文件到共享目录
sudo mv /var/lib/libvirt/images/ubuntu18.04.qcow2 /nfs_share/libvirt_images/
# 设置正确的权限
sudo chown libvirt-qemu:libvirt /nfs_share/libvirt_images/ubuntu18.04.qcow2

# 2. 修改虚拟机配置指向共享存储
# 编辑虚拟机配置
virsh edit ubuntu18.04
# 输入 1 回车
<disk type='file' device='disk'>
  <driver name='qemu' type='qcow2'/>
  <source file='/nfs_share/libvirt_images/ubuntu18.04.qcow2'/>
  <target dev='vda' bus='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
</disk>
迁移
# 3. 启动虚拟机验证
virsh start ubuntu18.04
virsh list --all

在 ljg 主机上验证共享存储

# 查看共享存储中的文件
ls -la /mnt/libvirt_shared/
# 应该能看到 ubuntu18.04.qcow2 文件

迁移虚拟机

现在两台主机都能访问同一个磁盘文件,可以执行实时迁移

迁移
迁移

点击连接后,输入目标主机密码

迁移

开机后,点击迁移

成功完成来回迁移

迁移
迁移
迁移

正文完
 1
xiaofeng
版权声明:本站原创文章,由 xiaofeng 于2025-11-27发表,共计2626字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)