Proxmox — яркий представитель систем, которые при должной настройке работают годами без перерыва. Максимальный аптайм моих серверов уже превысил три года — и это не предел. Да, он не идеален и до сих пор у него были недостатки, с которыми приходилось мириться. А вот недавно на официальном форуме была опубликована альфа-версия новой системы управления Proxmox Datacenter Manager — должно помочь! Что же это за софт? Давайте разбираться.

Перед тем как начнем — короткая справка для тех, кто Proxmox ни разу не использовал. Это система виртуализации с открытым исходным кодом, построенная на базе Debian GNU Linux. В составе KVM для традиционной виртуализации и LXC для контейнеров. Раньше применялся OpenVZ, но это было достаточно давно и вызывало приличное количество проблем.

Запустить Proxmox можно двумя способами. Первый — взять готовый образ с официального сайта и установить в качестве основной операционной системы на сервер. Там все заранее настроено, так что такой способ будет самым простым. После завершения установки и перезагрузки станет доступен веб-интерфейс управления (ну или API, если вы решили интегрировать его с собственными системами). Еще им можно рулить из локальной консоли и через SSH.

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

Кластер или не кластер

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

Все это возможно, когда ноды объединены в кластер, но есть одна неочевидная проблема. Для создания кластера используется система управления сообщениями corosync. В его составе есть очень важная служба votequorum, задача которой — подсчитывать «голоса» работающих узлов и определение наличия кворума. К тому же в ее обязанности входит предотвращение split-brain. Это когда часть узлов может отделиться от кластера и образовать собственные подкластеры, каждый из которых будет себя считать единственным. Такой ситуации нужно всячески избегать.

Еще votequorum решает вопросы пограничных случаев, например, когда количество узлов равно двум. Это особый режим работы, ведь формально кворум достигается только если обе ноды онлайн. Получается, что если любая из двух нод отключится, то и кворум будет потерян. Поэтому votequorum имеет особую настройку в случае с двумя нодами: она всегда принудительно сообщает corosync, что кворум есть. Казалось бы, это решает проблему, но на практике без третьего узла система не может надежно определить, какому из серверов передать управление в случае сбоя.

Поэтому, если вы планируете создавать кластер, он должен содержать в себе минимум три узла в одном сегменте сети, а это не всегда достижимо. Часто есть ситуации, когда имеется много одиночных узлов, которыми хочется управлять из одной точки, без необходимости включения их в кластер. До недавнего времени это было невозможно штатными средствами, но теперь есть решение — Proxmox Datacenter Management.

Установка и добавление узла

Proxmox Datacenter Management на момент написания этого текста находится в альфа-версии. Разработчики собрали загрузочный ISO-образ proxmox-datacenter-manager_0.1-ALPHA-1.iso, основанный на базе Debian Bookworm (12.8) с ядром Linux версии 6.8.12-5. Инсталлятор там точно такой же, как и в обычном Proxmox. После завершения установки и перезагрузки становится доступным веб-интерфейс по адресу:

https://[server_ip_address]:8443

Пусть вас не пугает надпись No valid subscription. Proxmox не ограничивает возможности системы виртуализации при этом. Просто своеобразное напоминание о том, что вы можете приобрести у них платную подписку на техническую поддержку и обновляться из Enterprise-репозитория. Пришла пора добавить первый Remote-сервер с помощью нажатия кнопки Add в соответствующем виджете.

Сам процесс добавления узла не слишком сложный. Он разбит на три части. Первая требует указания IP-адреса и «отпечатка пальца» (fingerprint) сервера. Посмотреть его можно непосредственно через веб-интерфейс добавляемого узла. Выберите имя узла — System — Certificates и дважды щелкните на самоподписанный сертификат для SSL (pve-ssl.pem). Откроется окно, в котором будет искомая строка:

Скопируйте это значение и вставьте его в соответствующее поле Proxmox Datacenter Manager. После этого нажмите кнопку Connect и дождитесь появления надписи Connection OK:

Теперь станет доступна кнопка Next — раньше она была неактивна. Она нужна для перехода в следующее окно ввода данных. Здесь нужно выбрать способ авторизации, ввести реквизиты доступа и имя подключаемого сервера, а потом нажать на кнопку Scan для проверки.

Если все данные введены правильно, появится надпись Scan OK, а кнопка Next позволит перейти в следующее окно:

Здесь можно добавить еще узлы или даже целые кластеры:

После завершения процесса добавленный узел будет отображен в главном меню. Вы увидите его дашборд, словно находитесь в его собственном веб-интерфейсе:

Миграция между нодами

Давайте посмотрим на самую востребованную функцию, которая обычно работает только в кластере — миграцию виртуальных машин. Для этого мы добавим в интерфейс вторую ноду (node2) и перенесем машину с одного узла на другой. Вне кластера такое раньше делалось только с помощью «костылей». На втором узле создавалась пустая виртуальная машина с точно такими же характеристиками и разово запускалась или останавливалась для того, чтобы Proxmox создал пустой файл жесткого диска.

Потом нужно было каким-либо способом снять образ накопителя виртуальной машины и перенести на другой узел взамен пустого у новой ВМ. Только теперь можно было останавливать машину на первом узле и стартовать ее на втором. Не самый удобный, но вполне рабочий способ переноса. Теперь же, с помощью Proxmox Datacenter Manager, это делается значительно проще.

Выберите узел, с которого нужно перенести виртуальную машину. Напротив нужной есть кнопка с пиктограммой бумажного самолетика. Откроется окно, в котором можно выбрать необходимые параметры. Для примера выполним миграцию с node1 на node2. Выберите node2 в качестве Target Remote, проверьте, что в Target Storage достаточно места, и нажмите кнопку Migrate:

Спустя несколько секунд начнется процесс создания новой виртуальной машины и копирование данных на другой узел:

Когда задание будет завершено, вы увидите надпись TASK OK:

Виртуальная машина была успешно запущена на node2. Тем же образом можно переносить и LXC-контейнеры:

Что в итоге

Proxmox Datacenter Manager демонстрирует отличный потенциал даже в самой сырой альфа-версии. Пройдет еще немало времени, прежде чем она выйдет в релиз. Управлять разрозненными нодами и кластерами станет значительно проще. Также это позволит в реальном времени отслеживать нагрузку на них и без проблем переносить машины и контейнеры с одного узла на другой.

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

Надеюсь, уже скоро этот софт станет такой же неотъемлемой частью экосистемы Proxmox, как в свое время стал Proxmox Backup Server. Ну а приверженность разработчиков к миру программного обеспечения с открытым исходным кодом позволит пользоваться этим продуктом всем желающим.

А вы уже попробовали новинку? Ждем вас в комментариях.

Комментарии (12)


  1. ereinion
    13.01.2025 10:33

    С подачи одного из друзей, приближенных к вендору использую PDM в домашней лабе (2 сервера PVE в отдельных сетях - один для домашних сервисов, другой - песочница). Да, пока сыроват интерфейс и не хватает фич, кривовато отображается статистика. Но потенциал заметен, и главное - миграция работает как часы.


  1. werter_l
    13.01.2025 10:33

    Вдруг, кому пригодится

    https://forum.netgate.com/topic/163435/proxmox-ceph-zfs-pfsense-%D0%B8-%D0%B2%D1%81%D0%B5-%D0%B2%D1%81%D0%B5-%D0%B2%D1%81%D0%B5-%D1%87%D0%B0%D1%81%D1%82%D1%8C-2


  1. YaKrabik
    13.01.2025 10:33

    Я не вижу никакой разницы с VE. Там и раньше можно было создавать кластеры и перемещать машинки между ними. И окна абсолютно такие же при этом появляются.

    DM -- это VE с вырезанным функционалом управления машинами?


    1. ereinion
      13.01.2025 10:33

      Это надстройка над PVE, которая позволяет получить единый интерфейс управления несколькими кластерами или отдельными серверами. Ключевое - не требуется собирать стоящие в сильно разных местах инсталляции в единый кластер.


    1. KillerLex
      13.01.2025 10:33

      Я так понимаю это что-то типа VMware vCenter


  1. Rekken
    13.01.2025 10:33

    Максимальный аптайм моих серверов уже превысил три года

    У меня для вас плохие новости - обновлять ядро с перезагрузкой системы стоило бы чуть почаще.


    1. falcon4fun
      13.01.2025 10:33

      На сервере чуть больше всего обновлять надо, нежели ОС :)


    1. sukharichev
      13.01.2025 10:33

      За это время я не помню ни одной RCE именно в ядре, так что для домашней лабы, или даже прода в малом\среднем бизнесе вполне допустимо.


  1. dtmse
    13.01.2025 10:33

    Миграция виртуальных машин "на живую" (без прерывания работы) поддерживается?


    1. YaKrabik
      13.01.2025 10:33

      да. мы как-то софтовый роутер переносили. простой меньше секунды оказался (по версии проксмоса что-то по типу 300мс)


  1. falcon4fun
    13.01.2025 10:33

    Люблю, когда люди кичатся своими пиписьками, ой, аптаймами по 3-5 лет.

    Сразу видно, что: апдейтов фирмвар: ipmi, bios, диски, рейд контроллер, сетевухи, бекплейн, psu (и куча других) за это время не было. Апдейтов гипервизора за эти годы не было. Дрова никто не обновлял. Тестирования фейловера кластера за эти годы не было. Даже банальные действия, вроде апдейта сервера Veeam легко требуют ребута нод.


    1. sukharichev
      13.01.2025 10:33

      я как раз вчера проводил ревизию прошивок своих супермайкр, схд dell и ни в одном из девайсов не исправляли ничего такого, что требовало бы обновления. Бездумное обновление всего подряд без оснований - такая же нелепость как "работает - не трогай"