{"id":13600276,"url":"https://github.com/kubewharf/kubezoo","last_synced_at":"2025-04-12T19:50:50.332Z","repository":{"id":48182445,"uuid":"516603039","full_name":"kubewharf/kubezoo","owner":"kubewharf","description":"a lightweight kubernetes multi-tenancy gateway","archived":false,"fork":false,"pushed_at":"2024-07-16T09:22:56.000Z","size":1606,"stargazers_count":701,"open_issues_count":12,"forks_count":57,"subscribers_count":22,"default_branch":"main","last_synced_at":"2025-04-03T23:10:05.422Z","etag":null,"topics":["kubernetes","multi-tenancy","serverless"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kubewharf.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":"GOVERNANCE.md","roadmap":"docs/roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-22T03:58:08.000Z","updated_at":"2025-03-31T01:54:29.000Z","dependencies_parsed_at":"2024-07-16T11:44:19.416Z","dependency_job_id":"448f7763-0ff0-42f6-9a4c-5e5e5e1db000","html_url":"https://github.com/kubewharf/kubezoo","commit_stats":{"total_commits":34,"total_committers":12,"mean_commits":"2.8333333333333335","dds":0.7352941176470589,"last_synced_commit":"8a3a05f83cfe0576c24d896d898683001bd833e5"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubewharf%2Fkubezoo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubewharf%2Fkubezoo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubewharf%2Fkubezoo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubewharf%2Fkubezoo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kubewharf","download_url":"https://codeload.github.com/kubewharf/kubezoo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248625501,"owners_count":21135513,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["kubernetes","multi-tenancy","serverless"],"created_at":"2024-08-01T18:00:34.074Z","updated_at":"2025-04-12T19:50:50.311Z","avatar_url":"https://github.com/kubewharf.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# KubeZoo - Gateway Service for Kubernetes \u003cbr /\u003e Multi-tenancy\n\nEnglish | [简体中文](./README.zh.md)\n\n\n## Overview\n\nKubeZoo is a lightweight gateway service that leverages the existing namespace model \nand add multi-tenancy capability to existing Kubernetes. KubeZoo provides \nview-level isolation among tenants by capturing and transforming the requests and responses.\nPlease refer to [design doc](./docs/design.md) for details.\n\n\u003cdiv align=\"center\"\u003e\n  \u003c!--[if IE]\u003e\n    \u003cimg src=\"docs/img/kubezoo-overview.png\" width=80% title=\"KubeZoo Overview\" loading=\"eager\" /\u003e\n  \u003c![endif]--\u003e\n  \u003cpicture\u003e\n    \u003csource srcset=\"docs/img/kubezoo-overview-dark.png\" width=80% title=\"KubeZoo Overview\" media=\"(prefers-color-scheme: dark)\"\u003e\n    \u003cimg src=\"docs/img/kubezoo-overview.png\" width=80% title=\"KubeZoo Overview\" loading=\"eager\" /\u003e\n  \u003c/picture\u003e\n\u003c/div\u003e\n\n## Why KubeZoo\n\nThere exists [three common multi-tenancy](https://kubernetes.io/blog/2021/04/15/three-tenancy-models-for-kubernetes/) models for Kubernetes, \ni.e., Namespace as a Service (NaaS), Cluster as a Service (CaaS), Control Planes as a service (CPaaS). Each of them can be applied to address different \nuse cases. However, our cases have some specific requirements and constraints that can not be met by the existing models, \n* ***Many Small Tenants*** - there usually exist hundreds of tenants who only need to run small batch workloads containing few pods for tens of minutes.\n* ***Short Turnaround Time*** - users/tenants are usually impatient, who desire to have their service to be ready in minutes.\n* ***Tight Manpower*** - managing thousands of clusters/control-planes can be labour-intensive and infeasible for medium-sized dev team.\n\nTo address these cases, we present a new tenancy model, i.e., **Kubernetes API as a Service (KAaaS)**, which provides competent isolation with \nnegligible overheads and operation costs. KubeZoo implements this model with all tenants sharing both the control-plane and data-plane, which is \nsuitable for the scenarios where thousands of small tenants need to share an underlying Kubernetes cluster.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"docs/img/comparison.png\" width=80% title=\"Comparison of Different Solutions\"\u003e\n\u003c/div\u003e\n\nFor more details lease refer [FAQ](./docs/faq.md).\n\n## Prerequisites\n\nPlease check the [resource and system requirements](./docs/resource-and-system-requirements.md) before installing KubeZoo.\n\n## Getting started\n\nKubeZoo supports Kubernetes versions up to 1.24. Using higher Kubernetes versions may cause\ncompatibility issues. KubeZoo can be installed using any of the following methods:\n\n| Methods                     | Instruction                                | Estimated time |\n| --------------------------- | ------------------------------------------ | -------------- |\n| Deploy KubeZoo from scratch | [Deploy KubeZoo](./docs/manually-setup.md) | \u003c 2 minutes    |\n\n## Community\n\n### Contributing\n\nIf you are willing to be a contributor for the KubeZoo project, please refer to our [CONTRIBUTING](CONTRIBUTING.md) document for details.\nWe have also prepared a developer [guide](./docs/developer-guide.md) to help the code contributors.\n\n### Contact\n\nIf you have any questions or want to contribute, you are welcome to communicate most things via GitHub issues or pull requests.\nOr Contact to [Maintainers](./MAINTAINERS.md)\n\n\n## License\n\nKubeZoo is under the Apache 2.0 license. See the [LICENSE](LICENSE) file for details.\nCertain implementations in KubeZoo rely on the existing code from Kubernetes and the credits go to the original Kubernetes authors.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkubewharf%2Fkubezoo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkubewharf%2Fkubezoo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkubewharf%2Fkubezoo/lists"}