brain/src/ops/k8s/upgrade.md

64 lines
900 B
Markdown
Raw Normal View History

2021-08-05 12:44:58 +00:00
# Cluster Upgrade
## Versions
`vMajor.Minor.Patch` semantic versioning
K8S compatibility is as follow : current and n-2 version are supported.
**Always upgrade minor to minor releases**.
## kubeadm
### Check latest/upgradable version
```shell
kubeadm upgrade plan
```
## Master node upgrade
### Drain and mark it at Unschedulable
```shell
kubectl drain master
```
`kubectl get nodes` to verify that master node is unschedulable
### kubeadm update
```shell
apt install kubeadm=X.Y.Z-00
```
`kubeadm version` to ensure version number
### Node update
```shell
kubeadm upgrade apply vX.Y.Z
```
`kubectl version` to validate
### Update kubelet
```shell
apt install kubelet=X.Y.Z-00
```
`kubectl get nodes` to validate
### Mark master node as schedulable
```shell
kubectl uncordon master
```
## Worker nodes upgrade
Repeat the same actions done on master for each worker node
🎉