如何从外部驱动器在 Diskstation DS218 上运行虚拟机

如何从外部驱动器在 Diskstation DS218 上运行虚拟机

Synology 的虚拟机管理器包(版本 2.3.1-8926)不允许我从 USB 驱动器运行 VM。

我想从外部磁盘加载虚拟机映像,以便 SHR BTRFS 驱动器不会忙于处理该映像。

如何使用此 NAS 的外部磁盘来加载虚拟磁盘?

答案1

我想从 USB 棒/msata sdd 加载虚拟机,因为我认为这可以为 NAS 提供性能提升,因为硬盘不忙。简而言之,我的 USB 3 MSATA 驱动器的性能很快,足以进行轻度网页浏览。

以下是我关于如何在 DS218+ 上执行此操作(从 USB 驱动器启动虚拟机)的发现,以及关于虚拟机性能的一些其他想法。

首先,我创建了一个带有virtio网络接口的Windows 7 VM(您可以在VM虚拟机管理器中选择它)。 Synology 论坛上提到 Windows 7 的性能比 Win 10 更好,所以我尝试了这个版本。

在虚拟机网络设置中,您需要单击齿轮并选择 virtio 网络适配器。这很重要,因为稍后您将没有网络连接。安装机器后,您需要从此处下载 virtio 驱动程序virtio网络驱动程序并安装图像。您还需要在客户机上打开设备管理器并更新以太网驱动程序(驱动程序位于 NetKVM 文件夹中)。

当您完成上述步骤并且确定您使用 Redhat virtio 网络接口并且确实可以访问互联网时,可以关闭计算机。

您现在需要启动 SSH 会话并使用 root 身份 sudo -i

以root身份进入

cd /volume1/\@iSCSI/LUN/VDISK_BLUN/.

在这里您可以使用以下命令检查子目录

ls -allhd  */*

对于您的所有虚拟机以及您想要复制到 USB 记忆棒的映像。将映像从子目录复制cp到 USB 记忆棒的根驱动器 /volumeUSB1/usbshare/。如果 NAS 中未检测到您的 USB 驱动器,您可以进入控制面板 -> 外部设备将驱动器格式化为 EXT4。在格式化该棒之前,您应该保留数据备份。

复制虚拟磁盘映像后,您需要使用以下命令配置网络以路由虚拟机的 IP 流量:

ip tuntap add name tap0 mode tap;ifconfig tap0 up;ovs-vsctl add-port ovs_eth0 tap0

现在启动 qemu:

/usr/local/bin/qemu-system-x86_64 -drive \
format=raw,file=/volumeUSB1/usbshare/vdisk.f6584cf5-6567-49c7-af33-d7f055c62bb4.a5bf8508-d623-4620-ad79-6c83cf143204.2.0_00000 \
-m 3000 -vnc :0 -mem-prealloc -mem-path /dev/virtualization/win7 -machine pc-i440fx-2.2,accel=kvm,usb=off  \
-netdev tap,ifname=tap0,script=no,id=hostnet0 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=02:11:32:25:64:a7,bus=pci.0,addr=0x3 \
-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x4 -cpu host -smp 10

在上面的代码中,您需要将虚拟磁盘文件名更改为您的映像。如果您愿意,mem-path 也可以更新为 /tmp/W7。将 -m 参数调整为您的内存(我配置为 3000mb)。当 qemu 运行时,您可以使用第二个连接进行 ssh 登录,并通过 top 检查 qemu 是否正在运行,如果正在运行,则使用了多少内存和 CPU。

最后,使用VNC查看器连接diskstation的IP端口5900,即可获取Windows桌面环境。我还建议设置远程桌面而不是使用 VNC 客户端。

如果您想再次使用 VMM,可以使用以下命令从桥中删除 tap0 设备:

ovs-vsctl del-port ovs_eth0 tap0

总体而言,我对 USB 记忆棒的性能感到满意。 U 盘版本对于偶尔浏览绝对足够了。此外,我还使用 USB 3 外壳中的 evo msata 驱动器进行了测试。我的印象是 EVO 磁盘的性能要好一些。

答案2

我已经在 USB/SSD 上运行虚拟机一年多了。这是技巧:

http://www.casler.org/wordpress/?p=246

目前正在运行带有 USB 适配器的关键 128GB。刚刚得到一个 NVME 和新的机箱要升级。

所有这些都作为“卷”在 btrfs 上的 USB/SSD 上运行

在此输入图像描述

相关内容