apiVersion: v1
kind: Pod

metadata:
  name: kube-controller-manager
  namespace: kube-system

spec:
  hostNetwork: true
  priorityClassName: system-cluster-critical

  containers:
  - name: kube-controller-manager
    image: gcr.io/google-containers/hyperkube-amd64:v1.18.0

    command:
    - /hyperkube
    - kube-controller-manager
    - --cloud-provider=aws
    - --kubeconfig=/etc/kubernetes/kubeconfig.yaml
    - --service-account-private-key-file=/etc/kubernetes/serviceaccount.pem
    - --root-ca-file=/etc/kubernetes/ssl/root-ca.pem

    livenessProbe:
      httpGet:
        host: 127.0.0.1
        path: /healthz
        port: 10252
      initialDelaySeconds: 15
      timeoutSeconds: 1

    volumeMounts:
    - mountPath: /etc/kubernetes
      name: config
      readOnly: true

  volumes:
  - name: config
    hostPath:
      path: /etc/kubernetes
