diff --git a/cluster-autoscaler/cloudprovider/aws/README.md b/cluster-autoscaler/cloudprovider/aws/README.md index d086dc858c..73bf1ea7f8 100644 --- a/cluster-autoscaler/cloudprovider/aws/README.md +++ b/cluster-autoscaler/cloudprovider/aws/README.md @@ -154,6 +154,64 @@ spec: hostPath: path: "/etc/ssl/certs/ca-certificates.crt" ``` +### Master Node Setup + +To run a CA pod in master node - CA deployment should tolerate the master `taint` and `nodeSelector` should be used to schedule the pods in master node. + +``` +--- +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: cluster-autoscaler + namespace: kube-system + labels: + app: cluster-autoscaler +spec: + replicas: 1 + selector: + matchLabels: + app: cluster-autoscaler + template: + metadata: + labels: + app: cluster-autoscaler + spec: + tolerations: + - effect: NoSchedule + key: node-role.kubernetes.io/master + nodeSelector: + kubernetes.io/role: master + containers: + - image: gcr.io/google_containers/cluster-autoscaler:{{ ca_version }} + name: cluster-autoscaler + resources: + limits: + cpu: 100m + memory: 300Mi + requests: + cpu: 100m + memory: 300Mi + command: + - ./cluster-autoscaler + - --v=4 + - --stderrthreshold=info + - --cloud-provider=aws + - --skip-nodes-with-local-storage=false + - --nodes={{ node_asg_min }}:{{ node_asg_max }}:{{ name }} + env: + - name: AWS_REGION + value: {{ region }} + volumeMounts: + - name: ssl-certs + mountPath: /etc/ssl/certs/ca-certificates.crt + readOnly: true + imagePullPolicy: "Always" + volumes: + - name: ssl-certs + hostPath: + path: "/etc/ssl/certs/ca-certificates.crt" +``` ### Auto-Discovery Setup