[CKA] 007. Cluster Upgrade

drain, uncordon, cordon, upgrade control plane, backup etcd

hpyYh avatar
  • hpyYh
  • 1 min read

basic command

  • drain
    kubectl drain [node-name]
    
  • uncordon
    kubectl uncordon [node-name]
    
  • cordon
    kubectl cordon [node-name]
    

upgrade control plane

  • version order
    1. kube-apiserver (x)
    2. kube-controller-manager, kube-scheduler (x-1)
    3. kubelet, kube-proxy (x-2)
    4. kubectl (x-1 ~ x+1)
  • version upgrade step is 0.1

backup etcd

  • backup
      spec:
        containers:
        - command:
          - etcd
          - --listen-client-urls=https://127.0.0.1:2379
          - --cert-file=/etc/kubernetes/pki/etcd/server.crt
          - --key-file=/etc/kubernetes/pki/etcd/server.key
          - --trusted-ca-file=/etc/kubernetes/pki/etcd/ca.crt
    
      ETCDCTL_API=3 etcdctl --endpoints=https://127.0.0.1:2379 \
      --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key \
      snapshot save /opt/snapshot-pre-boot.db
    
  • restore
    etcdutl snapshot restore /opt/snapshot-pre-boot.db --data-dir /var/lib/etcd-from-backup
    
  • update info (/etc/kubernetes/manifests/etcd.yaml)
      volumes:
      - hostPath:
          path: /var/lib/etcd-from-backup # Newly restored backup directory
          type: DirectoryOrCreate
        name: etcd-data
    

Comment

comments powered by Disqus
hpyYh

Written by : hpyYh

Continue Reading