Scaling / High Availability Cloudron Setup
-
Hey everyone, hope it's ok if I chime in here and ask if anyone has built something in this direction. I'm asking because I got approached to host a static site (basically html, js and a few smaller images) which has trafficspikes where 50k+ users will try to access it for a short period of time and then mostly idles again. How would you go about that, is this doable on Cloudron? I did manage to have 100s of users, but 1000s is a different story
Can the surfer app (being a node server and all) handle that load if there's enough CPU/RAM on the host machine? Or would you rather build a custom nginx app which does nothing but serve compressed static files? Or fire up some smaller VPS, install nginx and use a load balancer to spread the traffic? Any information and suggestion is appreciated
-
@msbt said in Scaling / High Availability Cloudron Setup:
Can the surfer app (being a node server and all) handle that load if there's enough CPU/RAM on the host machine?
For static content, this should be quite easily achievable. Have you tried running any load tests? There's a bunch of variables here like network and disk speed. Best to measure the actual server setup.
-
@msbt said in Scaling / High Availability Cloudron Setup:
I wanted to avoid Cloudflare traffic
If you're simply against Cloudflare as some people seem to be but open to other CDNs, I can vouch for BunnyCDN, everyone raves about them and they are very inexpensive too for the offerings. They also seem to be about to launch some DNS packages, I think they're slowly taking direct aim at Cloudflare and seem a little more friendly to use.
-
Moving to a K8s is hard for sure, simple things get more complex. But I think that's the best long term and where I see things going at large. Maybe setting it up as a single-node k8s would be easier initially?
If Cloudrun was set up to run as a single or multi-node Kubernetes (k3s/rke) cluster it opens the door to tons of cool stuff. You could for example use Rancher/Fleet to manage all your Cloudron/K8s migrations, monitoring, security, etc.
I use Rancher/k8s for multi-node / multi-cluster stuff and Cloudron for single system. Rancher connecting to a k8s version of Cloudrun would be the pie in the sky for me.
-
Found this recently: https://k0sproject.io/
Not sure how much it can be applied to HA Cloudron but it seems promising
*edit: apparently the screenshot is from a client called Lens which has a small/resonable license fee"k0s is the simple, solid & certified Kubernetes distribution that works on any infrastructure: bare-metal, on-premises, edge, IoT, public & private clouds. It's 100% open source & free. Get started today!"
EDIT:
"Lens for the web browser - coming soon" Currently is a desktop app...Lens is also open source and the "free" tier seems like it would fit a majority of Cloudron's users use cases...k0s is free/open source too where as Lens does have a "Pro" version for teams and is only $19.99 a month per user but is not "necessary"
-
@plusone-nick nice fine. You tried it for anything?
-
@marcusquinn not yet, plan on dabbling with it soon though. Another interesting project where I actually found k0s: https://elest.io/ learned of elest.io from the Penpot team lol