This tool provides an API alongside the native Kubernetes deployment controller to manage the pod replica count of deployment resources.
You can find this on my GitHub at https://github.com/calvinbui/k8s-replica-count-manager.
From developing this application, I learnt:
- gRPC
- Protobuf
- how to implement a mutual TLS (mTLS) server
- how to write unit tests against the Fake Kubernetes client
This application is based off the Level 5 challenge from Gravitational/Teleport
Features
List
,Set
andGet
desired replica counts across all namespaces- Automatically scale Deployments to the stored replica count value
- Provides a single source of truth for replica counts of all resources
- Deployments and upgrades may reset the replica counts back to a previous number
- Replica counts may be modified by external actors
- Docker image
- Helm chart
- Served over gRPC
- Supports mTLS
- GitHub Actions workflow