Перейти к содержимому

Требования к обновлению ​

  • Доступ до harbor.bootsman.host для обновления или выгрузки образов в ваш локальный регистри
  • Наличие активной лицензии
  • Наличие дистрибутивов:
    • bootsmanctl 2.5.4
  • Наличие списка образов для выгрузки.
  • Наличие в управляющем кластере 3 мастеров и 3 воркеров.
  • Для baremetal обеспечьте как минимум одну свободную ноду.
  • Все кластеры должны иметь версию Kubernetes 1.27.6+.

Подготовка ​

Загрузка образов ​

Используя полученный список и скрипт, выгрузите из harbor.bootsman.host указанные образы и разместите их в вашем хранилище образов.

Для загрузки требуемых образов узнайте версию установленного кластера с помощью команды:

bash
kubectl get deployment -n default -o wide | grep museum | awk '{print $7}' | awk -F":" '{print $2}'

С дистрибутивом есть файл с именем вида "${bootsman_version}.yaml".

В списке содержатся необходимые образы для конкретной версии bootsman.

Скачивание выполните командой:

bash
./mirror.sh v2.5.4.yaml

Подготовка конфигурации ​

Воспользуйтесь файлом конфигурации, который использовался для обновления или инсталяции до версии v2.5.0

Внимание

Если в файле конфигурации указаны настройки модулей в разделе addons, кластер будет приведен в соотвествии с файлом конфигурации.
В случае изменения конфигурации модулей, следует удалить блок addons:

bash
yq -i 'del(.addons)' bootsmanctl.config.yaml

Обновление управляющего кластера ​

Для обновления перенесите новый дистрибутив на АРМ администратора в директорию, содержащую данные об установке.

Запустите обновление.

bash
./bootsmanctl management update {++${cluster-name}++} -c bootsmanctl.config.yaml

Где: - ${cluster-name} - имя кластера, данное ему при установке.

Обновление будет продолжительным (около 30 минут), время может варьироваться в зависимости от выделенных ресурсов.

Обновление подчинённого кластера ​

Web UI ​

Войдите в Web-интерфейс bootsman и на главной выберете "Manage"

Manage Clusters

Выберите подчиненный кластер для обновления и откройте его для редактирования

Manage Clusters

Выберете версию v2.5.4 и нажмите "Apply"

Manage Clusters

Yaml-манифесты ​

Обновление подчинённого кластера происходит с помощью kubectl.

Используя kubeconfig управляющего кластера, выполните команды:

Запрос списка всех подчинённых кластеров и воркерпулов:

bash
kubectl get cluster.provisioning.bootsman.tech -A
kubectl get workerpool.provisioning.bootsman.tech -A

Из полученного списка получите имя подчинённого кластера(<mark>${cluster_name}</mark>) и его неймспейс (<mark>${namespace}</mark>)

Обновление:

bash
kubectl patch cluster.provisioning.bootsman.tech {++${cluster_name}++} -n {++${namespace}++} --type=merge --patch="{\"spec\": {\"bootsmanVersion\": \"v2.5.4\"}}"

Дождитесь завершения обновления подчиненного кластера

bash
kubectl get cluster.provisioning.bootsman.tech {++${cluster_name}++} -n {++${namespace}++} -o jsonpath='{.status.conditions[?(@.type=="Ready")].status}'
True

Команда Боцман