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

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

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

Обновление до предыдущих версий ​

В случае, если вы пропустили обновления, следует обновить до каждого из релизов, используя соответствующую версию дистрибутива.

На странице История изменений вы можете ознакомится с изменениями и перейти на страницу обновления до соответствующей версии.

Подготовка ​

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

Используйте дистрибутив bootsmanctl для копирования образов в ваше хранилище

Скачайте дистрибутив:

./bootsmanctl mirror registry download -r=v3.4.3

Сохраните его в вашем хранилище:

(1)./bootsmanctl mirror registry upload -url {++REGISTRY_PATH++} -u {++REGISTRY_USERNAME++} -p {++REGISTRY_PASSWORD++} -r v3.4.3
  1. REGISTRY_PATH - URL хранилища образов REGISTRY_USERNAME - имя пользователя в вашем хранилище REGISTRY_PASSWORD - пароль пользователя в вашем хранилище

Ошибки передачи данных

В случае появления ошибок передачи, повторите процедуру копирования.

2025/07/17 10:47:21 protocol error: received DATA after END_STREAM
2025/07/17 10:49:12 protocol error: received DATA after END_STREAM

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

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

Внимание

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

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

Внимание

При обновлении в исполнении baremetal необходимо наличие свободных машин в сети кластера, соответствующих минимальным требованиям, по одной на роли Master и Worker.

При обновлении на других провайдер убедитесь, что имеются свободные ресурсы для создания временных машин для обновления.

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

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

Выполните обновление конфигурации кластера:

./bootsmanctl management config migrate -c bootsmanctl.config.yaml

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

./bootsmanctl management update {++cluster-name++} -c bootsmanctl.config.yaml
  1. cluster-name - имя кластера, данное ему при установке.

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

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

Web UI ​

Войдите в Web-интерфейс bootsman и на главной выберете "Manage" для кластера, который требуется обновить.

ManageManage

Если кнопка обновления неактивна, потребуется удовлетворить некоторые зависимости модулей

DependencyDependency

После внесения правок в модули, кнопка становится активной Выберете версию v3.4.3 и нажмите "Apply"

UpdateUpdate

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\": \"v3.4.3\"}}"

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

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

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