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

Обновление до 3.2: Center старой линейки

Какая страница ваша

Сценарий зависит от того, какой Center на кластере. На mgmtVM:

pkg info -e vStack-control-pane && echo старая || echo новая

старая — эта страница. новая — «Обновление до 3.2: Center новой линейки».

На кластере с Center старой линейки обновляются и узлы, и Center. Раздел рассчитан на инженеров, знающих vStack:

  • узлы vStack OS 3.0 → 3.2.0;
  • Center старой линейки (vStack-control-pane 0.33, FreeBSD 14.1, PostgreSQL 14) → Center 3.2.0;
  • включение internal fabric — сети, по которой диск ВМ отдаётся с узла-владельца пула на узел, где ВМ запущена.

Итог — все ВМ, кроме Windows, работают на NVMe и запускаются на любом узле кластера. Windows переводится отдельной работой.

Кластер, где фабрика уже работает, узлы 2.x или mgmtVM на FreeBSD 13 обновляются по другому плану, вместе с технической поддержкой vStack.

Как пройти обновление​

Всё делается по странице «Шаги»: 51 шаг по порядку, у каждого — где выполнять, команда и что должно получиться. Пояснения, разбор сбоев и откат — в «Справочнике». Windows-ВМ на NVMe переводятся позже, отдельной работой: «Windows на NVMe».

КогдаШагиПростой
за 1–3 дня1–17, подготовканет
окно A18–29 на каждый узел, 1–1,5 ч на узелВМ пула при переносе — до 10 мин
окно B30–51: Center, эджи, фабрика; 2–3 ч и около минуты на эджпортал и API — 30–60 мин, управление ВМ — около часа
через 2–3 дняуборканет

Окна A и B лучше разнести по дням.

Что в этом обновлении не так, как обычно​

  • После обновления Center все ВМ, кроме Windows, получают диск NVMe. Linux-гости из нескольких старых образов без драйвера не загрузятся — драйвер добавляют заранее (шаг 5).
  • Эджи на старом образе v7 после этого не загрузятся — их переводят на образ v8 сразу после обновления Center (шаг 45).
  • Фабрика — сеть, по которой диск ВМ отдаётся на другой узел, — работает в VLAN подложки VXLAN (vlan40), как на кластере, установленном с 3.2. Новый VLAN не нужен; адреса пулов готовятся до обновления узлов (шаг 14). На тестовом кластере переход проверялся с фабрикой на отдельных портах — на первом кластере проверка фабрики (шаг 50) обязательна.
  • Строку раннего микрокода снимают до обновления узлов, иначе узел может не загрузиться (шаг 7).
  • Внешние системы, создающие ВМ через API Center, нужно перевести на новые номера образов (шаги 16, 38).

Заранее (за 1–2 недели)​

ЧтоЗачем
Доступ узлов и mgmtVM к repo.vstack.com — заявка в техническую поддержку vStack с адресами выходабез него нет ни update.sh, ни пакетов Center, ни образа эджа
Консоль BMC (iKVM) каждого узлаузел может не загрузиться после обновления
Согласие владельцев Linux-ВМ из списка образов на добавление драйвера NVMe; уведомление клиентов об окнахшаги 5 и 17
Владельцы внешних систем, создающих ВМ через API Centerшаги 16 и 38

Решения по умолчанию​

ВопросПо умолчанию
Владелец Linux-ВМ не дал согласия на драйвер (или ВМ остановлена)после обновления Center ВМ возвращается на virtio-blk (шаг 37) и запускается только на узле своего пула
Память под SPDK (contigmem)8 ГиБ на узел
Windows на NVMeотдельной работой, с согласия владельцев

Файлы​

Всё одним архивом — upgrade-3.0-to-3.2-tools.tar.gz, скачивание и проверка — шаг 2. Состав архива:

ФайлЧтоГде запускается
vapi.shвызов API Center: vm-list, vms-stop, vms-start, ожидание состояния ВМрабочая машина
dupcheck.shпоиск ВМ, работающих в двух копияхрабочая машина
vstackos.config-backup.shснятие конфигурации узла («Снятие конфигурации узла»)узел
esp-sync.shзагрузчик на второй системный диск узлаузел
edge-reimage.sh, edge-reimage.README.mdперевод эджей на образ v8 без пересозданияузел-владелец пула
pf-fabric.confфильтр портов фабрики, с заглушками ЗАМЕНИТЬ_…узел
nvmf-add.jqдобавляет адреса фабрики в конфиг ccrdрабочая машина
mgmtvm-update.sh, mgmtvm-update-oldgen.shобновление Center старой линейки до 3.2.0mgmtVM
win-nvme-switch.pyснятие запрета драйвера NVMe на томе выключенной Windows-ВМузел-владелец пула
win-nvme-flag.sqlсмена флага nvme у переведённых Windows-ВМmgmtVM
postcheck.ps1проверка дисков внутри Windowsгость Windows
SHA256SUMSконтрольные суммы всех файлов—

update.sh узлов и образ эджа v8 берутся из repo.vstack.com с проверкой подписи и sha256 (шаги 9 и 13).