Обновление
Требования к обновлению
- Доступ до harbor.bootsman.host для обновления или выгрузки образов в ваш локальный регистри
- Наличие активной лицензии
- Наличие дистрибутивов:
bootsmanctl v2.6.0
- Наличие списка образов для выгрузки.
- Наличие в управляющем кластере 3 мастеров и 3 воркеров.
- Для baremetal обеспечьте как минимум одну свободную ноду.
- Все кластеры должны иметь версию Kubernetes 1.27.6+.
- Все кластеры должны иметь версию Bootsman v2.5.6.
Предупреждения!
Версия kubernetes 1.27.6 перестанет поддерживаться в будущих релизах.
Обновление до предыдущих версий
В случае, если вы пропустили обновления, следует обновить до каждого из релизов, используя соответствующую версию дистрибутива.
На странице История изменений вы можете ознакомится с изменениями и перейти на страницу обновления до соответствующей версии.
Подготовка
Загрузка образов
Используя полученный список и скрипт, выгрузите из harbor.bootsman.host указанные образы и разместите их в вашем хранилище образов.
Для загрузки требуемых образов узнайте версию установленного кластера с помощью команды:
kubectl get deployment -n default -o wide | grep museum | awk '{print $7}' | awk -F":" '{print $2}'
С дистрибутивом есть файл с именем вида "${bootsman_version}.yaml".
В списке содержатся необходимые образы для конкретной версии bootsman.
Скачивание выполните командой:
Предупреждения!
Для работы нужен yq, в случае его отсутствия он будет установлен.
./mirror.sh v2.6.0.yaml
Подготовка конфигурации
Воспользуйтесь файлом конфигурации, который использовался для обновления или инсталяции до версии v2.5.0
Внимание
Если в файле конфигурации указаны настройки модулей в разделе addons, кластер будет приведен в соотвествии с файлом конфигурации.
В случае изменения конфигурации модулей, следует удалить блок addons:
yq -i 'del(.addons)' bootsmanctl.config.yaml
Обновление управляющего кластера
Для обновления перенесите новый дистрибутив на АРМ администратора в директорию, содержащую данные об установке.
Запустите обновление.
./bootsmanctl management update ${cluster-name} -c bootsmanctl.config.yaml
${cluster-name} - имя кластера, данное ему при установке.
Обновление будет продолжительным (около 30 минут), время может варьироваться в зависимости от выделенных ресурсов.
Обновление подчинённого кластера
Web UI
Войдите в Web-интерфейс bootsman и на главной выберете "Manage"
Выберите подчиненный кластер для обновления и откройте его для редактирования
Выберете версию v2.6.0 и нажмите "Apply"
Yaml-манифесты
Обновление подчинённого кластера происходит с помощью kubectl.
Используя kubeconfig управляющего кластера, выполните команды:
Запрос списка всех подчинённых кластеров и воркерпулов:
kubectl get cluster.provisioning.bootsman.tech -A
kubectl get workerpool.provisioning.bootsman.tech -A
Из полученного списка получите имя подчинённого кластера(${cluster_name}) и его неймспейс (${namespace})
Обновление:
kubectl patch cluster.provisioning.bootsman.tech ${cluster_name} -n ${namespace} --type=merge --patch="{\"spec\": {\"bootsmanVersion\": \"v2.6.0\"}}"
Дождитесь завершения обновления подчиненного кластера
kubectl get cluster.provisioning.bootsman.tech ${cluster_name} -n ${namespace} -o jsonpath='{.status.conditions[?(@.type=="Ready")].status}'
True


