2.5.5
Требования к обновлению
- Доступ до harbor.bootsman.host для обновления или выгрузки образов в ваш локальный регистри
- Наличие активной лицензии
- Наличие дистрибутивов:
bootsmanctl 2.5.5
- Наличие списка образов для выгрузки.
- Наличие в управляющем кластере 3 мастеров и 3 воркеров.
- Для baremetal обеспечьте как минимум одну свободную ноду.
- Все кластеры должны иметь версию 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.
Скачивание выполните командой:
./mirror.sh v2.5.5.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.5.5 и нажмите "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.5.5\"}}"
Дождитесь завершения обновления подчиненного кластера
kubectl get cluster.provisioning.bootsman.tech ${cluster_name} -n ${namespace} -o jsonpath='{.status.conditions[?(@.type=="Ready")].status}'
True


