3 ms·
If anyone wants to learn more about Unikernels, Ian (the author of the blog post for this HN post) was on my podcast back in April. That episode is at: https:/
by nickjj 5y ago
If anyone wants to learn more about Unikernels, Ian (the author of the blog post for this HN post) was on my podcast back in April.
That episode is at: https://runninginproduction.com/podcast/79-nanovms-let-you-run-your-apps-faster-and-safer-with-unikernels https://runninginproduction.com/podcast/79-nanovms-let-you-r...
It covers topics like what a Unikernel is, but also ways it can be practically applied to build web applications. We also talked about how he built a few apps using them. We also talked about a few of his open source projects related to Unikernels and how you can run them on popular cloud hosting providers today.
- bsenftner 5y agoDo you, or other readers, know of other/more companies operating in the Unikernel space? I'm curious about the landscape of opportunities to work in this area. Would it be wrong to think Unikernels and high CPU/GPU multiprocessing requirements might be a good combination?
- eyberg 5y agoNot something we've directly worked on yet but there is a lot of interest and other groups/companies doing ML at the edge utilizing things like GPU PCI passthrough with co-processors attached. That way you could isolate say ffmpeg in one unikernel, your inference app in another, maybe a stats app that shoots rollups to the cloud, etc. I think as costs keep coming down this will get ever more interesting over time. You can for instance already run multiple unikernels on a single rpi4 with ARMv8. The one that ships with v9 will be really nice.
- yjftsjthsd-h 5y agoThat sounds an awful lot like reinventing a multitasking operating system
- eyberg 5y agoAt the end of the day most software is not composed of a single application. To further complicate matters, many applications can't even run on a single server today. Many of the companies that users here work at have applications that span hundreds or thousands of servers. I think part of the argument here is that our software outgrew the one server/one operating system model a very long time ago.
- ignoramous 5y agoHi Ian: > I think part of the argument here is that our software outgrew the one server/one operating system model a very long time ago. That it certainly did. I want to know what's your opinion of WASM and where do you see WASM and its nanoprocess model (capability-based security) fit into all of this [0]? I look up to it as a tech midway between the KVM and unikernels; and firmly believe WASM is poised to get big soon. [0] https://www.infoq.com/news/2019/11/wasm-nanoprocesses-security/ https://www.infoq.com/news/2019/11/wasm-nanoprocesses-securi...
- eyberg 5y agoWASM (and WASI) are interesting and I personally know a lot of people excited about it. We've also ran a few wasm runtimes such as wasmer inside Nanos. Having said that, there are a handful of technical limitations {raw sockets, 32bit, dynamic linking, performance, security, threads, TLS} that exist today that prevent a bunch of applications being deployed there and while most of them can be dealt with technically I think just because of where WASM descends from (the browsers) there are some organizational (read: standardization) issues that will probably prevent a lot of it from being dealt with. It's been a while since I looked at it but to me none of these are hard technical issues - they are just issues that the WASM community will need to decide in which direction they want to go and how married to the browsers do they want to be.
- bsenftner 5y agoLast job we used a former game dev to create a single executable combining an ffmpeg core, an SQLite manager, REST server, a facial recognition engine, and an notifications push server into a single high compute executable. Considering the number of OS services such a Swiss army knife application requires, would such be appropriate for a unikernel, as a single app? Reason being, when combining all those aspects, huge optimizations become available that are simply not possible when the work is spread across even multiple executables.