Provide a way to run a local grid using qemu instead of virtualbox
(heavily edited by @bendon):
The current deployment of a local grid requires Virtualbox which is not possible inside a VM w/o nested virtualization (e.g: in Qubes-OS). Or a container (as mentioned first by @tomprince) - though a local grid will still be difficult to deploy inside a container (e.g.: morph deploys the kernel too!) .
This makes it difficult for developers to run a local grid on their workstation when they need to:
- test a client w/o having to obtain funded vouchers (e.g.: staging)
- test a server deployment w/o breaking a shared environment (e.g.: staging)
Why QEmu:
- NixOS (system-)tests already use QEmu rather than Virtualbox
- QEmu being an emulator in addition to an hypervisor, it can be used inside a VM or even a container,
- In combination with KVM, QEmu is usually faster than Virtualbox,
Proposal:
-
document the change of requirement to use QEmu (via libvirt
) -
support vagrant up --provider=libvirt
to deploy the local grid -
make sure morph
can stillbuild
,push
anddeploy
the local grid as before -
shaving off some unnecessary features to make QEmu boxes lighter - if possible -
provide a basic test to verify the availability of the services deployed from outside the local grid (may be partly covered by privatestorageops#272).
Edited by Benoit Donneaux