6,534
edits
Changes
organized into sections, some fixes, improvements, cleanups.
Current document describes the migration from Linux-VServer based virtualization solution to OpenVZ.
== Description of challenge:==
The challenge is migration from Linux-Vserver to OpenVZ by booting the OpenVZ kernel and updating the existing configs of
utility level in purpose to make the existing guest OSes work over OpenVZ kernel.
== Details of migration process. Step by step:==
* Kernel linux-2.6.17.13 was patched by the patch-2.6.17.13-vs2.0.2.1.diff and rebuild;
* Util-vserver-0.30.211 tools were used for creating containers;
# vserver-info
Versions:
vserver-Rootdir: /vservers
#
VServer v345 was built using vserver vX build utility and populated by using the tarballed template of Fedora Core 4.
# vserver v345 start
Starting system logger: [ OK ]
sh-2.05b#
.........
As a result we obtain running virtual environment v345:
# vserver-stat
#
Install the OpenVZ kernel, as described in [[quick Quick installation]].
After the kernel is installed, reboot the machine. After rebooting and logging in you will see the following reply on vserver-stat call:
# vserver-stat
can not change context: migrate kernel feature missing and 'compat' API disabled: Function not implemented
It is a natural thing that now virtual environment v345 is unavailable. The following steps will be devoted to making it
work over OpenVZ kernel.
OpenVZ solution requires installing a set of tools: vzctl and vzquota packages. Download and install it, as described in [[quick installation]].
Then launch the OpenVZ:
# /sbin/service vz start
Starting OpenVZ: [ OK ]
Bringing up interface venet0: [ OK ]
Configuring interface venet0: [ OK ]
Currently vzlist utility is unable to find any containers:
# vzlist
Containers not found
Move the existing templates of guest OSs to the right place:
# cd /vz
# mkdir private
# mkdir private/345
# mv /vservers/v345 /vz/private/345
Now it is time for creating configuration files for OpenVZ container. Use the basic sample
configuration presented in /etc/sysconfig/vz-scripts/ve-vps.basic.conf-sample file:
# cd /etc/sysconfig/vz-scripts
# cp ve-vps.basic.conf-sample 345.conf
# vzlist -a
CTID NPROC STATUS IP_ADDR HOSTNAME
345 5 running 192.168.0.145 test345.my.org
# vzctl exec 345 ls -l
total 48
drwxr-xr-x 15 root root 4096 Jul 27 2004 usr
drwxr-xr-x 17 root root 4096 Oct 26 2004 var
== Issues:==
1. The vserver-originating containers do not initialize network at all. Thus one needs to use following command to enable networking start (inside of the migrated container):
ln -s ../init.d/networking S40networking
2. Disk space information is empty. Openvz vserver containers have special scripts Do the following to gleanfix: rm /etc/mtabthe disk space information from underlying system, which needs to be migrated. ln -s /proc/mounts /etc/mtab
[[Category:HOWTO]]