Proxmox Upgrade from 5.x to 6.0

назад

Оригинал статьи по обновлению proxmox

Proxmox VE 6.х появилось несколько новых крупных объектов. Тщательно спланируйте обновление, сделайте и проверьте резервные копии перед началом и тщательно протестируйте. В зависимости от существующей конфигурации может потребоваться несколько шагов вручную, включая некоторое время простоя.

Примечание: перед началом процесса обновления всегда требуется действительная и проверенная резервная копия. Проверьте резервную копию заранее в тестовой лабораторной установке.

Если система настроена и/или использует дополнительные пакеты или любые другие сторонние репозитории / пакеты, убедитесь, что эти пакеты также обновлены и совместимы с Debian Buster.

В общем, есть два способа обновить Proxmox VE 5.X система для Proxmox VE 6.икс:

Новая установка на новом оборудовании (и восстановление виртуальных машин из резервной копии)
Обновление на месте через apt (шаг за шагом)

В обоих случаях после обновления требуется очистить кэш браузера и перезагрузить страницу GUI.

Новая установка

Резервное копирование всех виртуальных машин и контейнеров на внешнее хранилище (см. раздел резервное копирование и восстановление).
Резервное копирование всех файлов в /etc (требуется: файлы в /etc/пве, а также как /etc/passwd и в /etc/сети/interfaces или /etc/файл resolv.conf, а также все, что отклоняется от установки по умолчанию)
Установите Proxmox VE из ISO (это приведет к удалению всех данных на существующем хосте).
Перестроить кластер, если это применимо.
Восстановите файл / etc/pve / storage.cfg (это сделает доступным внешнее хранилище, используемое для резервного копирования).
Восстановление конфигурации брандмауэра /etc/pve/ firewall /и/etc/pve/nodes/<node> / host.прошивки (если применимо).
Восстановление полных виртуальных машин из резервных копий (см. раздел резервное копирование и восстановление).

Администраторы, которым удобно работать с командной строкой, могут выполнить процедуру в обход резервного копирования и восстановления при обновлении, если все виртуальные машины/CTs находятся на одном общем хранилище.

Обновление на месте

Обновления на месте выполняются с помощью apt. Знакомство с apt требуется для продолжения работы с этим механизмом обновления.

Предварительное условие

Обновление до последней версии Proxmox VE 5.4.
Надежный доступ ко всем настроенным хранилищам.
Учетная запись root должна иметь набор паролей (которые вы помните). Действительно, в процессе обновления пакет sudo будет удален, и вы не сможете снова войти в систему как root, если у этого последнего нет установленного пароля
Здоровый кластер.
Допустимая и проверенная резервная копия всех виртуальных машин и CTs (в случае, если что-то пойдет не так).
Правильная конфигурация репозитория.
По крайней мере 1 ГБ свободного места на диске в корневой точке монтирования.
Пакет: обновление кластера Цефов в Наутилус после обновления: следовать инструкции Цеф светящиеся в Наутилус
Проверьте известные проблемы обновления

Тестирование обновления

Тест обновления может быть легко выполнен с помощью автономного сервера в первую очередь. Установите Proxmox VE 5.4 ISO на некотором тестовом оборудовании; затем обновите эту установку до последней дополнительной версии Proxmox VE 5.4 (см. репозитории пакетов). Чтобы максимально точно воспроизвести производственную установку, скопируйте или создайте все соответствующие конфигурации на тестовой машине. Затем запустите обновление. Также можно установить Proxmox VE 5.4 в виртуальной машине и протестировать обновление в этой среде.

Действия шаг за шагом

Следующие действия необходимо выполнить в командной строке каждого узла Proxmox VE в вашем кластере (через консоль или ssh; предпочтительно через консоль, чтобы избежать прерывания ssh-соединений). Помните: прежде чем продолжить, убедитесь, что создана допустимая резервная копия всех виртуальных машин и CTs.

Постоянно используйте сценарий контрольного списка pve5to6

Небольшая Контрольная программа с именем pve5to6 включена в последние пакеты Proxmox VE 5.4. Программа будет предоставлять подсказки и предупреждения о потенциальных проблемах до, во время и после процесса обновления. Можно вызвать его, выполнив:

pve5to6

Этот скрипт только проверяет и сообщает вещи. По умолчанию никакие изменения в системе не вносятся, и поэтому ни одна из проблем не будет автоматически исправлена. Следует иметь в виду, что Proxmox VE может быть сильно настроен, поэтому скрипт может не распознать все возможные проблемы конкретной настройки!

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

Кластер: всегда обновляйте до Corosync 3 сначала

С Corosync 3 формат on-the-wire изменился. Теперь он несовместим с Corosync 2.x потому что он отключил базовый многоадресный стек UDP с помощью kronosnet. Файлы конфигурации, созданные Proxmox VE с версией 5.2 или новее, уже совместимы с новым Corosync 3.x (по крайней мере, достаточно для обработки обновления без каких-либо проблем).

Важное примечание: перед обновлением сначала остановите все службы управления HA-независимо от того, какой способ вы выберете для обновления до Corosync 3. Остановка всех служб HA гарантирует, что никакие узлы кластера не будут ограждены во время обновления. Это также означает, что в течение короткого периода обновления Corosync не будет никаких функций HA.

Во-первых, убедитесь, что все предупреждения, которые сообщаются сценарием контрольного списка и не связаны с Corosync, исправлены или определены как доброкачественные/ложные негативы. Затем остановите локальный менеджер ресурсов «pve-ha-lrm» на каждом узле. Только после того, как они были остановлены, также остановите диспетчер ресурсов кластера «pve-ha-crm» на каждом узле; используйте GUI (Node -> Services) или CLI, выполнив следующую команду на каждом узле:

systemctl stop pve-ha-lrm

Только после того, как выше было сделано для всех узлов, выполните следующие действия на каждом узле:

systemctl stop pve-ha-crm

Затем добавьте репозиторий Proxmox Corosync 3 Stretch:

echo «deb http://download.proxmox.com/debian/corosync-3/ stretch main» > /etc/apt/sources.list.d/corosync3.list

и выполните

apt update

Затем убедитесь еще раз, что будут обновлены или установлены только corosync, kronosnet и их библиотеки:

apt list —upgradeable

Listing… Done

corosync/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1]

libcmap4/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1]

libcorosync-common4/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1]

libcpg4/stable 3.0.2-pve2~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-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1]

libvotequorum8/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1]

Существует два способа продолжить обновление Corosync:

  • Обновляйте узлы один за другим. Изначально, обновленный узел(ы) не будет кворума самостоятельно. После обновления по крайней мере половины узлов плюс один обновленный раздел станет quorate, а еще не обновленный раздел потеряет кворум. После того, как все узлы были модернизированы, они должны снова формировать здорового кворума кластера.
  • Обновите все узлы одновременно, например, используя параллельный ssh / screen / tmux.

Примечание: изменения в любой VM / CT или кластере в целом не допускаются на время обновления!

Предварительно загрузите обновление до corosync-3 на всех узлах, например, с помощью:

apt dist-upgrade —download-only

Затем запустите фактическое обновление на всех узлах:

apt dist-upgrade

В любой момент этой процедуры локальное представление кворума кластера на узле можно проверить с помощью:

pvecm status

После обновления до Corosync 3.x выполняется на всех узлах, перезапускает локальный диспетчер ресурсов и диспетчер ресурсов кластера на всех узлах:

systemctl start pve-ha-lrm

systemctl start pve-ha-crm

Важных виртуальных машин и контейнеров

Если какие-либо виртуальные машины и CTs должны продолжать работать в течение всего периода обновления, перенесите их с узла, который в настоящее время обновляется. Миграция виртуальной машины или CT из старой версии Proxmox VE в более новую версию всегда будет работать. Миграция с более новой версии Proxmox VE на более старую версию может работать, но в целом не поддерживается. Помните об этом при планировании обновления кластера.

Обновление настроенных репозиториев APT

Во-первых, убедитесь, что система работает с использованием последних пакетов Proxmox VE 5.4:

apt update

apt dist-upgrade

Обновите все записи репозитория Debian до Buster.

sed -i ‘s/stretch/buster/g’ /etc/apt/sources.list

Отключить все Proxmox VE 5.х хранилищ. Это включает в себя репозиторий PvE-enterprise, репозиторий PvE-no-subscription и репозиторий pvetest.

Для этого добавьте символ#, чтобы закомментировать эти репозитории в /etc/apt/sources.список.d / pve-предприятие.список и / etc/apt / sources.файл списка. Увидеть Package_Repositories

Добавьте репозиторий пакетов Proxmox VE 6

echo «deb https://enterprise.proxmox.com/debian/pve buster pve-enterprise» > /etc/apt/sources.list.d/pve-enterprise.list

Репозиторий без подписки см. В разделе репозитории пакетов. Это может быть что-то вроде:

sed -i -e ‘s/stretch/buster/g’ /etc/apt/sources.list.d/pve-install-repo.list

(Только Ceph) заменить ceph.com репозитории с proxmox.com хранилища ceph

echo «deb http://download.proxmox.com/debian/ceph-luminous buster main» > /etc/apt/sources.list.d/ceph.list

Если есть строка backports, удалите ее — в настоящее время обновление не было протестировано с пакетами из установленного репозитория backports.

Обновление хранилища данных :

apt update

Обновите систему до Debian Buster и Proxmox VE 6.0

Это действие займет некоторое время в зависимости от производительности системы — до 60 мин и более. На высокопроизводительных серверах с SSD-накопителем dist-upgrade можно завершить за 5 минут.

Начните с этого шага, чтобы получить начальный набор обновленных пакетов:

apt dist-upgrade

Во время выполнения описанных выше действий вам может быть предложено утвердить некоторые из новых пакетов, заменяющих файлы конфигурации. Они не имеют отношения к обновлению Proxmox VE, поэтому вы можете выбрать, что вы хотите сделать.

Перезагрузите систему, чтобы использовать новое ядро PVE

После обновления Proxmox VE

для кластеров

удалите дополнительный репозиторий corosync 3, используемый для обновления corosync на PVE 5 / Stretch, если это еще не сделано. Если вы выполнили следующие действия, вы можете просто выполнить следующую команду, чтобы сделать это:

rm /etc/apt/sources.list.d/corosync3.list

Для Hyper сошелся Цеф

Теперь вы должны обновить кластер Ceph до выпуска Nautilus, следуя статье Ceph Luminous до Nautilus.

Вопросы контрольного перечня
пакет proxmox-ve слишком стар

Проверьте настроенные записи репозитория пакетов (см. Package_Repositories) и запустите

apt update

с последующим

apt dist-upgrade

чтобы получить последнюю версию PVE 5.X пакеты перед обновлением до PVE 6.икс
corosync 2.X установлен, обновление на уровне кластера до 3.х нужен!

См. раздел Обновление до corosync 3 сначала


Известные проблемы обновления

По крайней мере, текущая версия Gluster (6.5-1, доступна по адресу gluster.org) имеет конфликты с нашими пакетами. Обновление должно быть сделано с опцией

-o Dpkg::Options::=»—force-overwrite»

если эта версия установлена. Это может быть верно и для будущих версий.


Устранение неисправностей

  • Неспособность перейти на «бустер»

Убедитесь, что конфигурация репозитория для Buster верна.

Если произошел сбой сети и обновление было сделано частично попробуйте исправить ситуацию с помощью

apt -f install

  • Не удается загрузить из-за сбоя grub

См. Раздел Восстановление После Сбоя Grub

назад