15

The Raspberry Pi computers have not much CPU power and main memory but they could be the perfect platform for virtualization exercises at university classes.

Now I'm looking for working virtualization solutions.

The XEN project has implemented a solution to run XEN on ARM v7-A and ARM v8-A architectures.

  • The Raspberry Pi 1 cannot be used with XEN because it implements the ARMv6.
  • This thread suggests that the Raspberry Pi 2 also cannot be used with XEN. Other sources say it sould be possible.
  • The Raspberry Pi 3 has an ARM Cortex-A53 processor and according to the XEN project it is supported by XEN. Did anybody test XEN with the Raspberry Pi 3?

Another hypervisor solution that should work on the Raspberry Pi is the type-1-hypervisor Xvisor.

Some tutorials explain using the type-2-hypervisor KVM on the Raspberry Pi 2 but it is obviously not trivial to get KVM running.

Do any further solutions exist to implement virtualization with the Raspberry Pi 2 or 3?

Update 1

Some tutorials exist which explain the installation and usage of Linux Containers (LXC) with the Raspberry Pi. LXC is also a virtualization technique, but not a type-1- or type-2-hypervisor (see here and here). Up to now the best tutorial I found is this one, which is in german language.

Neverland
  • 351
  • 2
  • 4
  • 12
  • I think it's still too early to know exactly. Just dropping my two cents here. – Aloha Apr 17 '16 at 13:49
  • You might find this interesting: https://resin.io/blog/building-arm-containers-on-any-x86-machine-even-dockerhub/ – SiKing Sep 30 '16 at 15:34

5 Answers5

4

Depending on what performance is acceptable, plain QEMU without KVM may be a viable solution. Assuming you need to run x86 system installed in disk.img,

apt-get install qemu-system-x86
qemu-system-i386 -hda disk.img

This is enough to run old stuff (DOS, Windows 95 and their equivalents from the nineteens in other architectures).

Another virtualization solution is Exagear which can run demanding stuff like Skype, but it's commercial software and limited to Linux targets and x86.

Pablo A
  • 107
  • 4
Dmitry Grigoryev
  • 27,928
  • 6
  • 53
  • 144
2

Just adding an answer for people like me: I was looking to run a couple of services on my raspberry pi.

The only two working solutions I found are:

  1. Running the HypriosOS which is a Raspbian with Docker included. link
  2. For full VM capabilities, I tried and tried running LXC and LXD linux containers on Raspbian, Ubuntu Mate and what not, but all tutorials included compiling kernels with non-existent switches. I found a seamless experience with Arch. Install Arch linux on the PI and then run pacman -S lxc
2

It appears that VMware are working on a bare-metal hypervisor (ESXi) for 64-bit Arm processors, as they have showed off on their VMworld US shindig in Las Vegas (August 2018).

It seems that soon we will be able to cluster multiple Raspberry Pi 3 model B+ (arm64), into a normal working virtualization solutions as wee see today with x86.

Reference

2

You can try Minos, v0.2.1 has support Raspberry Pi 3.

https://github.com/minosproject/minos

gogogo
  • 21
  • 1
0

I've been meaning to test this out, but haven't done it myself. I saw this guy's article explaining how to install OpenStack on Rpi. (http://openstack.prov12n.com/openstack-on-raspberry-pi-part-1-why/)

Neo
  • 1