Статья с Proxmox Wiki здесь.
Исходные данные:
- кластер из 3х нод версий 5.3-7, 5.4-8, 5.4-13
- 20+ виртуальных машин
- заранее сделаны бэкапы всех важных машин, как описано здесь.
Процесс:
- Останавливаю все виртуальные машины ноды
- Для виртуалок, у которых в параметрах включен автозапуск, выключаю эту опцию (будет много перезагрузок):
Птицу необходимо снять - На всякий случай перегружаю все ноды
- Обновляю ноды до актуальной версии ветки 5.x, используя веб интерфейс,
но ничто не запрещает использовать консоль
Было Стало - В консоли каждой из нод делаю резервную копию каталога
/etc
и сохраняю на какой то удаленный сервер удобным способом (у меня SFTP)cd tar -czvf nodeNameetc.tar.gz /etc
- Запускаю на каждой ноде
pve5to6
это утилита тестирования перехода
Вывод пришлось сократить, но общая суть понятна: смотрим замечания, при необходимости устраняем, главная претензия к версии#pve5to6 = CHECKING VERSION INFORMATION FOR PVE PACKAGES = Checking for package updates.. PASS: all packages uptodate Checking proxmox-ve package version.. PASS: proxmox-ve package has version >= 5.4-2 Checking running kernel version.. PASS: expected running kernel '4.15.18-24-pve'. = CHECKING CLUSTER HEALTH/SETTINGS = PASS: systemd unit 'pve-cluster.service' is in state 'active' PASS: systemd unit 'corosync.service' is in state 'active' PASS: Cluster Filesystem is quorate. Analzying quorum settings and state.. INFO: configured votes - nodes: 3 INFO: configured votes - qdevice: 0 INFO: current expected votes: 3 INFO: current total votes: 3 Checking nodelist entries.. PASS: pve1: ring0_addr is configured to use IP address '192.168.***.***' PASS: pve4: ring0_addr is configured to use IP address '192.168.***.***' PASS: pve3: ring0_addr is configured to use IP address '192.168.***.***' Checking totem settings.. PASS: Corosync transport set to implicit default. PASS: Corosync encryption and authentication enabled. INFO: run 'pvecm status' to get detailed cluster status.. = CHECKING INSTALLED COROSYNC VERSION = FAIL: corosync 2.x installed, cluster-wide upgrade to 3.x needed! = CHECKING HYPER-CONVERGED CEPH STATUS = SKIP: no hyper-converged ceph setup detected! = CHECKING CONFIGURED STORAGES = ................................. = SUMMARY = TOTAL: 30 PASSED: 24 SKIPPED: 3 WARNINGS: 2 FAILURES: 1
corosync
, этим и займемся. - Останавливаем все функкции высокой доступности на всех нодах
Добавляем репозиторийsystemctl stop pve-ha-lrm systemctl stop pve-ha-crm
corosync 3
echo "deb http://download.proxmox.com/debian/corosync-3/ stretch main" > /etc/apt/sources.list.d/corosync3.list
- Внимание!
- Дальнейшее лучше выполнять не в веб интерфейсе, так как кластер будет терять кворум.
Затемapt update
Далее на всех нодах запускаем загрузку пакетов без установки# apt list --upgradable Listing... Done corosync/stable 3.0.2-pve4~bpo9 amd64 [upgradable from: 2.4.4-pve1] libcmap4/stable 3.0.2-pve4~bpo9 amd64 [upgradable from: 2.4.4-pve1] libcorosync-common4/stable 3.0.2-pve4~bpo9 amd64 [upgradable from: 2.4.4-pve1] libcpg4/stable 3.0.2-pve4~bpo9 amd64 [upgradable from: 2.4.4-pve1] libqb0/stable 1.0.5-1~bpo9+2 amd64 [upgradable from: 1.0.3-1~bpo9] libquorum5/stable 3.0.2-pve4~bpo9 amd64 [upgradable from: 2.4.4-pve1] libvotequorum8/stable 3.0.2-pve4~bpo9 amd64 [upgradable from: 2.4.4-pve1]
И проводим установку на всех нодах по очереди:apt dist-upgrade --download-only
В процессе будет происходить потеря кворума кластера, смотреть:apt dist-upgrade -y
После восстановления кворума запускаем остановленные ранее локальный и кластерные менеджеры ресурсов на каждой из нод:pvecm status
systemctl start pve-ha-lrm systemctl start pve-ha-crm
- В файле
/etc/apt/sourсes.list
комментируем все строки, относящиеся кdebian stretch
и прописываем дляdebian buster
получается как то так:
Аналогично правим файлы в каталоге#deb http://ftp.debian.org/debian stretch main contrib #deb http://ftp.debian.org/debian stretch-updates main contrib # security updates #deb http://security.debian.org stretch/updates main contrib deb http://ftp.debian.org/debian buster main contrib #deb http://ftp.debian.org/debian buster main deb http://ftp.debian.org/debian buster-updates main contrib # security updates deb http://security.debian.org buster/updates main contrib
/etc/apt/sourses.list.d
/etc/apt/sources.list.d/pve-enterprise.list:
Созданный при обновлении#deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise #deb http://download.proxmox.com/debian stretch pve-no-subscription #deb https://enterprise.proxmox.com/debian/pve buster pve-enterprise deb http://download.proxmox.com/debian buster pve-no-subscription
corosync
файл/etc/apt/sources.list.d/corosync3.list
стоит удалить
Ceph в данный момент не использую, поэтому не обновляю, кому актуально - вам сюда. - Обновляем, выполнив на каждой из нод:
После загрузки пакетов видим предупреждение:apt update apt dist-upgrade
Жмем EnterFetched 453 MB in 4min 8s (1,824 kB/s) W: (pve-apt-hook) !! ATTENTION !! W: (pve-apt-hook) You are attempting to upgrade from proxmox-ve '5.4-2' to proxmox-ve '6.1-2'. Please make sure to read the Upgrade notes at W: (pve-apt-hook) https://pve.proxmox.com/wiki/Upgrade_from_5.x_to_6.0 W: (pve-apt-hook) before proceeding with this operation. W: (pve-apt-hook) W: (pve-apt-hook) Press enter to continue, or C^c to abort.
после чего нам предложат почитать изменения в версииapt
, на всякий случай напоминаю, что из vi выходят с помощью:q
далее идет тривиальная процедура, напоминающая установку debian (с чего бы это?) отвечаю 'Y' на все вопросы, кроме изменения конфига синхронизации времени, сорс листа, одним словом надо читать, что Вам предлагают изменить - После достаточно долгого процесса и перезагрузки нод, наблюдаем в веб интерфейсе у каждой ноды следующее:
- Возвращаем опции автозапуска и запускаем виртуальные машины
Спасибо, было нужно!
ОтветитьУдалить