как преобразовать OpenVZ контейнер

H
На сайте с 15.02.2010
Offline
105
1060

Есть давнишний контейнер OpenVZ (centos6, i386) с отлаженными приложениями , безгеморройно таскаемый уже более 8 лет по разным серверам. Сейчас работает на ноде Centos 6.10 x86_64 со своим кастомным ядром OpenVZ, но диск там тоже уже загибается ((

Как его преобразовать в LXC?

Гугл говорит, типа создайте новый контейнер, а потом подмените rootfs. Попробовал, сделал с той же центосью, остановил, подменил - фигушки! Контейнер запустился, но постоянно ругань на права доступа, даже руту. Все сервисы (даже сeть) надо стартовать вручную, ntsysv изменения не сохраняет. Ядро 4.15 не катит, как я понимаю.

Очень не хочется "перебирать" контейнер и перетаскивать приложения на новую систему, там за полчаса всё фичи не проверишь...

Какие еще проверенные (а не теоретические) способы миграции подскажет всезнающий All? Мне в голову приходит только VirtualBox и "контейнер в контейнере", но это тоже как-то не кошерно. В идеале хотелось бы разместиться на свежеустановленной ubuntu 18.04 с LXD

Andreyka
На сайте с 19.02.2005
Offline
822
#1

https://www.funtoo.org/LXD/OpenVZ_migration, Correcting the uid/gid ownership

Не стоит плодить сущности без необходимости
H
На сайте с 15.02.2010
Offline
105
#2

Сеньк, про утилиту fuidshift полезно, я вручную пытался (и, похоже, неудачно)

Контейнер запустился, вроде без ошибок даже...

Сети пока нет, но это уже мелочи по сравнению с мировой революцией ))

---------- Добавлено 12.04.2020 в 10:08 ----------

Не, рано я обрадовался, симптомы те же ((

1. В контейнере нет автостарта демонов. Никаких. Даже сети. Хотя по команде service network start адрес по dhcp получает моментом. Аналогично с sshd, mysqld и другими. Хотя по команде chkconfig --list вижу правильную таблицу и всё включено.

2. Контейнер не выключить и не перезагрузить. По команде poweroff в конейнере вижу

Broadcast message from root@ats

(/dev/pts/0) at 9:51 ...

The system is going down for power off NOW!

и... ничего далее не происходит, ssh сессия не рвётся, продолжает реагировать на команды.

По команде lxc stop ats с ноды - бесконечная задумчивость (а контейнер продолжает работать), при прерывании которой в логе вижу такую ошибку

lxc ats 20200412062856.935 WARN     conf - conf.c:lxc_setup_devpts:1616 - Invalid argument - Failed to unmount old devpts instance

Ошибка гуглится, но там у всех при ней проблема с запуском контейнера, а тут стартует без проблем, а вот выключить/перезапустить можно только перезагрузкой ноды, да и то при условии, если предварительно сказать lxc config set ats boot.autostart 0

Похоже, "не судьба", больно далекие родственники системы на ноде и в изначальном контейнере (ubuntu 18 x86_64 ядро 4.15 и centos 6 i686 ядро 2.6.32) :(

Или таки есть варианты?

VO
На сайте с 27.07.2008
Offline
149
#3

На исправление проблем конвертации в LXC потратите время соизмеримое с миграцией на свежую ОС. А переходить все равно нужно будет, так как ля Centos 6 время выпуска обновлений заканчивается осенью.

H
На сайте с 15.02.2010
Offline
105
#4

V(o)ViK, если она будет продолжать работать - нет никакого смысла и нужды её обновлять. Там не вордпресс, где чуть ли не каждый день уязвимости новые находят, тут нет проблем ни с безопасностью, ни с производительностью, ни потребности в новых фичах.

Равно как на производствах до сих пор прекрасно работают системы на WinXP и даже Win2000, и никто их обновлять не собирается.

Andreyka
На сайте с 19.02.2005
Offline
822
#5

Создайте контейнер lxc, потом проведите слияние с вашими файлами через rsync

VO
На сайте с 27.07.2008
Offline
149
#6
hubbiton:
V(o)ViK, если она будет продолжать работать - нет никакого смысла и нужды её обновлять. Там не вордпресс, где чуть ли не каждый день уязвимости новые находят, тут нет проблем ни с безопасностью, ни с производительностью, ни потребности в новых фичах.
Равно как на производствах до сих пор прекрасно работают системы на WinXP и даже Win2000, и никто их обновлять не собирается.

На производствах такие серверы во внутренней сети. Если у вас сервисы доступны из интернета, тут немного другая ситуация.

Кроме ваших приложений, есть системные сервисы в которых могут быть уязвимости.

H
На сайте с 15.02.2010
Offline
105
#7

V(o)ViK, там АТС во внутренней сети за натом, из инета она видна только нескольким айпишникам сип-провайдеров. И, коль за 8 лет аптайма ничего ужасного с ней не случилось - то и дальше простоит. А вот перенести её на новую систему - это неделю переносить и потом месяц на отладку, астериски современные совсем другие, там всё заново надо переписывать. Плюс там в базах какие-то триггеры и куча баш-скриптов... И уже никто не помнит, как там что было сделано. Не, ну его нафиг... Я быстрее жесткий диск хост-ноды в виртуальную машину (а не в контейнер) засуну, как сделали со второй такой станцией. Уже года два так работает. LXC - не вариант, я уже понял, не будет оно там нормально работать, замучаюсь глюки отлавливать.

Andreyka
На сайте с 19.02.2005
Offline
822
#8

Пока еще есть возможность - пихайте. Но задумывайтесь над модернизацией, иначе будет момент, когда openvz уже некуда будет пристроить.

H
На сайте с 15.02.2010
Offline
105
#9

ну да, до осени время еще точно есть. Пока еще даже апдейты выходят.

I
На сайте с 05.06.2006
Offline
117
#10
Andreyka:
Пока еще есть возможность - пихайте. Но задумывайтесь над модернизацией, иначе будет момент, когда openvz уже некуда будет пристроить.

OpenVZ 7 существует и отлично работает, миграция с 6 на 7 элементарно делается.

ТСу:

1. создайте на OpenVZ 7 контейнер с той же ОС,

2. остановите новый контейнер

3. примонтируйте новый конейнер, удалите все файлы в нем

4. скопируйте старый контейнер в новый, добавьте IP и все будет отлично работать

Миграция с ISPManager 4 в VestaCP (https://chast.in/copy-users-from-ispmanager-2-vestacp.html) Хостинг серверов, пользуюсь сам (http://vps-server.ru/rp/pl.php?96)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий