Skip to content

Commit

Permalink
feat(cluster-autoscaler): add cluster autoscaler for aws
Browse files Browse the repository at this point in the history
Note for when I'm back. This is the working autoscaler stuff, but the
permissions come from the node. It doesn't have the correct IAM permissions
for this so we need to figure out how to add that. I don't really want
to do that in the KF installation, but ideally via a Terraform job which
we can run in here. Annoyingly, I've lost access to AWS so I can't check
my hypothesis out until I get that back.
  • Loading branch information
mrsimonemms committed Oct 17, 2024
1 parent 681d28d commit eb36abf
Show file tree
Hide file tree
Showing 3 changed files with 58 additions and 0 deletions.
23 changes: 23 additions & 0 deletions cluster-autoscaler-aws/cluster-autoscaler-aws.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: <CLUSTER_NAME>-cluster-autoscaler-aws-components
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: '100'
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: default
source:
repoURL: <GITOPS_REPO_URL>
path: <REGISTRY_PATH>/components/cluster-autoscaler-aws
targetRevision: HEAD
destination:
name: in-cluster
namespace: kube-system
syncPolicy:
automated:
prune: true
selfHeal: true
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: <CLUSTER_NAME>-cluster-autoscaler-aws
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: '20'
spec:
project: <PROJECT>
source:
repoURL: https://kubernetes.github.io/autoscaler
targetRevision: 9.37.0
chart: cluster-autoscaler
helm:
releaseName: cluster-autoscaler-aws
values: |
autoDiscovery:
clusterName: <CLUSTER_NAME>
awsRegion: <CLOUD_REGION>
cloudProvider: aws
destination:
name: <CLUSTER_DESTINATION>
namespace: kube-system
syncPolicy:
automated:
prune: true
selfHeal: true
7 changes: 7 additions & 0 deletions index.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,13 @@ apps:
description: "A Kubernetes controller & set of CRDs which provide advanced deployment capabilities such as blue-green, canary, canary analysis, experimentation, & progressive delivery features to Kubernetes."
category: CI/CD

- name: cluster-autoscaler-aws
displayName: AWS Cluster Autoscaler
website: "https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler"
imageUrl: "https://raw.githubusercontent.com/kubefirst/gitops-catalog/main/logos/cluster-autoscaler.svg"
description: "Configured for clusters running on AWS. Cluster Autoscaler is a tool that automatically adjusts the size of the Kubernetes cluster when one of the following conditions is true: 1) there are pods that failed to run in the cluster due to insufficient resources, or 2) there are nodes in the cluster that have been underutilized for an extended period of time and their pods can be placed on other existing nodes."
category: Architecture

- name: cluster-autoscaler-civo
displayName: Civo Cluster Autoscaler
website: "https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler"
Expand Down

0 comments on commit eb36abf

Please sign in to comment.