Am looking to support customers who self-select multiple apps to run on a self-selected Digital Ocean droplet.
Kubernetes is the sledgehammer probably not yet in your toolbox but readily available at all good hardware stores.
If all you're doing is putting up a few picture frames then you're probably going to break some walls.
If however you're planning on running a platform as a service then it seems an attractive approach.
Google-grade production-proven open-source orchestration of containers providing graceful scale-up, scale-down, upgrade, roll-back.
Don't know. If you can share your thoughts and experiences here it would be appreciated.
I spent about ~1.5 years working heavily with K8s to manage a multi-region cloud platform on a small team of senior engineers. My take: there is undeniable flexibility and control, however I would not remotely consider it again in the future without a dedicated ops team to manage the cluster implementations.
Yeah. Am looking to avoid the rabbit hole. Thanks.
I hear you. This is what I am concerned about. Am looking at
docker-compose
too which is easy. Having no-downtime fordocker-compose
during app upgrades and resizing instances should suffice.That said, it has its place. I don't use it for personal projects but we use it heavily at work.
I have been using Kubernetes for a little less than two years and I love it. Very flexible and powerful. It has a learning curve though. What would you like to know? Mind that I am a team of one and have only worked with small clusters, not big scale :)
Thanks for your reply. Appreciated. It's reassuringly to hear you love it.
Long story short I'm looking to provide a platform which instead of having many tenants on a single large instance would allow each tenant to have a custom app (or apps infact) installed on their own droplet (I'm assuming DO here but not crucial). Tenants would be able to self-serve their apps (pick and mix) and self-serve their size of droplet.
Why? To isolate tenants so noisy neighbours don't upset each other and so each tenant can run their droplet to exhaustion instead of imposing quotas on usage.
I'm trying to think about the best way to approach it. Maybe its just a matter of getting started.
My assumption thus far is a single container is used to run a single app instance for a single tenant. Multiple containers (i.e. all the containers for a single tenant) are bundled into a tenant pod. Support for multiple tenants amounts to replicating pods.
Does that sound right?
I have no real thoughts yet about how to dynamically / conditionally activate apps. Do you know how Kubernetes could handle this?
It's a bit vague I know.
I would recommend namespaces to isolate tenants. You can also configure the amount of resources available to each namespace :)
I actually work for a company that has been solving the issue that k8s overly complex and in many situations, unnecessary. I don't want to turn this into purely a marketing thing but the company is called cycle.io if you are wondering. But we have seen that most people we work with don't need, have time, or want the complexities of kubernetes.
I see why kubernetes is loved and the big player in the game, but there are definitely lots of other options that are better in most situations.
Hi David, also interesting in Kubernetes issues. Do you know any tool which would help to get a clear view on, for example, situation when after updates we dont understand why the app is not working and where to see for a problem:) thank you!
To be honest, everything I know about issues with Kubernetes were relayed to me and my team by customers who either had too much difficulty or did not have the time to learn and/or use it most effectively. On the flip side, I can only speak on Cycle, and we are completely removed from K8s and built our own container orchestration system--the issue you meniton being one of the reasons.
But as far as a real solid answer, beside something like selenium or a k8s dashboard like promethues, I can't think of anything I've heard about specific to that issue.
But I will throw it out here, Cycle has a free account if you want to test us out.
Useful to know, thanks.