Page tree
Skip to end of metadata
Go to start of metadata

According to the official Virtuozzo 7 information, the proper and reliable way to use OpenVZ 7 virtualization is to deploy the server using Virtuozzo 7 ISO image from

If due to whatever reason there is no way to deploy the server using ISO, there is also a way to convert CentOS 7 to VZ7. Such scenario is not fully supported by SolusVM and should be performed on the server's owner risk

Preparing partitioning on CentOS 7 node for conversion

Before proceeding with installing vzkernel, it is required to prepare the server to match the requirements of Virtuozzo 7. The main part here is to have a dedicated EXT4 partition mounted on /vz.

Mount a specifically created partition or a logical volume (it's a preferable way, it will be easier to extend it if required). The file system on the partition/volume must be ext4. Do not forget to add the corresponding mount point to /etc/fstab.

Here are the sample steps on how to achieve that in case there is a second drive /dev/sdb. Note that steps are just an example.

# lsblk
sda 8:0 0 64G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 21G 0 part
├─centos-root 253:0 0 20G 0 lvm /
└─centos-swap 253:1 0 1G 0 lvm [SWAP]
sdb 8:16 0 64G 0 disk

# vgcreate vz /dev/sdb
Physical volume "/dev/sdb" successfully created.
Volume group "vz" successfully created

# lvcreate -n vz -l 100%FREE /dev/vz
Logical volume "vz" created.

# mkfs.ext4 /dev/vz/vz

# mkdir /vz

# mount /dev/vz/vz /vz
# echo "/dev/vz/vz /vz ext4 defaults 1 1" >> /etc/fstab

Overall The result should be similar to the following one:

# df -hT /vz
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vz-vz ext4 50G 827M 46G 2% /vz

Type must be ext4 and it must be me mounted on /vz.

Doing the conversion

Once /vz partition is prepared, we can go ahead with the conversion.

  1. Install python sub-processes, the latest OpenVZ 7 release, Epel repository, prctl utility, OpenVZ kernel and ploop packages:

    # yum localinstall
    # yum localinstall
    # yum install epel-release -y

    Install vzlinux release:

    # yum install python3
    # rpm -Uvh
    # rpm -Uvh
    # rpm -Uvh

    Move CentOS repositories to another location to avoid package conflicts in future:

    # mv /etc/yum.repos.d/CentOS-* /root/

    Re-install json-c and jansson packages from virtuozzo repositories

    # rpm -e --nodeps --justdb json-c
    # yum erase jansson
    # yum localinstall
    # yum localinstall

    Install the necessary packages:

    # yum install prlctl prl-disp-service vzkernel *ploop*
  2. Update the node:

    # yum update

  3. On OVH dedicated servers also generate the grub.cfg file:

    # mkdir /boot/efi/EFI/virtuozzo/
    # grub2-mkconfig -o /boot/efi/EFI/virtuozzo/grub.cfg

  4. Reboot the node:

    # reboot

  5. Now, enable ploop kernel modules:

    # modprobe ploop
    # modprobe pfmt_ploop1
    # modprobe pfmt_raw
    # modprobe pio_direct

The conversion is done. Feel free to try installing SolusVM on it:

# curl -o && sh

In case you did everything right, you will see the following screen on CentOS 7:

The last step after that - install EZ packages:

# yum install *ez.noarch
  • No labels