Skip to content

Generates a ConfigMap for the Kubernetes Cluster Autoscaler's Priority Expander for AWS Managed node groups

Notifications You must be signed in to change notification settings

Tradeshift/priority-expander-eks-managed-nodegroup-configurer

 
 

Repository files navigation

Priority Expander EKS Managed Node group configurer

Generates the cluster-autoscaler-priority-expander ConfigMap expected by the Kubernetes Cluster Autoscaler's priority expander containing the Auto Scaling Group names rather than the names of the node groups.

As the Auto Scaling Groups don't change even when you update a Node Group configuration and perform a rolling update, this runs as a Job which has a timestamp in the name to run every Helm deploy.

This can be deployed with the Helm Chart in this repository. It must be deployed in the same namespace as cluster autoscaler. Currently a number of things including the input configmap are hardcoded in the chart.

The chart creates all the RBAC you need but it will need to have some AWS permissions to do the following:

        "eks:DescribeNodegroup",
        "eks:ListNodegroups"

These can be assigned via the EC2 instance profile, or assigned to the Pod via kiam, kube2iam or the EKS IAM Roles for service accounts feature.

Built as a temporary solution to solve: kubernetes/autoscaler#3871

Hopefully this issue will be fixed by AWS so this tool will no longer be required: aws/containers-roadmap#1304

About

Generates a ConfigMap for the Kubernetes Cluster Autoscaler's Priority Expander for AWS Managed node groups

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 91.8%
  • Dockerfile 8.2%