From 609149c1d9f61bfd06c1ab4d0287e699171b5d59 Mon Sep 17 00:00:00 2001 From: andrewsykim Date: Wed, 16 Nov 2016 14:19:38 -0500 Subject: [PATCH] cluster autoscaler addon --- addons/cluster-autoscaler/README.md | 24 +++++++++++++++ addons/cluster-autoscaler/addon.yml | 9 ++++++ addons/cluster-autoscaler/v1.4.0.yaml | 42 +++++++++++++++++++++++++++ 3 files changed, 75 insertions(+) create mode 100644 addons/cluster-autoscaler/README.md create mode 100644 addons/cluster-autoscaler/addon.yml create mode 100644 addons/cluster-autoscaler/v1.4.0.yaml diff --git a/addons/cluster-autoscaler/README.md b/addons/cluster-autoscaler/README.md new file mode 100644 index 0000000000..a60ce441f4 --- /dev/null +++ b/addons/cluster-autoscaler/README.md @@ -0,0 +1,24 @@ +# Cluster Autoscaler Addon + +```bash +CLOUD_PROVIDER=aws +IMAGE=gcr.io/google_containers/cluster-autoscaler:v0.3.0 +MIN_NODES=1 +MAX_NODES=5 +AWS_REGION=us-east-1 +GROUP_NAME="k8s-worker" +SSL_CERT_PATH="/etc/ssl/certs/ca-certificates.crt" # (/etc/ssl/certs for gce) + +addon=cluster-autoscaler.yml +wget -O ${addon} https://raw.githubusercontent.com/kubernetes/kops/master/addons/cluster-autoscaler/v1.4.0.yaml + +sed -i -e "s@{{CLOUD_PROVIDER}}@${CLOUD_PROVIDER}@g" "${addon}" +sed -i -e "s@{{IMAGE}}@${IMAGE}@g" "${addon}" +sed -i -e "s@{{MIN_NODES}}@${MIN_NODES}@g" "${addon}" +sed -i -e "s@{{MAX_NODES}}@${MAX_NODES}@g" "${addon}" +sed -i -e "s@{{GROUP_NAME}}@${GROUP_NAME}@g" "${addon}" +sed -i -e "s@{{AWS_REGION}}@${AWS_REGION}@g" "${addon}" +sed -i -e "s@{{SSL_CERT_PATH}}@${SSL_CERT_PATH}@g" "${addon}" + +kubectl apply -f ${addon} +``` diff --git a/addons/cluster-autoscaler/addon.yml b/addons/cluster-autoscaler/addon.yml new file mode 100644 index 0000000000..5cd0d553b4 --- /dev/null +++ b/addons/cluster-autoscaler/addon.yml @@ -0,0 +1,9 @@ +kind: Addons +metadata: + name: cluster-autoscaler +spec: + addons: + - version: 1.4.0 + selector: + k8s-addon: cluster-autoscaler.addons.k8s.io + manifest: v1.4.0.yaml diff --git a/addons/cluster-autoscaler/v1.4.0.yaml b/addons/cluster-autoscaler/v1.4.0.yaml new file mode 100644 index 0000000000..c77b89a024 --- /dev/null +++ b/addons/cluster-autoscaler/v1.4.0.yaml @@ -0,0 +1,42 @@ +--- +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: cluster-autoscaler + labels: + k8s-app: cluster-autoscaler +spec: + replicas: 1 + selector: + matchLabels: + k8s-app: cluster-autoscaler + template: + metadata: + labels: + k8s-app: cluster-autoscaler + spec: + containers: + - image: + name: {{IMAGE}} + resources: + limits: + cpu: 100m + memory: 300Mi + requests: + cpu: 100m + memory: 300Mi + command: + - ./cluster-autoscaler + - --cloud-provider={{CLOUD_PROVIDER}} + - --nodes={{MIN_NODES}}:{{MAX_NODES}}:{{GROUP_NAME}} + env: + - name: AWS_REGION + value: {{AWS_REGION}} + volumeMounts: + - name: ssl-certs + mountPath: {{SSL_CERT_PATH}} + readOnly: true + volumes: + - name: ssl-certs + hostPath: + path: {{SSL_CERT_PATH}}