Absolutely! The only caveat is that since you're not running natively, the virtual machine needs to emulate the target (ppc64le) instruction set. This can be much slower than running native instructions.
The way to do this will depend on which tools you're using to manage your virtual machine instances. For example, virt-manager
allows you to select the architecture type when you're creating a new virtual machine. If you set this to ppc64el, you'll get a ppc64el machine. Other options (like disk and network devices) can be set just like native VMs.
If you're not using any specific VM management tools, the following invocation of qemu will get a ppc64el machine going easily:
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
Depending on your usage, you may want to use the following options too:
-nographic -serial pty
to use a text console instead of an emulated graphics device. qemu will print the console pty on startup - something like /dev/pts/X
. Run screen /dev/pts/X
to access it.
-M powernv -bios skiboot.lid
to use the non-virtualised ppc64el machine model, which is closer to current OpenPOWER hardware. The skiboot.lid
firmware may be included in your distro's install of qemu.
-drive
, -device
and -netdev
to configure virtual disks and networking. These work in the same manner at x86 VMs on qemu.
qemu-ppc64le
contained in theqemu-arch-extra
package. I guess other distros have similar packages – Faydra