Чтобы выполнить обновление компонентов кластера Kubernetes без параметра -e 'manual_restore_only=true':
Данные метрик в резервную копию не входят и в кластер Kubernetes не переносятся. При обновлении компонентов кластера Kubernetes данные метрик будут утрачены.
Если вам критически важны данные метрик, обратитесь к специалистам Службы технической поддержки перед обновлением компонентов кластера Kubernetes.
backup_timeout в файле инвентаря k0s.inventory.yaml в секции vars../cluster_upgrade.sh k0s.inventory.yaml
В процессе обновления будет автоматически создана резервная копия Ядра KUMA autobackup.tar.gz. Скрипт создает резервную копию Ядра KUMA на машине master-controller в директории /root/k0s/, а затем переносит на выделенную машину ansible-controller, с которой выполняется обновление компонентов Kubernetes, в директорию со скриптом. В процессе автоматического восстановления данных Ядра KUMA в новом кластере Kubernetes также используется директория установщика и директория /root/k0s/ на машине master-controller.
Из резервной копии в дальнейшем будет автоматически выполнено восстановление Ядра KUMA в новом кластере Kubernetes. Если в процессе обновления произойдет сбой, вы сможете поместить созданную вручную резервную копию в файл autobackup.tar.gz, расположенный на машине ansible-controller в директории со скриптом, и перезапустить скрипт cluster_upgrade.sh.
Перезапись созданной резервной копии автоматически не выполняется.
Обновление компонентов кластера Kubernetes выполнено.
Восстановление при сбое
Доступны следующие сценарии восстановления в случае сбоя:
-e 'manual_restore_only=true' и выполнить восстановление вручную.Если вы хотите, чтобы скрипт автоматически повторил удаление и новую установку кластера, необходимо остановить службу k0s на любом из узлов кластера и удалить на этом узле исполняемый файл k0s. Скрипт будет интерпретировать состояние кластера как неконсистентное и выполнит удаление и установку кластера с использованием ранее созданного файла autobackup.tar.gz.
Для остановки службы k0s на контроллерах кластера и хостах, совмещающих роли контроллера и рабочего узла, необходимо использовать следующие команды:
sudo systemctl stop k0scontroller.service
sudo rm /usr/bin/k0s
Для остановки службы k0s и удаления бинарного файла k0s на выделенных рабочих узлах необходимо использовать следующие команды:
sudo systemctl stop k0sworker.service
sudo rm /usr/bin/k0s
Удаление кластера выполняется только после получения корректного файла резервной копии или явного отказа от автоматического резервного копирования и восстановления применением параметра -e 'manual_restore_only=true' и согласия на продолжение обновления без выполнения резервного копирования. Если у вас отсутствует резервная копия, созданная вручную, в случае сбоя все данные будут утрачены.