Skip to main content

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.