是否可以在x86_64架构的主机上运行ppc64le架构的VM?

vat*_*Lal 5 kvm powerpc virtual-machine

我想测试一些需要在“ppc64le”架构上运行的用例,但我没有具有 ppc64le 架构的主机。

我的主机系统是x86_64架构。是否可以在具有 x86_64 架构的主机上运行具有“ppc64le”架构的虚拟机?

Jer*_*err 5

绝对地!唯一需要注意的是,由于您不是在本机运行,因此虚拟机需要模拟目标 (ppc64le) 指令集。这可能比运行本机指令慢得多。

执行此操作的方法取决于您使用哪些工具来管理虚拟机实例。例如,virt-manager允许您在创建新虚拟机时选择体系结构类型。如果您将其设置为 ppc64el,您将获得一台 ppc64el 机器。其他选项(如磁盘和网络设备)可以像本机虚拟机一样设置。

如果您没有使用任何特定的虚拟机管理工具,则以下 qemu 调用将使 ppc64el 机器轻松运行:

qemu-system-ppc64le \
    -M pseries                            # use the pseries machine model \
    -m 4G                                 # with 4G of RAM \
    -hda ubuntu-18.04-server-ppc64el.iso  # Ubuntu installer as a virtual disk
Run Code Online (Sandbox Code Playgroud)

根据您的使用情况,您可能还需要使用以下选项:

  • -nographic -serial pty使用文本控制台而不是模拟图形设备。qemu 将在启动时打印控制台 pty - 类似/dev/pts/X. 运行screen /dev/pts/X以访问它。

  • -M powernv -bios skiboot.lid使用非虚拟化 ppc64el 机器模型,该模型更接近当前的 OpenPOWER 硬件。该skiboot.lid固件可能包含在您的发行版的 qemu 安装中。

  • -drive-device-netdev配置虚拟磁盘和网络。它们在 qemu 上的 x86 VM 上以相同的方式工作。