
Возникла потребность в необычной миграции с LXC на OpenVZ обычно делают наоборот, но задача есть задача, приступим к ее выполнению.
- Необходимо настроить новый севрер на OpenVZ ядре
 - Создать на новом сервере с OpenVZ новый контейнер, с аналогичными лимитами (CPU, memory, disk, …) как на старом lxc, запускать его не обязательно, нам необходимо сгенерировать конфиг для будующего контейнера.
 
| 
					 1  | 
						vzctl create 100 --ostemplate centos-7-x86_64  | 
					
настройки интерфейса:
| 
					 1  | 
						vzctl set 100 --ipadd 10.1.1.100 --save  | 
					
dns сервер
| 
					 1  | 
						vzctl set 100 --nameserver 8.8.8.8 --save  | 
					
Также можно отредактировать общий конфиг и добавить если что-то упущенно или скопировать целиком отсюда:
| 
					 1  | 
						nano /etc/vz/conf/100.conf  | 
					
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43  | 
						AVNUMPROC="unlimited" NUMPROC="unlimited" NUMTCPSOCK="1801439850948198" NUMOTHERSOCK="1801439850948198" VMGUARPAGES="unlimited" # Secondary parameters KMEMSIZE="unlimited" #TCPSNDBUF="2147483647:2147483647" TCPSNDBUF="4611686018427387903:9223372036854775807" TCPRCVBUF="4611686018427387903:9223372036854775807" OTHERSOCKBUF="4611686018427387903:9223372036854775807" DGRAMRCVBUF="unlimited" OOMGUARPAGES="unlimited" # Auxiliary parameters LOCKEDPAGES="unlimited" SHMPAGES="unlimited" PRIVVMPAGES="unlimited" NUMFILE="unlimited" NUMFLOCK="unlimited" NUMPTY="unlimited" NUMSIGINFO="unlimited" DCACHESIZE="unlimited" PHYSPAGES="0:unlimited" SWAPPAGES="0:unlimited" NUMIPTENT="unlimited" CPUS="unlimited" # Disk quota parameters (in form of softlimit:hardlimit) DISK_QUOTA="no" VE_ROOT="/data/vz/root/$VEID" VE_PRIVATE="/data/vz/private/$VEID" OSTEMPLATE="centos-7-x86_64" ORIGIN_SAMPLE="unlimited" IP_ADDRESS="10.1.1.100" HOSTNAME="master-1.mailon.com.ua" ONBOOT="yes" SEARCHDOMAIN="." NETFILTER="stateful" VE_LAYOUT="simfs" NAMESERVER="8.8.8.8"  | 
					
- седалть дамп lxc и перенести его на новый сервер
 - если архив дампа сзжатый — тогда распаковать его:
1lzop -d vzdump-lxc-XXX.tar.lzo
или (если дамп в tar.gz)
1gunzip filename.tar.gz - добавим ранее созданный конфиг openvz в дамп lxc
 
| 
					 1  | 
						tar -uf filename.tar /etc/vz/conf/100.conf  | 
					
- удаляем ранее созданный пустой контейнер ID 100
 
| 
					 1  | 
						vzctl destroy 100  | 
					
- восстанавливаем дамп
 
| 
					 1  | 
						vzrestore vzdump-lxc-XXX.tar 100  | 
					
- создаем недостающих устройст в OpenVZ контейнере:
 
| 
					 1 2 3 4 5 6 7 8 9  | 
						cd /data/vz/private/XXX/ rm -f dev/null mknod -m 666 dev/null c 1 3 mknod -m 666 dev/zero c 1 3 mknod -m 444 dev/random c 1 8 mknod -m 444 dev/urandom c 1 9 mknod -m 666 dev/ptmx c 5 2 mkdir dev/pts cp -a /dev/ttyp* /dev/ptyp* dev/  | 
					
- Запускаем контейнер и проверяем логи в dmesg / messagesна наличие ошибок.
 
| 
					 1  | 
						vzctl start XXX  | 
					
- В некоторых случаях необходимо дополнительно вносить изменения в настройки сетевого интерфейса, в таком случаи правим файл (в нашем примере lxc контейнер был на OS Debian)
 
| 
					 1  | 
						/etc/network/interfaces  |