Exadra37

Exadra37

I saw today this article about uni-kernels and I would like to ask:

  • If any member of the community have already played with uni-kernels?
  • Is this something where the BEAM can run on top? (sorry if I am asking something dumb here…)

It seems like the DevOps world is consistently refactoring it’s existence yet at the same time smashing into other domains of the business. Recently, security has been one of those domains creating the new discipline of DevSecOps — that is, applying DevOps principles towards security. This has created an opportunity for an obscure infrastructure paradigm to start to take hold.

Unikernels are an emerging infrastructure deployment pattern that is going in every direction very fast. What is a unikernel though? Simply put, unikernels are the equivalent of deploying your application as it’s own operating system. Since developers predominately deploy their applications on top of Linux virtual machines, unikernels are a way to package your application as it’s own virtual machine in lieu of sitting on top of something like Linux. Is it like a container? Well, there are a few definitions but the concept is relatively old.

Showing Posts 1 to 3

hauleth

hauleth

There was LING (earlier known as Erlang On Xen) but it seems dead. Unfortunately unikernel idea was killed by containerisation (in form of Docker), however I still count that one day it will come back as an great idea it is. Right now the nearest we can get to the unikernel in BEAM world is Nerves I believe.

outlog

outlog

yeah, from my limited understanding I would think nerves fits within the unikernel concept..

you can use Nerves to deploy “real” servers Running Nerves on Amazon EC2 it’s not only for Rpi..

rickp

rickp

This is interesting - as I signed up to this forum to find out a little more about using rebar3 build tools from mix. The reason is that we have a plugin for rebar3 that takes an Erlang/OTP release and turns it into a unikernel image ready to run onto of Xen, KVM, AWS etc. I’m curious as to how to support elixir - I can see how to generate an OTP release using distillery, but the next step isn’t clear.

We’re actually using OSv and running the beam ontop of that. There are a couple of gotchas - there’s no fork() in OSv as its a true unikernel, so we use a slightly modified Erlang/OTP release (just to be included in the unikernel image, you use your normal toolchain when compiling). The rebar3_osv plugin includes a bare OSv image which is then spun up and the Erlang/OTP release pushed into it.

The result is a unikernel image which runs under a bunch of hypervisors. On startup it can use cloud-init to modified startup files, then the erlang application is started. There’s no kernel/user space split but almost everything works as you’d expect. The main missing feature is ports (which would require fork()).

There’s a bit more, with a noddy demo here: GitHub - OtoloNetworks/rebar3_osv: Turn an Erlang/OTP application into a Unikernel image · GitHub

If anyone has any suggestions as to how to make this work with mix+distillery, I’m all ears!

— All posts loaded —

Where Next? Top

Trending in Discussions Top

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2977 94592 917
New
cblavier
Hey there, It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New
mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
heathen
Quite interesting article Google brought me. Didn’t find any mentions about it here. What do you think in general? Would you use togethe...
New
mhanberg
Hi everyone! The first release candidate for the Expert language server project is now available! We’ve published a press release detai...
New
budgie
A little off-topic, but I feel like people here have a good head on their shoulders. I used to be quite good at making software. Was luc...
New
axelson
Hi there! :wave: @frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New

Other Trending Topics Top

GenericJam
Edit: 2026 May 15 - This post is archived. Mob is alive!! Main docs: mob v0.7.11 — Documentation A bit of explanation for the slightly c...
New
JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
georgeguimaraes
Just published claude-code-elixir, a plugin marketplace for Claude Code with Elixir support. These are the plugins I’ve been using for my...
New
Dmk
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews