Components
The following Kubernetes Objects can be created with our Helm Chart:
Deployment
The deployment.yaml file creates the main Deployment of the GoKubeDownscaler with a reference to the provided ServiceAccount and ConfigMap.
Serviceaccount
The serviceaccount.yaml file creates a ServiceAccount that will be used by the GoKubeDownscaler to interact with Kubernetes.
Configmap
The configmap.yaml file creates a new ConfigMap with the provided name.
It is used to store environment variables like EXCLUDE_NAMESPACES
.
Clusterrole
The clusterrole.yaml file creates a ClusterRole and a ClusterRoleBinding
for the desired cluster if there are no namespaces defined in constrainedNamespaces
.
These allow the actions the GoKubeDownscaler needs to scale down workloads in a clusterwide context.
Role
The role.yaml file creates a Role and a RoleBinding
for every namespace listed in constrainedNamespaces
.
Leaserole
The leaserole.yaml file creates a Role and RoleBinding
if --leader-election
is enabled in order to make lease management possible.