Installation on Debian 8

From OpenVZ Virtuozzo Containers Wiki
Revision as of 09:25, 28 January 2020 by Narcisgarcia (talk | contribs) (Download OS templates: ctcreate to ctctl)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This is a guide to install OpenVZ 6 (legacy) on your Devuan 1 "Jessie" or Debian 8 "Jessie" machine (both amd64 or i386).

Current commercial version of OpenVZ (Virtuozzo 7) is not installable on Devuan or Debian because is developed as an independent GNU/Linux distribution

Volumes and file systems[edit]

  • It is recommended to use a separate partition for containers (by default /var/lib/vz) and format it to ext4.
  • btrfs mounted filesystems cannot be formatted with modern features as: mixed-bg, extref, skinny-metadata, no-holes (More details).

Change Systemd to SystemV[edit]

Only needed for Debian (Devuan already works with SystemV by default). Warning: This operation can make some desktop software to stop working.

sudo apt-get install sysvinit-core sysvinit-utils
# Must boot with SystemV to release Systemd
sudo reboot
sudo apt-get --autoremove remove systemd
echo -e 'Package: *systemd*\nPin: release *\nPin-Priority: -1\n' | sudo tee /etc/apt/preferences.d/avoid-systemd

Register OVZ updated repository[edit]

RepoFile=/etc/apt/sources.list.d/openvz.list
RepoUrl=http://download.openvz.org/debian
echo "deb $RepoUrl jessie main" | sudo tee "$RepoFile"
echo "#deb $RepoUrl jessie-test main" | sudo tee -a "$RepoFile"
echo "deb $RepoUrl wheezy main" | sudo tee -a "$RepoFile"
wget -qO - http://ftp.openvz.org/debian/archive.key | sudo apt-key add -
sudo apt-get update
Yellowpin.svg Note: The second line with jessie-test is commented out. This is a testing repo with newer kernels and possibly tools. Enable it if you want to stay on a bleeding edge of technology.

For more info about Debian repositories, see http://download.openvz.org/debian

Install packages[edit]

KPackage="linux-image-openvz-$(dpkg --print-architecture)"
sudo apt-get --install-recommends install $KPackage vzdump ploop initramfs-tools
if [ ! -d /vz ] ; then sudo ln -s /var/lib/vz/ /vz ; fi
  • Create file /etc/vz/vznet.conf with the following line:
EXTERNAL_SCRIPT="/usr/sbin/vznetaddbr"
  • Optionally you can set containers completely stop when service stops at /etc/vz/vz.conf
VE_STOP_MODE=stop
  • Only Devuan: link to be recognised as Debian
if [ -f /etc/devuan_version ] ; then sudo ln -s /etc/devuan_version /etc/debian_version ; fi

Reboot into OpenVZ kernel[edit]

Yellowpin.svg Note: At boot manager, in "Advanced options for Devuan GNU+Linux", you will find kernels named "2.6.32-openvz". Select the first listed.
sudo reboot

Check the OpenVZ processes are running:

sudo ps ax | grep -v 'grep' | grep 'vzmond'

Set OpenVZ as default to boot[edit]

Because of GRUB2 default criteria, default kernel to boot can still be the one from Devuan's repository (non OVZ). Probably you don't want this behaviour; once you've booted fine into OpenVZ kernel, you can remove other unuseful kernels:

Packages="$(aptitude search ~i~nlinux-image- --display-format '%p' | grep -ve 'openvz')"
sudo apt-get --autoremove remove $Packages

(requires aptitude)

Download OS templates[edit]

This step is optional, vzctl is able to download templates on demand.

An OS template is a GNU distribution for Linux, installed into a container and then packed into a gzipped tarball. Using such a cache, a new container can be created in a minute.

OpenvzKey="$(echo $(sudo gpg --batch --search-keys security@openvz.org 2>&1 | grep -ie ' key.*created' | sed -e 's|key|@|g' | cut -f 2 -d '@') | cut -f 1 -d ' ' | cut -f 1 -d ',')"
sudo gpg --recv-keys $OpenvzKey
sudo vztmpl-dl --gpg-check --list-remote
# Example:
sudo vztmpl-dl --gpg-check debian-8.0-x86_64-minimal

Alternatives:

  • Download precreated template caches from Download » Template » Precreated or from one of the mirrors. Put those tarballs as-is (no unpacking needed) to the /vz/template/cache/ directory.
  • ctctl helper to create Debian (or derivative) container without template (caches it as a local template). This tool manages unprivileged LXC containers too.

Next steps[edit]

OpenVZ is now set up on your machine. Follow on to basic operations in OpenVZ environment document.

See also[edit]