kubernetes:обслуживание_кластера
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| kubernetes:обслуживание_кластера [2022/02/14 16:10] – root | kubernetes:обслуживание_кластера [2024/12/21 19:00] (текущий) – внешнее изменение 127.0.0.1 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ====== Обслуживание кластера ====== | + | ====== |
| ===== Освобождение нод от нагрузки ===== | ===== Освобождение нод от нагрузки ===== | ||
| Выгнать поды с ноды и запретить планирование новых подов: | Выгнать поды с ноды и запретить планирование новых подов: | ||
| Строка 17: | Строка 17: | ||
| <code bash> | <code bash> | ||
| apt upgrade -y kubeadm=1.12.0-00 | apt upgrade -y kubeadm=1.12.0-00 | ||
| + | kubeadm upgrade plan | ||
| kubeadm upgrade apply v1.12.0 | kubeadm upgrade apply v1.12.0 | ||
| </ | </ | ||
| 2. Обновление kubelet на мастере | 2. Обновление kubelet на мастере | ||
| <code bash> | <code bash> | ||
| + | kubectl drain node master-01 --ignore-daemonsets | ||
| + | apt-mark unhold kubelet kubectl | ||
| + | apt upgrade -y kubectl=1.12.0-00 | ||
| apt upgrade -y kubelet=1.12.0-00 | apt upgrade -y kubelet=1.12.0-00 | ||
| + | apt-mark hold kubelet kubectl | ||
| + | systemctl daemon-reload | ||
| systemctl restart kubelet.service | systemctl restart kubelet.service | ||
| </ | </ | ||
| 3. Обновление kubelet на worker нодах. | 3. Обновление kubelet на worker нодах. | ||
| <code bash> | <code bash> | ||
| - | kubectl drain node node-01 #on master | + | kubectl drain node node-01 |
| </ | </ | ||
| <code bash> | <code bash> | ||
| - | apt upgrade | + | apt-mark unhold kubelet |
| apt upgrade -y kubelet=1.12.0-00 | apt upgrade -y kubelet=1.12.0-00 | ||
| - | kubeadm upgrade node config --kubelete-version v1.12.0 | + | apt-mark hold kubelet |
| + | kubeadm upgrade node config --kubelete-version v1.12.0 | ||
| + | systemctl daemon-reload | ||
| systemctl restart kubelet.service | systemctl restart kubelet.service | ||
| </ | </ | ||
| <code bash> | <code bash> | ||
| - | kubectl uncordon node-01 | + | kubectl uncordon node-01 |
| + | </ | ||
| + | ===== Резервное копирование ETCD ===== | ||
| + | Утилита для работы с базой etcd: etcdctl \\ | ||
| + | Перед началом работы необходимо указать версию API, через переменную окружения ETCDCTL_API | ||
| + | <code bash> | ||
| + | export ETCDCTL_API=3 | ||
| + | etcdctl version | ||
| + | </ | ||
| + | Снять снапшот с базы: | ||
| + | <code bash> | ||
| + | etcdctl \ | ||
| + | snapshot save snapshot.db \ | ||
| + | --endpoints=https:// | ||
| + | --cacert=/ | ||
| + | --cert=/ | ||
| + | --key=/ | ||
| + | </ | ||
| + | Восстановить снапшот базы: | ||
| + | <code bash> | ||
| + | systemctl stop kube-apiserver # or service kube-apiserver stop | ||
| + | etcdctl \ | ||
| + | snapshot restore snapshot.db \ | ||
| + | --data-dir / | ||
| + | --endpoints=https:// | ||
| + | --cacert=/ | ||
| + | --cert=/ | ||
| + | --key=/ | ||
| + | </ | ||
| + | Изменить в файле манифеста / | ||
| + | <code yaml> | ||
| + | volumes: | ||
| + | - hostPath: | ||
| + | path: / | ||
| + | type: DirectoryOrCreate | ||
| + | name: etcd-data | ||
| + | </ | ||
| + | <code bash> | ||
| + | systemctl restart etcd | ||
| + | systemctl start kube-apiserver | ||
| </ | </ | ||
| - | |||
kubernetes/обслуживание_кластера.1644844247.txt.gz · Последнее изменение: 2024/12/21 19:00 (внешнее изменение)
