Search code examples
kubernetescoreos

With manually installed Kubernetes, how to install and use addon manager?


With manually installed Kubernetes on CoreOS, how does one install and use the Kubernetes addon manager?

I've found references to the addon manager being the current standard way of installing Kubernetes addons, but I can't find any authoritative documentation on it. Hoping someone can help me out here.


Solution

  • The addon manager is deployed as a normal pod or a deployment, with a simple kubectl apply -f.

    The yaml looks something like this, look at the specific version that you need:

    apiVersion: v1
    kind: Pod
    metadata:
      name: kube-addon-manager
      namespace: kube-system
      labels:
        component: kube-addon-manager
    spec:
    hostNetwork: true
    containers:
    - name: kube-addon-manager
      # When updating version also bump it in:
      # - cluster/images/hyperkube/static-pods/addon-manager-singlenode.json
      # - cluster/images/hyperkube/static-pods/addon-manager-multinode.json
      # - test/kubemark/resources/manifests/kube-addon-manager.yaml
      image: gcr.io/google-containers/kube-addon-manager:v6.4-beta.1
      command:
      - /bin/bash
      - -c
      - /opt/kube-addons.sh 1>>/var/log/kube-addon-manager.log 2>&1
      resources:
        requests:
          cpu: 5m
          memory: 50Mi
      volumeMounts:
      - mountPath: /etc/kubernetes/
        name: addons
        readOnly: true
      - mountPath: /var/log
        name: varlog
        readOnly: false
    volumes:
    - hostPath:
        path: /etc/kubernetes/
      name: addons
    - hostPath:
        path: /var/log
      name: varlog
    

    The addon manager observes the specific yaml files under /etc/kubernetes/addons/, put any addon you like here to install it.