Unikernels built using MirageOS can now run on more hypervisors following the release this week of MirageOS 3.0, a platform for building specialized microservices applications for the cloud.
MirageOS lets you build a type of unikernel. Unikernels are packages that contain everything needed to host and run an application, including the operating system itself. They’re similar to Docker containers in that they package an operating system into a portable environment. But unikernels go further than containers by including the operating system inside the container, too.
Part of what makes unikernels so promising is that they can theoertically boot and run anywhere, without relying on external resources. That makes them ideal for hosting applications that need to be deployed quickly, consume few resources and have a minimal attack surface.
Expanding Unikernels Support
Previously, unikernels created using MirageOS were far from being able to boot anywhere. They supported only environments hosted using the Xen hypervisor.
With the release of MirageOS 3.0, however, the platform now supports the KVM and FreeBSD bhyve hypervisors, too. That’s significant because it brings the unikernels a step closer to realizing their full potential—which is to be entirely environment-agnostic and capable of booting anywhere.
Even with the expanded environment support, the unikernels can still only run in virtual environments, and only in certain ones at that. That’s not as good as being able to run absolutely anywhere, on any type of hypervisor or on bare metal, for example.
(Since MirageOS’s focus is on the cloud, where most infrastructure is virtual, bare-metal deployments are not very important for the project, but bare-metal unikernels could be useful in other contexts, such as IoT development, for example.)
But it’s still progress—and a sign that, as Docker now goes mainstream, exciting new microservices technologies such as unikernels are still emerging.