6 ms·
Anyone's using this in production? Or any other unikernels? tl;dr: a unikernel means there's no standard OS other than the runtime execution environment speci
by cnst 6y ago
Anyone's using this in production? Or any other unikernels?
tl;dr: a unikernel means there's no standard OS other than the runtime execution environment specifically just for Golang in this instance; which means it should be much faster and much more lean (at the price of not having standard tools like SSH and all)
- bokohut 6y agoNot yet but planning and executing towards it. To add to others points and your own which may not be as obvious to some but my background stems from the financial world and security has always been a problem, breach du jour. The way things are done now are nothing short of broken, PCI and more, and all the glue holding the shattered "window" panes together certainly doesn't lead to anything secure or even a "window" you can see through. I'm certain there are millions that will disagree, job security of course, but when one has maintained critical uptime services on M$ as long as I have one begins to question there must be a better way. Solve your own problems first I always say as I am currently architecting that path, the sixth time of my career actually but this occurrence is different entirely.
- deleted 6y ago[deleted]
- deleted 6y ago[deleted]
- ed25519FUUU 6y agoVery curious. Can you elaborate more? Do you use Go in the finance world, and hope to use the unikernel to lower your attach surface? I didn't realize Go was a very common language in finance.
- bokohut 6y agoI am building an new way to conduct a technology business end to end in entirety, hardware through software, THE BIG PICTURE. Obviously these are my words and likely further explanation could be redefined in other terms based on ones understanding however I have done this several times before with extreme security and efficiency in mind at every decision made, AUTOMATION because PEOPLE ARE THE PROBLEM. My background is payments, finance and banking which I need not elaborate the security that has been in this arena alone for quite some time but anyone nowadays, even a 7 year old, can use any search engine and find a recent breach referencing lost financial information and EVERYONE reading this has likely been issued multiple new credit cards or worse. There are several people and companies working towards unikernels and the like but my jam, and always has been, is to apply the new way of thinking to a business, a serial puzzle master if you will. In short you are correct in using ONLY GO for absolutely EVERYTHING to reduce technical debt, ZERO TRUST architecture, automated everything and much much more. Might sound like hogwash to some but once more, if my past is an indication of my future as I love a challenge. It is what you cannot see that matters most.
- scns 6y agoI would suggest looking into OCaml unikernels if you work in finance.
- SAI_Peregrinus 6y agoFreeRTOS is a unikernel by that definition (by every definition I've seen, though they still use the term "Library OS" which seems essentially synonymous). It's quite common in embedded devices.
- aidenn0 6y agoBy that definition, older unixes were unikernels for the C runtime.
- Joker_vD 6y agoWell, that's not entirely wrong. After all, the libc is pretty much a part of Unix API today.
- pjmlp 6y agoActually is the other way around, libc is the part of UNIX API ISO was willing to put into the language standard, while the remaining part of the C UNIX runtime ended up as POSIX.
- SAI_Peregrinus 6y agoWell, the usual definition I see for unikernels also stipulates that there's only a single process. So FreeRTOS is still a unikernel, but early UNIX wouldn't be. Though the distinction between "process" and "thread" gets very fuzzy when you have only a single address space.
- ignoramous 6y agou/eyberg's https://nanovms.com/ https://nanovms.com/ look promising but they aren't self-service right now.
- convolvatron 6y agoI work a little on nanos..it clearly needs alot of usability work, stability, and feature work. but could you say explicitly what you mean by 'self service'?
- ignoramous 6y agoIf I've got some code I want deployed to nanovms cloud, say, there doesn't seem to be a way to do so. All I see on the website is "schedule demo".
- eyberg 6y agoWe don't actually do any hosting. This is a very common misconception. OPS - https://ops.city https://ops.city can deploy to any public cloud and can run on openstack/kvm/vsphere as well.
- hawk_ 6y agoYes I'd very much like to know if there's a JDK or rust unikernel someone has used in production - commercial or open source.
- eyberg 6y agohttps://github.com/nanovms/ops-examples/tree/master/rust/01-hello-world https://github.com/nanovms/ops-examples/tree/master/rust/01-... && https://github.com/nanovms/ops-examples/tree/master/java https://github.com/nanovms/ops-examples/tree/master/java to get you started - i don't know any of our users that are using those in prod though atm
- pjmlp 6y agoThese guys do all sorts of embedded deployments for Java, bare metal, real time OS or just plain Linux. https://www.aicas.com/wp/ https://www.aicas.com/wp/ https://www.ptc.com/en/products/developer-tools/perc https://www.ptc.com/en/products/developer-tools/perc http://osv.io/ http://osv.io/
- deleted 6y ago[deleted]
- andy_threos_io 6y agoAt least one or two order of magnitude more systems are using unikernels or rtos rather than a full-blown os. You can write a small scheduler even for a small 8bit microcontrollers (avr). The main purpose of the unikernels or small rtos are handling multiple running contexts (aka threads or tasks). I wrote several smaller kernels for embedded sytems, before starting threos.io . It's much easier to handle multiple tasks. ex. one of our project was a wireless voting terminal, one task handles the communication (RF) interface (protocol, error correction etc.), the other handles the user interface (buttons leds etc), and one task is handling the vote application program or logic. The tasks are communication over message passing. All of this running in a cortex-M3 with 8k-32kb ram. A more common example are wireless RF modems (WIFI, GPRS, GPS, Bluetooth etc.), nearly every RF modem uses some kind of unikernel or rtos.