Замена рабочего узла (ноды) в Kubernetes
Подготовка ноды
- Получите имя текущей ноды с помощью команды:
kubectl get nodes
- Сохраните название текущей ноды с помощью команды:
export NODE=<old-node-name>
- Создайте резервную копию Test IT.
- Если новая нода еще не была добавлена в кластер, добавьте ее.
- Отключите распределение новых рабочих нагрузок на старый узел с помощью команды:
kubectl cordon "{$NODE}"
Перенос рабочих нагрузок на новый узел
- Остановите активные рабочие нагрузки с помощью команды:
cd <installation_folder> export NAMESPACE=<my-namespace> helm -n $NAMESPACE list helm -n $NAMESPACE uninstall testit testit_unichart/ kubectl get po -n $NAMESPACE --watch
- Переустановите приложение с помощью команды:
cd <installation_folder> export NAMESPACE=<my-namespace> helm upgrade --install -f testit_unichart/values-override.yaml -n $NAMESPACE --create-namespace testit testit_unichart/ --wait --timeout 10m # Дождитесь начала работы всех компонентов продукта. watch -n 1 kubectl -n $NAMESPACE get pods
- Восстановите Test IT из резервной копии.
- Удалите распределение новых рабочих нагрузок для старой ноды с помощью команды:
kubectl uncordon "{$NODE}"