Тема
Требования к обновлению
- Доступ до harbor.bootsman.host для обновления или выгрузки образов в ваш локальный регистри
- Наличие активной лицензии
- Наличие дистрибутивов:
bootsmanctl 2.4.1
- Наличие списка образов для выгрузки.
- Наличие в управляющем кластере 3 мастера и 3 воркера
- Для baremetal обеспечьте как минимум одну свободную ноду.
- Все кластера должны иметь версию Kubernetes 1.27.6+
Внимание
При обновлении управляющего и подчинённого кластера с версии 2.3.1 на соответствующем кластере будет пересозданы машины с ролью control-plane.
Подготовка
Загрузка образов
Используя полученный список и скрипт, выгрузите из 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.1Обновление управляющего кластера
Для обновления перенесите новый дистрибутив на АРМ администратора в директорию, содержащую данные об установке.
Далее примените файлы конфигурации .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Из полученного списка получите имя подчинённого кластера(<mark>${name}</mark>) и его неймспейс (<mark>${namespace}</mark>)
Обновление:
bash
kubectl edit cluster.provisioning.bootsman.tech {++${name}++} -n {++${namespace}++}Установите значения bootsmanVersion: v2.4.1 для обновления bootsman до соответствующей версии и версию kubernetes, которую поддерживает дистрибутив (v1.27.6, v1.28.4, v1.29.3). Для vSphere нужно добавить новое поле. Для Yandex, Vsphere и VK потребуется указать новый образ.
Для Yandex идентификатор - id, который можно получить в инструкции.
Для vSphere - имя образа, как получить или создать образ можно узнать из инструкции.
Для VK идентификатор - id, который можно получить в инструкции.
После успешного обновления ControlPlane обновите WorkerPools. Получить список WorkerPools в нужном namespace можно командой в управляющем кластере:
bash
kubectl get workerpools.provisioning.bootsman.tech -n {++${namespace}++}Определите необходмый workerpool и измените параметры следующей командой:
bash
kubectl edit workerpools.provisioning.bootsman.tech {++${name}++} -n {++${namespace}++}Установите id или имя образа, а также верию k8s