PVE/LXC: различия между версиями
Дым (обсуждение | вклад) |
Дым (обсуждение | вклад) |
||
Строка 450: | Строка 450: | ||
Теперь можно спокойно разворачивать контейнер из шаблона с ALT Linux. | Теперь можно спокойно разворачивать контейнер из шаблона с ALT Linux. | ||
==Proxmox VE 8.1+== | ==Proxmox VE 8.1+== | ||
Приведу лишь патч (этот ощутимо меньше отличается от оригинала): | Приведу лишь патч, применимый к версиям PVE с 8.1 по 8.3 (этот ощутимо меньше отличается от оригинала): | ||
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
{{path|pve8.1+-alt-lxc.patch}} | {{path|pve8.1+-alt-lxc.patch}} | ||
Строка 519: | Строка 519: | ||
</source> | </source> | ||
</div></div> | </div></div> | ||
Для PVE-8.0 не подходит: хотя правки те же, но номера строк иные — как и для версий 7.х, которые здесь не рассматриваются. | |||
Для | Для PVE-8.4+ тоже не подходит: в скрипте {{path|Config.pm}} процедуру {{cmd|is_valid_ro_mount_option}} заменили на {{cmd|is_valid_mount_option}} с добавлением опций монтирования. | ||
Порядок применения тот же: | Порядок применения тот же: |
Версия от 04:23, 6 июня 2025
В данной статье описано развёртывание LXC-контейнера c ALT (из готового шаблона) на оригинальном Proxmox VE (который на данный момент на Debian).
Если у вас установлен любой из дистрибутивов ALT и собственно сам PVE (pve-manager) или стартовый набор server-pve, данная статья вам не нужна, так как проблем с развёртыванием контейнера не будет.
Создание шаблона
Для этого можно воспользоваться набором инструментов - m-p. Вся информация тут.
Основным требованием для шаблона является наличие в нём systemd. Исходя из статьи Шаблоны для развёртывания CT в PVE, нам подойдет только шаблон ve/systemd-bare.tar.gz. Для его сборки после первоначальной настройки окружения необходимо выполнить следующие команды (предварительно настроив нужный репозиторий с помощью утилиты apt-repo):
$ git clone git://git.altlinux.org/people/mike/packages/mkimage-profiles.git $ cd mkimage-profiles $ make ve/systemd-bare.tar.gz
После этого готовый шаблон нужно загрузить в локальное хранилище PVE.
Подготовка Proxmox
Сначала необходимо установить perl-библиотеку Crypt::Eksblowfish::Bcrypt для установки рутового пароля при развёртывании шаблона:
apt-get install libcrypt-eksblowfish-perl
Затем необходимо внести изменения в скрипты работы с LXC-контейнерами и добавить новый скрипт для разворачивания шаблона с ALT Linux. За основу взят патч для пакета pve-container.
Proxmox VE 5.1
Проверено на актуальных версиях - 5.1-35 и 5.1-36.
Необходимо внести изменения в следующие файлы (изменения под спойлером):
- /usr/share/perl5/PVE/LXC/Config.pm
- /usr/share/perl5/PVE/LXC/Setup.pm
И добавить новый файл с описанием инструкций для ALT:
- /usr/share/perl5/PVE/LXC/Setup/ALTLinux.pm
- Модификация, пригодная для работы и с systemd, и с systemv - полезно при модернизации старых контейнеров и не требует обязательного наличия systemd в шаблоне
(NB: в патч входит только вышеприведённый вариант!)
Данные файлы можно поправить вручную, а можно с помощью патча. Необходимо создать файл со следующим содержимым (TODO: добавить ссылку на ftp):
pve5-alt-lxc.patch
Затем выполнить следующие команды:
cd /usr/share/perl5/PVE/LXC
patch -p1 -i <path_to>/pve5-alt-lxc.patch
После изменения скриптов (вручную или патчем) необходимо перезапустить PVE API Daemon:
service pvedaemon restart
Теперь можно спокойно разворачивать контейнер из шаблона с ALT Linux.
Proxmox VE 8.1+
Приведу лишь патч, применимый к версиям PVE с 8.1 по 8.3 (этот ощутимо меньше отличается от оригинала):
pve8.1+-alt-lxc.patch
Для PVE-8.0 не подходит: хотя правки те же, но номера строк иные — как и для версий 7.х, которые здесь не рассматриваются.
Для PVE-8.4+ тоже не подходит: в скрипте Config.pm процедуру is_valid_ro_mount_option заменили на is_valid_mount_option с добавлением опций монтирования.
Порядок применения тот же:
patch -p1 -i <path_to>/pve8.1+-alt-lxc.patch service pvedaemon restart
После чего можно добавлять альт-контейнеры.
Proxmox VE 4.4
Проверено на версиях 4.4-18 и 4.4-20.
Необходимо внести изменения в следующие файлы:
- /usr/share/perl5/PVE/LXC/Config.pm - аналогично 5 версии (см. выше);
- /usr/share/perl5/PVE/LXC/Setup.pm - есть немного отличий;
- /usr/share/perl5/PVE/LXC/Setup/ALTLinux.pm - аналогично 5 версии (см. выше).
Для 4 версии Proxmox VE также необходимо подправить LXC.pm:
- /usr/share/perl5/PVE/LXC.pm
Данные файлы можно поправить вручную, а можно с помощью патча. Необходимо создать файл со следующим содержимым (TODO: добавить ссылку на ftp):
pve4-alt-lxc.patch
Затем выполнить следующие команды:
cd /usr/share/perl5/PVE # обратите внимание: запуск патча происходит из каталога, отличного от 5 версии.
patch -p1 -i <path_to>/pve4-alt-lxc.patch
После изменения скриптов (вручную или патчем) необходимо перезапустить PVE API Daemon:
service pvedaemon restart
Теперь можно спокойно разворачивать контейнер из шаблона с ALT Linux.
Создание CT
Подробнее об этом читайте тут. Отличий нет.