5-minute-production-app
multi-tenancy
5-minute-production-app | multi-tenancy | |
---|---|---|
8 | 5 | |
- | 952 | |
- | - | |
- | 0.0 | |
- | 12 months ago | |
Go | ||
- | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
5-minute-production-app
-
We are building a better Heroku
Author here.
This post doesn't live up to its title, I'm sorry about that.
The title should have been 'We are building a better Heroku FOR PRODUCTION APPS' (we'll add the 'for production apps' to the title)
It should have emphasized the _building_ part, we're just starting. The current 5 minute production app doesn't hold a candle to Heroku at the moment.
It should have made it clear the goals is to improve the speed with which you can configure a production app, not a development app. Development apps on Heroku are already close to perfect. The examples in this post are contrived since it talks about a development app, as rightly called out by Heroku people https://twitter.com/johnbeynon/status/1374306499426652161
It should have gone into why hyper clouds might be preferable https://gitlab.com/gitlab-org/5-minute-production-app/deploy...
It should have talked about state, we made a small improvement in https://gitlab.com/gitlab-com/www-gitlab-com/-/merge_request... but we should have done the planned work in https://gitlab.com/gitlab-com/www-gitlab-com/-/issues/11137 and made one post out of it.
-
Kubernetes Failure Stories
Disclaimer, I am a CNCF Ambassador (voluntary) - so it's in my interest to promote CNCF projects like Kubernetes.
It seems like a good time to mention my blog post from last year "Then he asked me βIs Kubernetes right for us?" -> https://alexellisuk.medium.com/then-he-asked-me-is-kubernete...
Some of the feedback I've had so far is that it was refreshing to get "permission" to consider alternatives vs. the current hype. I use K8s and K3s quite broadly myself, but increasingly see consulting prospects and customers who are not comfortable to make the leap, but are very happy on managed services with their chosen vendor - Azure / AWS / GCP.
GitLab recently released a bunch of terraform to show you how to run side projects in the free tier of a cloud - https://gitlab.com/gitlab-org/5-minute-production-app/deploy...
The OpenFaaS project again is very coupled to Kubernetes, making it easier to use and more reliable is important to the community and project's future. However, we created a version called faasd that works more like docker-compose. It's received much more traction than we expected and companies and individuals are putting it into production. It does't have clustering, and supports only 1 replica per function, so it's surprising.
I'll keep doing my bit to promote solutions that make K8s easier to understand like K3s (see also k3sup.dev) and to look into alternatives. But as you will see in my blog post - I don't think it's right to assume Kubernetes is the right solution for every team, and every project, without first talking about the problem being solved.
-
How long it usually takes to build a CI/CD
Less than five minutes. I worked closely with GitLab co-founders over the past 7 weeks, and we built the [Five Minute Production](https://gitlab.com/gitlab-org/5-minute-production-app/deploy-template/-/blob/master/README.md) project that generates AWS infra for webapps with minimal fuss.
multi-tenancy
-
Kubernetes: Virtual Clusters As Development Environments
Alternatives: The concept of virtual clusters is rather new, so only few solutions for it exist. However, there are also open-source proof-of-concepts for a virtual cluster technology, such as k3v or the project from the Kubernetes multi-tenancy SIG.
-
create a configmap when a new namespace get created
This seems like a pretty good fit for HNC. You can restrict users to only create subnamespaces, and then ensure that the configmaps in the parent namespaces get propagated to the children.
-
Virtual Clusters For Kubernetes - Benefits & Use Cases
Virtual Kubernetes clusters are still a very new topic, but they are already available today. The multi-tenancy working group has presented an experimental solution in this area. k3v by Darren Shepherd is another proof of concept implementation in the open-source community.
-
Kubernetes Failure Stories
In a way this reminds me of Kubernetes Virtual Clusters. Each virtual cluster has its own tenant control plane, namespaces. Multiple virtual clusters exist in a super cluster.
https://github.com/kubernetes-sigs/multi-tenancy/tree/master...
-
Best Practice: Should each collection of resources be in their own namespace?
As a side note, hierarchical namespaces are coming, which makes things even more flexible: https://github.com/kubernetes-sigs/multi-tenancy/tree/master/incubator/hnc
What are some alternatives?
piku - The tiniest PaaS you've ever seen. Piku allows you to do git push deployments to your own servers.
fluent-bit - Fast and Lightweight Logs and Metrics processor for Linux, BSD, OSX and Windows
www-gitlab-com
Kyverno - Kubernetes Native Policy Management
marketing
helmfile - Deploy Kubernetes Helm Charts
k3s - Lightweight Kubernetes [Moved to: https://github.com/k3s-io/k3s]
k3sup - bootstrap K3s over SSH in < 60s π
hierarchical-namespaces - Home of the Hierarchical Namespace Controller (HNC). Adds hierarchical policies and delegated creation to Kubernetes namespaces for improved in-cluster multitenancy.
cluster-api - Home for Cluster API, a subproject of sig-cluster-lifecycle
synator - Synator Kubernetes Secret and ConfigMap synchronizer