Тема
Требования к обновлению
- Доступ до harbor.bootsman.host для обновления или выгрузки образов в ваш локальный регистри
- Наличие активной лицензии
- Наличие дистрибутивов:
bootsmanctl 2.4.0
- Наличие списка образов для выгрузки.
- Наличие в управляющем кластере 3 мастера и 3 воркера
- Для baremetal обеспечьте как минимум одну свободную ноду.
- Все кластера должны иметь версию Kubernetes 1.27.6+
Внимание
При обновлении управляющего и подчинённого кластера с версии 2.3.1 на соответствующем кластере будет пересозданы машины с ролью control-plane.
Внимание
При обновлении подчинённого кластера с версии 2.3.1 на соответствующем кластере будет пересозданы машины с ролью worker.
Внимание
В конфигурации добавился новый обязательный параметр "VSPHERE_CONFIG_CLUSTER", соответствующий имени кластера vSphere. Для управляющего кластера следует добавить его в ваш файл конфигурации.
Заметка
Bootsman 2.4.0 более не поддерживает Kubernetes 1.27.4. Если вы обладаете кластерами, имеющими данную версию, потребуется сначала обновить версию Kubernetes. Для управляющего кластера используйте bootsmanctl версии установленного кластера. Для подчинённого кластера воспользуйтесь стандартной инструкцией обновления.
Подготовка
Загрузка образов
Заметка
Данный пункт нужен только для airgap установки. Если вы используете harbor.bootsman.host, пропустите эти действия и приступите к обновлению агентов.
Используя полученный список и скрипт, выгрузите из harbor.bootsman.host указанные образы и разместите их в вашем хранилище образов.
Для загрузки требуемых образов узнайте версию установленного кластера с помощью команды:
bash
kubectl get deployment -n default -o wide | grep museum | awk '{print $7}' | awk -F":" '{print $2}'С дистрибутивом есть файлы с именем вида "version_${bootsman_version}".
В каждом списке содержатся необходимые образы для конкретной версии bootsman.
Скачивание выполните командой:
bash
./mirror.sh version_2.4.0Обновление управляющего кластера
Для обновления перенесите новый дистрибутив на АРМ администратора в директорию, содержащую данные об установке.
Далее примените файлы конфигурации .env и запустите обновление.
bash
./bootsmanctl management update ${cluster_name} -k ${k8s-version}Заметка
Переменные:
${cluster_name}- имя кластера, данное ему при установке;${k8s-version}- версия k8s, для текущего релиза доступны: v1.27.6, v1.28.4, v1.29.3
Обновление будет продолжительным ~30 минут, время может варьироваться в зависимости от выделенных ресурсов.
Обновление подчинённого кластера
Обновление подчинённого кластера происходит с помощью kubectl.
Используя kubeconfig управляющего кластера, выполните команды:
Запрос списка всех подчинённых кластеров:
bash
kubectl get cluster.provisioning.bootsman.tech -AИз полученного списка получите имя подчинённого кластера(${name}) и его неймспейс (${namespace})
Обновление:
bash
kubectl edit cluster.provisioning.bootsman.tech ${name} -n ${namespace}Установите значения bootsmanVersion: v2.4.0 для обновления bootsman до соответствующей версии и версию kubernetes, которую поддерживает дистрибутив (v1.27.6, v1.28.4, v1.29.3). Для vSphere нужно добавить новое поле. Для Yandex и Vsphere потребуется указать новый образ.
Для Yandex идентификатор - id, который можно получить в инструкции.
Для vSphere - имя образа, как получить или создать образ можно узнать из инструкции.
После успешного обновления ControlPlane обновите воркеры
bash
kubectl edit workerpool.provisioning.bootsman.tech ${name} -n ${namespace}Установите id или имя образа, а также верию k8s