{"id":15161350,"url":"https://github.com/postfinance/kuota-calc","last_synced_at":"2025-10-24T20:32:07.933Z","repository":{"id":45325776,"uuid":"273425044","full_name":"postfinance/kuota-calc","owner":"postfinance","description":"Simple utility to calculate the resource quota needed for your k8s deployment(s)","archived":false,"fork":false,"pushed_at":"2021-12-21T06:23:51.000Z","size":89,"stargazers_count":24,"open_issues_count":12,"forks_count":5,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-01-31T04:25:24.231Z","etag":null,"topics":["k8s","kubectl","kubernetes"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/postfinance.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-06-19T06:51:01.000Z","updated_at":"2024-11-13T11:30:26.000Z","dependencies_parsed_at":"2022-09-17T04:00:22.998Z","dependency_job_id":null,"html_url":"https://github.com/postfinance/kuota-calc","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postfinance%2Fkuota-calc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postfinance%2Fkuota-calc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postfinance%2Fkuota-calc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postfinance%2Fkuota-calc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/postfinance","download_url":"https://codeload.github.com/postfinance/kuota-calc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238035385,"owners_count":19405682,"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":["k8s","kubectl","kubernetes"],"created_at":"2024-09-27T00:04:50.383Z","updated_at":"2025-10-24T20:31:59.180Z","avatar_url":"https://github.com/postfinance.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"![ci](https://github.com/postfinance/kuota-calc/workflows/ci/badge.svg)\n![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/postfinance/kuota-calc)\n[![Go Report Card](https://goreportcard.com/badge/github.com/postfinance/kuota-calc)](https://goreportcard.com/report/github.com/postfinance/kuota-calc)\n![License](https://img.shields.io/github/license/postfinance/kuota-calc)\n\n# kuota-calc\nSimple utility to calculate the maximum needed resource quota for deployment(s). kuota-calc takes the\ndeployment strategy, replicas and all containers into account, see [supported-resources](https://github.com/postfinance/kuota-calc#supported-k8s-resources) for a list of kubernetes resources which are currently supported by kuota-calc.\n\n## Motivation\nIn shared environments such as kubernetes it is always a good idea to isolate/constrain different workloads to prevent them from infering each other. Kubernetes provides [Resource Quotas](https://kubernetes.io/docs/concepts/policy/resource-quotas/) to limit compute, storage and object resources of namespaces.\n\nCalculating the needed compute resources can be a bit challenging (especially with large and complex deployments) because we must respect certain settings/defaults like the deployment strategy, number of replicas and so on. This is where kuota-calc can help you, it calculates the maximum needed resource quota in order to be able to start a deployment of all resources at the same time by respecting deployment strategies, replicas and so on.\n\n## Example\n```bash\n$ cat examples/deployment.yaml | kuota-calc -detailed\nVersion    Kind           Name     Replicas    Strategy         MaxReplicas    CPU      Memory\napps/v1    Deployment     myapp    10          RollingUpdate    11             5500m    2816Mi\napps/v1    StatefulSet    myapp    3           RollingUpdate    3              3        12Gi\n\nTotal\nCPU: 8500m\nMemory: 15104Mi\n```\n\n## Installation\nPre-compiled statically linked binaries are available on the [releases page](https://github.com/postfinance/kuota-calc/releases).\n\nkuota-calc can either be used as a kubectl plugin or invoked directly. If you intend to use kuota-calc as\na kubectl plugin, simply place the binary anywhere in `$PATH` named `kubectl-kuota_calc` with execute permissions.\nFor further information, see the offical documentation on kubectl plugins [here](https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/).\n\n## supported k8s resources\n**kuota-calc is still a work-in progress**, there are plans to support more k8s resources (see [#5](https://github.com/postfinance/kuota-calc/issues/5) for more info). \n\nCurrently supported:\n\n- apps/v1 Deployment\n- apps/v1 StatefulSet\n- apps/v1 DaemonSet\n- batch/v1 CronJob\n- batch/v1 Job\n- v1 Pod\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpostfinance%2Fkuota-calc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpostfinance%2Fkuota-calc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpostfinance%2Fkuota-calc/lists"}