Live data from Hacker News

IncludeOS – A minimal, resource efficient unikernel for cloud services

includeos.org

21–30 of 85 posts

Re: IncludeOS – A minimal, resource efficient unikernel for cloud services

#23
post #8
post #6

Earlier quoted context omitted.

What other unikernel companies did they buy?

Unikernel Systems, which is cool because it is OCaml based. Their stuff is open source too: https://mirage.io

What I would love more than really any other tech improvement would be a “trusted” mirageos hardware/software environment which would remotely attest to its integrity and the degree of hardware protection it gave running programs. Ie a regular dedicated server, a VM, or a HSM attested to by some authority.

Re: IncludeOS – A minimal, resource efficient unikernel for cloud services

#24

Cool! Can this be used with languages other than C++?

Appears to be C++ only based on my reading. Here's a nice list of unikernel projects, some with more portability in mind than others: https://github.com/cetic/unikernels#existing-projects

Looks nice, thank. There is github.com/solo-io/unik as well. Had no time to check it out yet.

Re: IncludeOS – A minimal, resource efficient unikernel for cloud services

#26
post #24

Earlier quoted context omitted.

Appears to be C++ only based on my reading. Here's a nice list of unikernel projects, some with more portability in mind than others: https://github.com/cetic/unikernels#existing-projects

Looks nice, thank. There is github.com/solo-io/unik as well. Had no time to check it out yet.

Unik is pretty nice, but it's basically a wrapper for other unikernels. I use it for microservice deployments every now and then. It does make packaging Java for OSv a lot simpler, however. For a more language-agnostic unikernel that can run on bare hardware, rump/rumprun has been the de facto baseline for me.

Re: IncludeOS – A minimal, resource efficient unikernel for cloud services

#27
I have never really got unikernels, maybe someone could educate me?

- There is the argument of reduced attack surface/typechecked safety. I get that, but I don't see how this is different from compiling custom Linux/NetBSD kernels per VM?

- There is the argument for increased performance. I don't get that at all -- I've done experiments on unikernel system for MirageOS vs IncludeOS vs Kernel on a web and memcache server and the performance results were worse (15%), 0.4% better respectively for MirageOS respectively but for a tonne more effort and really painful debugability.

- There is the argument for isolation but I don't see how it's different because the biggest cause of churn is the hypervisor? My results with Xen 4.x didn't show any difference in isolation performance with both Include and Mirage.

- There is the argument that OSes don't map to existing hardware as well, e.g. in the InfoQ talk in the comments the speaker talks about PCIe VFs for example. All of these VFs map to physical resources, and you end up doing a much worse job when you can't centrally manage these -- that's one of the main reasons SR-IOV hasn't been adopted (including the fact that migration is non-existent). Similarly with CPU hardware threads or NVMe device drivers -- they are abstractions provided for convenience and reducing the burden of porting existing drivers to work in hypervisor environments but surely the same issues that appear with VM contexts (hardware scheduling and isolation) still exist in unikernel environments? I feel I'm missing something in particular about this point as I see it made often and it doesn't make sense to me.

- How do unikernels work in a world of containers? This has always puzzled me as I thought people moved away from VMs due to the heavyweight nature but of course the flip side is the underlying isolation abstractions are more lightweight -- so in essence are unikernels in containers user-level processes or are they replacing the kernel bits too?

Re: IncludeOS – A minimal, resource efficient unikernel for cloud services

#29

OSv is another, compatible with some unix apps http://osv.io

It seemed interesting back then but it's kind of dead since the core developers (Avi Kivity, Nadav Har'El and others) have moved on to another startup called ScyllaDB that is a re-implementation of Apache Cassandra in C++.

Re: IncludeOS – A minimal, resource efficient unikernel for cloud services

#30
This is potentially a big step forward for the cloud, this is also the missing component to push Serverless.

Currently if you want to use containers and Serverless you'll need to spin up 200+MB of linux bistro + tons of dependancies that have nothing to do with what you originally planned, that's to say running a container with a virtual machine on it.

This kernel would allow to replace Unix for a much more lightweight (1MB) and efficient kernel to run programs on it with an hypervisor.

This is promising.

Post reply on HN