1. Create a yaml file configMap.yaml with the following parameters;

kind: ConfigMap
apiVersion: v1
 name: spotinst-kubernetes-cluster-controller-config
 namespace: kube-system
 spotinst.token: <TOKEN>
 spotinst.account: <ACCOUNT_ID>
 spotinst.cluster-identifier: <IDENTIFIER>

(please replace <TOKEN> <ACCOUNT_ID> and <IDENTIFIER> )


2. Load the parameters into the cluster config

  • kubectl apply -f configMap.yaml


3. Install the controller and its dependencies

In case you are using K8s version 1.9.X and above, use the following:

  • kubectl apply -f https://s3.amazonaws.com/spotinst-public/integrations/kubernetes/cluster-controller/spotinst-kubernetes-cluster-controller-ga.yaml

Else, install using:

  • kubectl apply -f http://spotinst-public.s3.amazonaws.com/integrations/kubernetes/cluster-controller/spotinst-kubernetes-cluster-controller.yaml
  • Please make sure to always download the yaml file from Spotinst s3 bucket as we keep updating it.

spotinst-kubernetes-cluster-controller is now installed and should be reporting its heartbeat to the relevant Spotinst Elastigroup.