Posted by messh 18 hours ago
Still, there is the advantage of simplicity not having to deal with the web console etc. Some people may enjoy this
A suspended machine only costs its disk usage to the hoster. You can have 800 of them on a machine with 4TB SSD. You can't say the same for VPS at all.
Can be pretty fast.
The UX here seems really nice, but after spending a couple minutes setting up the VPS, I essentially get the same UX (aka just ssh in and so stuff).
I’d potentially be willing to pay some premium over a standard VPS, but certainly not a 10x premium…honestly probably not even 2x.
And the big benefit of a remote box is that you can offload long running tasks to it.
"30 hours of wake time per month (~5 concurrent users avg), averaging 10% of 2 CPUs and 1 GB RAM"
Does that mean it would sit available but using 0% when there's nobody on the site, and just bill for usage when web traffic is causing the server to do work? So if the web app went a month with no visitors it would cost nothing (except for the file storage fees)?
Sprites pricing is based on usage, not reserved capacity, so depending on what you're doing I think it can actually be cheaper than Shellbox. You'll have to stay below 1GB of memory and have the CPU be mostly idle, which I'm not sure common workloads will.
With this service, it seems like the VM underpinning your session is suspended (like as if you were to suspend-to-RAM or hibernate your laptop), and then resumed the next time you sign in, so not only is the filesystem in the same state as it was during your last session, but any background processes that have spun up since then are resumed as well, and are still running.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernat...
Can then spawn a new instance from the snapshot and it should unhibernate
Whether the OS will like that... That's another point. As there will be things that change like smbios etc
When I suspend my Linux machine, my ssh connections are lost.
Anyone know of a good solution for this?
Does anyone have a legit use-case when it would be actually nicer to use this on-demand type of service? (Once more, unless we are talking some serious on-demand hardware.)
Other than those points, offering access to more powerful hardware is probably the best use-case.
What stack does this use underneath?
Good luck with launch, this idea is similar to railway in terms of pricing model. I discussed about it a few comments back and I think its an interesting idea and we are seeing alternatives within such pricing model
Also are you using some cloud provider itself or building it yourself, I'd be interested in so many details to discover
Have a nice day and looking forward to ya response! Good luck with your project!
This is all written in python and the AsyncSSH package. Firecracker for VMs with memory mapped files for ram. Paddle for billing. Caddy as a reverse proxy for certificates.
It works on top of very large bare metal instances.
I'm thinking maybe open sourcing but it will take some more work on the code to make it publishable w/o embarrassing myself :)
I am interested in which bare metal instances from which provider are you using if I may ask since I had a similar idea (as mentioned before) and I wanted to deploy it on hetzner but I was always worried that hetzner's policy might be too harsh for it even though they are one of the cheapest options out there
Which server provider did you end up using?
Thanks once again for your in depth response, these are the things I come to hackernews for! cheers and looking to ya response
When I wished to create something as such, this was the most major thing I was worried about. I am curious what your thoughts are on it and how are you managing it (the fact that anyone might abuse in your service which could then impact you and hetzner relations and they might block/restrict you)
I have heard that hetzner requires you to respond in hours or similar. Like I am interested, did you talk to hetzner people (they are usually very kind and I love that about them) or not, because I remember asking some question to that in similar vein but I had gotten the answer that I am still responsible for what happens downstreams and that worried me
Would love to chat about details there
I really need to share a blog post on doing this exact thing with a VPS, 2 commands to install and setup lxd.
And then client side bash function to just make and connect via tmux and delete when you're done.
Self hosting these services is too easy to do and you can have more control of your data and better specs.
As far as self-hosting goes, it looks like there are some FOSS projects now, eg https://containerssh.io/
Work in progress/alpha, but the core functionality works as a proof of concept. Super exciting working on this kind of stuff.
Also If you ever want to chat about ssh feel free to reach out!