[Comm] P9 OpenVZ7 - автоматическое добавление veth-интерфейса в бридж

Alex Moskalenko mav на elserv.msk.su
Пт Дек 4 17:27:56 MSK 2020


04.12.2020 15:49, Andrew A. Vasilyev пишет:
> Добрый день!
>
>   Обратите внимание на то, что в ovz7 simfs не поддерживается!
>   Есть ещё 3-й вариант: на новом сервере создать контейнеры из свежих 
> шаблонов, и переносить в эти контейнеры сервисы и данные.
>   Шаблоны можно сделать самостоятельно, используя mkimage-profiles 
> (цели ve/systemd-etcnet.tar.gz ve/systemd-networkd.tar.gz 
> ve/sysvinit-etcnet.tar.gz) и инструкции из 
> https://www.altlinux.org/OpenVZ7 (Создание шаблонов контейнеров).
>
Про это прочитал, поэтому планируется на p8 смонтировать rootfs для 
каждой VE, заархивировать их, произвести обновление до p9, создать новые 
VE из шаблонов с нужными параметрами и разархивировать rootfs в них. 
Внутри контейнеров p9, как и в шаблонах - вроде как должно сработать.


>> 2.  Непонятно пока, что делать с контейнерами, использующими veth. В 
>> p8 был файл vznet.conf, в котором указывался внешний скрипт, 
>> добавляющий veth-интерфейс со стороны хоста в указанный в 
>> конфигурационном файле VE мост. В p9 vzctl вообще не знает параметр 
>> bridge= в конфигурации VE, а файлы vznet.conf похоже вообще не 
>> читается и внешний скрипт не вызывается. В mount-скрипте интерфейс 
>> еще не создан. Как теперь правильно добавлять veth-интерфейсы 
>> контейнеров в бридж?
>
>   В mount-скрипте можно ждать появления нужного интерфейса, как 
> предлагается в примере из https://wiki.openvz.org/Virtual_Ethernet_device
>   Только нужно обратить внимание на то, что скрипт mount должен 
> находиться в каталоге /var/lib/vz/private/VEID/scripts/, при этом 
> файловая система должна быть смонтирована без флага noexec! Файлы 
> /etc/vz/conf/VEID.mount не поддерживаются. Про скрипты mount и 
> vps.mount написано в vzctl(8).
>
Вариант с wiki.openvz.org тоже рассматривал и тестировал, но он у меня 
не сработал, так как vzctl похоже ждет завершения всех потомков 
mount-скрипта, и пока все они не завершатся - интерфейсы не создаются. А 
потомки не завершаются, так как ждут создания интерфейса...



Подробная информация о списке рассылки community