[HN Gopher] OSv Unikernel - Optimizing Guest OS to Run Stateless... ___________________________________________________________________ OSv Unikernel - Optimizing Guest OS to Run Stateless and Serverless Apps Author : pjmlp Score : 26 points Date : 2021-10-09 18:59 UTC (4 hours ago) (HTM) web link (www.p99conf.io) (TXT) w3m dump (www.p99conf.io) | im_down_w_otp wrote: | I tried and failed to bring unikernels to my former work when I | was at Visa. Specifically, LING. There just wasn't enough of an | ecosystem of support for the technology to place big bets on it | for what we needed to do. | | That said, at my current company we recently open sourced[1] some | work we did a couple years back which is more or less an attempt | at the basic foundations for blending the seL4 microkernel with | fairly normal no_std Rust application development and assembling | them all together to make a purpose built OS/application to | deploy directly to hardware or within a VM. We have some work to | do to keep building it up as a foundation for broader use, but | we're looking into partnering with the seL4 Foundation (now under | the Linux Foundation) to iterate on it further with some of our | other mutual partners. The developer experience is much closer to | that of developing for an RTOS than it is like typical general | purpose computing development. | | I'm of course biased, but I think there's a lot of room to | innovate in the space of use case specific software stacks where | the domain and constraints are well understood and too many | degrees of freedom are actually a hindrance and a liability, not | an advantage. Unikernels or otherwise. | | [1] https://github.com/auxoncorp/ferros | phendrenad2 wrote: | I think it's very much the 80/20 rule. You can get 80% optimal | performance with 20% of the effort (just use Alpine Linux). If | you want the last 20% you need to do the other 80% of the work. | (Replace "performance" with "security" and it's the same | story). Using unikernels isn't easy, especially with modern | software development so focused on higher-level languages. | Memory management is a foreign concept. The hype around Rust | isn't generating low-level-capable engineers fast enough. Plus, | high-level pays better. | gavinray wrote: | On the topic of Unikernels and MicroVM's: | | Does anyone who knows this stuff, know if there is something like | Docker, but lightweight (capable of running thousands of | processes with couple hundred MB memory) and doesn't require | being deployed on bare-metal or an orchestration tool? | | I was looking for the equivalent of IE Knative/OpenFaaS, without | needing Kubernetes or k3d. Users can write functions/handlers in | whatever language, and deploy them on the platform, and the whole | thing is either run as something as convenient as a container or | a single static binary. | | I tried to find something, read up on Firecracker, emailed some | people a lot smarter than me. Nothing fitting this bill seemed to | exist, so I opted to build my own using GraalVM. | | (Which is working, but isn't as flexible about application | packaging as a Dockerfile. It imposes some restrictions on how | things need to be written to deploy on my platform.) | | Just curious if something like this DOES exist and I just didn't | manage to find it. Building something yourself is always the | worst answer, unless you're smarter than everyone in your field. | Or you know something other people don't. | | Which I am not/do not. | eyberg wrote: | Were you able to watch Waldek's talk that this links to? It's | only 20min so not that long but in it he shows doing precisely | this by booting 1800 instances a second. | lykr0n wrote: | PHP & Perl come to mind. You write your program, scp it and | it's dependencies to your www/cgi-bin folder on your server, | and then navigate to the URL. ___________________________________________________________________ (page generated 2021-10-09 23:01 UTC)