Difference between revisions of "Quick installation (legacy)"

From OpenVZ Virtuozzo Containers Wiki
Jump to: navigation, search
(Conntracks)
(rm translate tags)
 
(71 intermediate revisions by 27 users not shown)
Line 1: Line 1:
This document briefly describes the steps needed to install OpenVZ on your machine.
+
{{Warning|This article describes legacy version of OpenVZ. For current version, see [[Quick installation]].}}
  
This document is also available in the following languages: [http://forum.openvz.org/index.php?t=tree&goto=35&#msg_35 French], [http://forum.openvz.org/index.php?t=tree&goto=1805&#msg_1805 German].
+
<!--T:1-->
 +
This document briefly describes the steps needed to install '''legacy''' OpenVZ on your '''RHEL 6''' (CentOS 6, Scientific Linux 6) machine.
  
OpenVZ consists of a kernel, user-level tools, and VE templates. This guide tells how to install the kernel and the tools.
+
<!--T:2-->
 +
For '''Debian''' based systems, please see [[Installation on Debian]].
  
== Requirements ==
+
<!--T:3-->
This guide assumes you are running recent release of Fedora Core (like FC5) or RHEL/CentOS 4. Currently, OpenVZ kernel tries to support the same hardware that Red Hat kernels support. For full hardware compatibility list, see [http://www.virtuozzo.com/en/products/virtuozzo/hcl/ Virtuozzo HCL].
+
{{Out|A commercial version of OpenVZ is available, which simplifies installation with a single disk as well as supports networked installation using PXE boot. To learn more about Virtuozzo and request a free trial, please see https://virtuozzo.com/openvz/}}
  
=== rpm or yum? ===
+
== Requirements == <!--T:5-->
  
In case you have yum utility available on you system, you may want to use it effectively to install and update OpenVZ packages. In case you don't have yum, or don't want to use it, you can use plain old rpm. Instructions for both rpm and yum are provided below.
+
<!--T:6-->
 +
This guide assumes you are running '''RHEL (CentOS, Scientific Linux) 6''' on your system. Currently, this is a recommended platform to run OpenVZ on.
  
=== yum pre-setup ===
+
=== /vz file system === <!--T:7-->
If you want to use yum, you should set up OpenVZ yum repository first.
 
  
Download [http://download.openvz.org/openvz.repo openvz.repo] file and put it to your <code>/etc/yum.repos.d/</code> repository. This can be achieved by the following commands, as root:
+
<!--T:8-->
<pre>
+
It is recommended to use a separate partition for containers (by default '''/vz''') and format it to '''ext4'''.
# cd /etc/yum.repos.d
 
# wget http://download.openvz.org/openvz.repo
 
</pre>
 
 
 
In case you can not cd to /etc/yum.repos.d, it means either yum is not installed on your system, or yum version is too old. In that case, just stick to rpm installation method.
 
 
 
== Kernel installation ==
 
 
 
{{Note|In case you want to recompile the kernel yourself rather than use the one provided by OpenVZ, see [[kernel build]].}}
 
  
First, you need to choose what “flavor” of the kernel you want to install. Please refer to [[Kernel flavors]] for more information.
+
=== yum pre-setup === <!--T:9-->
  
=== Using yum ===
+
<!--T:10-->
Run the following command
+
Download [https://download.openvz.org/openvz.repo openvz.repo] file and put it to your <code>/etc/yum.repos.d/</code> repository:
<pre>
 
# yum install ovzkernel[-flavor]
 
</pre>
 
  
Here <code>[-flavor]</code> is optional, and can be <code>-smp</code> or <code>-enterprise</code>. Refer to [[kernel flavors]] for more info.
+
<!--T:11-->
 +
<pre><nowiki>wget -P /etc/yum.repos.d/ https://download.openvz.org/openvz.repo</nowiki></pre>
  
=== Using rpm ===
+
<!--T:12-->
Get the kernel binary RPM from the [http://openvz.org/download/kernel/ Download » Kernel] page, or directly from [http://download.openvz.org/kernel/ download.openvz.org/kernel], or from one of its [[Download mirrors|mirrors]]. You need only one kernel RPM so please [[Kernel flavors|choose the appropriate one]] depending on your hardware.
+
Import OpenVZ GPG key used for signing RPM packages:
 
 
Next, install the kernel RPM you chose:
 
 
 
<pre>
 
# rpm -ihv ovzkernel[-flavor]*.rpm
 
</pre>
 
  
Here <code>[-flavor]</code> is optional, and can be <code>-smp</code> or <code>-enterprise</code>. Refer to [[kernel flavors]] for more info.
+
<!--T:13-->
 +
<pre><nowiki>rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ</nowiki></pre>
  
{{Note|<tt>rpm -U</tt> (where <tt>-U</tt> stands for ''upgrade'') should '''not''' be used, otherwise all currently installed kernels will be uninstalled.}}
+
To make sure that you are downloading tamper free versions of the signed packages you should verify the fingerprint of the key you imported into the rpm key database as described on the [[Package signatures]] page.
  
== Configuring the bootloader ==
+
== Kernel installation == <!--T:14-->
  
In case GRUB is used as the boot loader, it will be configured automatically: lines similar to these will be added to the <tt>/boot/grub/grub.conf</tt> file:
+
<!--T:15-->
 +
Limited OpenVZ functionality is supported when you run a recent 3.x kernel (check [[vzctl for upstream kernel]], so OpenVZ kernel installation is optional but still recommended.
  
<pre>
+
<!--T:16-->
title Fedora Core (2.6.8-022stab029.1)
+
# yum install vzkernel
      root (hd0,0)
 
      kernel /vmlinuz-2.6.8-022stab029.1 ro root=/dev/sda5 quiet rhgb vga=0x31B
 
      initrd /initrd-2.6.8-022stab029.1.img
 
</pre>
 
Change <tt>Fedora Core</tt> to <tt>OpenVZ</tt> (just for clarity reasons, so the OpenVZ kernels will not be mixed up with non OpenVZ ones). Remove extra arguments from the kernel line, leaving only the <tt>root=...</tt> parameter. The modifed portion of <tt>/etc/grub.conf</tt> should look like this:
 
  
<pre>
+
== System configuration == <!--T:17-->
title OpenVZ (2.6.8-022stab029.1)
 
        root (hd0,0)
 
        kernel /vmlinuz-2.6.8-022stab029.1 ro root=/dev/sda5
 
        initrd /initrd-2.6.8-022stab029.1.img
 
</pre>
 
  
== Configuring ==
+
<!--T:18-->
 +
{{Note|With vzctl 4.4 or newer there is no need to do manual configuration. Skip to [[#Tools_installation]].}}
  
 +
<!--T:19-->
 
Please make sure the following steps are performed before rebooting into OpenVZ kernel.
 
Please make sure the following steps are performed before rebooting into OpenVZ kernel.
  
=== sysctl ===
+
=== sysctl === <!--T:20-->
  
There is a number of kernel parameters that should be set for OpenVZ to work correctly. These parameters are stored in <tt>/etc/sysctl.conf</tt> file. Here is the relevant part of the file; please edit it accordingly.
+
<!--T:21-->
 +
There are a number of kernel parameters that should be set for OpenVZ to work correctly. These parameters are stored in <tt>/etc/sysctl.conf</tt> file. Here are the relevant portions of the file; please edit accordingly.
  
 +
<!--T:22-->
 
<pre>
 
<pre>
 
# On Hardware Node we generally need
 
# On Hardware Node we generally need
 
# packet forwarding enabled and proxy arp disabled
 
# packet forwarding enabled and proxy arp disabled
 
net.ipv4.ip_forward = 1
 
net.ipv4.ip_forward = 1
 +
net.ipv6.conf.default.forwarding = 1
 +
net.ipv6.conf.all.forwarding = 1
 
net.ipv4.conf.default.proxy_arp = 0
 
net.ipv4.conf.default.proxy_arp = 0
 +
 +
<!--T:23-->
 
# Enables source route verification
 
# Enables source route verification
 
net.ipv4.conf.all.rp_filter = 1
 
net.ipv4.conf.all.rp_filter = 1
 +
 +
<!--T:24-->
 
# Enables the magic-sysrq key
 
# Enables the magic-sysrq key
 
kernel.sysrq = 1
 
kernel.sysrq = 1
# TCP Explict Congestion Notification
+
 
#net.ipv4.tcp_ecn = 0
+
<!--T:25-->
# we do not want all our interfaces to send redirects
+
# We do not want all our interfaces to send redirects
 
net.ipv4.conf.default.send_redirects = 1
 
net.ipv4.conf.default.send_redirects = 1
 
net.ipv4.conf.all.send_redirects = 0
 
net.ipv4.conf.all.send_redirects = 0
 
</pre>
 
</pre>
  
=== SELinux ===
+
=== SELinux === <!--T:26-->
 
 
SELinux should be disabled. To that effect, put the following line to <code>/etc/sysconfig/selinux</code>:
 
<pre>
 
SELINUX=disabled
 
</pre>
 
 
 
=== Conntracks ===
 
 
 
In the stable OpenVZ kernels (those that are 2.6.8-based) netfilter connection tracking for [[VE0]] is disabled by default. If you have a stateful firewall enabled on the host node (it is there by default) you should either disable it, or enable connection tracking for [[VE0]].
 
 
 
To enable conntracks for VE0, add the following line to <code>/etc/modprobe.conf</code> file:
 
<pre>
 
options ip_conntrack ip_conntrack_enable_ve0=1
 
</pre>
 
 
 
{{Note|in kernels later than 2.6.8, connection tracking is enabled by default}}
 
 
 
== Rebooting into OpenVZ kernel ==
 
 
 
Now reboot the machine and choose "OpenVZ" on the boot loader menu. If the OpenVZ kernel has been booted successfully, proceed to installing the user-level tools for OpenVZ.
 
 
 
== Installing the utilities ==
 
 
 
OpenVZ needs some user-level tools installed. Those are:
 
 
 
; vzctl
 
:    A utility to control OpenVZ VPSs (create, destroy, start, stop, set parameters etc.)
 
; vzquota
 
:    A utility to manage quotas for VPSs. Mostly used indirectly (by vzctl).
 
 
 
=== Using yum ===
 
 
 
<pre>
 
# yum install vzctl vzquota
 
</pre>
 
  
=== Using rpm ===
+
<!--T:27-->
 +
SELinux should be disabled. Put <code>SELINUX=disabled</code> to <code>/etc/sysconfig/selinux</code>:
  
Download the binary RPMs of these utilities from [http://openvz.org/download/utils/ Download » Utils], or directly from [http://download.openvz.org/utils/ download.openvz.org/utils], or from one of its [[Download mirrors|mirrors]]. Install them:
+
<!--T:28-->
 +
echo "SELINUX=disabled" > /etc/sysconfig/selinux
  
<pre>
+
== Tools installation == <!--T:29-->
# rpm -Uhv vzctl*.rpm vzquota*.rpm
 
</pre>
 
  
If rpm complains about unresolved dependencies, you'll have to satisfy them first, then repeat the installation.
+
<!--T:30-->
 +
{{Out|Before installing tools, please read about [[vzstats]] and opt-out if you don't want to help the project.}}
  
When all the tools are installed, start the OpenVZ subsystem.
+
<!--T:31-->
 +
OpenVZ needs some user-level tools installed:
  
== Starting OpenVZ ==
+
<!--T:32-->
 +
# yum install vzctl vzquota ploop
  
As root, execute the following command:
+
== Reboot into OpenVZ == <!--T:33-->
  
<pre>
+
<!--T:34-->
# /sbin/service vz start
+
Now reboot the machine and choose "OpenVZ" on the boot loader menu (it should be default choice).
</pre>
 
  
This will load all the needed OpenVZ kernel modules. This script should also start all the VPSs marked to be auto-started on machine boot (there aren't any yet).
+
== Download OS templates == <!--T:35-->
  
During the next reboot, this script should be executed automatically.
+
<!--T:36-->
 +
An OS template is a Linux distribution installed into a container
 +
and then packed into a gzipped tarball. Using such a cache, a new container
 +
can be created in a minute.
  
== Next steps ==
+
<!--T:37-->
 +
Download precreated template caches from [http://openvz.org/download/template/cache Downloads » Templates » Precreated], or directly from [http://download.openvz.org/template/precreated/ download.openvz.org/template/precreated], or from one of the [[Download mirrors|mirrors]]. Put those tarballs '''as-is (no unpacking needed)''' to the <tt>/vz/template/cache/</tt> directory.
  
OpenVZ is now set up on your machine. To load OpenVZ kernel by default, edit the default line in the /boot/grub/grub.conf file to point to the OpenVZ kernel. For example, if the OpenVZ kernel is the first kernel mentioned in the file, put it as default 0. See man grub.conf for more details.
+
== Next steps == <!--T:38-->
  
The next step is to prepare the [[OS template]]: please continue to [[OS template cache preparation]] document.
+
<!--T:39-->
 +
OpenVZ is now set up on your machine. Follow on to [[basic operations in OpenVZ environment]] document.
  
 
[[Category: Installation]]
 
[[Category: Installation]]
 
[[Category: HOWTO]]
 
[[Category: HOWTO]]

Latest revision as of 02:58, 27 November 2018

Warning.svg Warning: This article describes legacy version of OpenVZ. For current version, see Quick installation.

This document briefly describes the steps needed to install legacy OpenVZ on your RHEL 6 (CentOS 6, Scientific Linux 6) machine.

For Debian based systems, please see Installation on Debian.

A commercial version of OpenVZ is available, which simplifies installation with a single disk as well as supports networked installation using PXE boot. To learn more about Virtuozzo and request a free trial, please see https://virtuozzo.com/openvz/

Requirements[edit]

This guide assumes you are running RHEL (CentOS, Scientific Linux) 6 on your system. Currently, this is a recommended platform to run OpenVZ on.

/vz file system[edit]

It is recommended to use a separate partition for containers (by default /vz) and format it to ext4.

yum pre-setup[edit]

Download openvz.repo file and put it to your /etc/yum.repos.d/ repository:

wget -P /etc/yum.repos.d/ https://download.openvz.org/openvz.repo

Import OpenVZ GPG key used for signing RPM packages:

rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ

To make sure that you are downloading tamper free versions of the signed packages you should verify the fingerprint of the key you imported into the rpm key database as described on the Package signatures page.

Kernel installation[edit]

Limited OpenVZ functionality is supported when you run a recent 3.x kernel (check vzctl for upstream kernel, so OpenVZ kernel installation is optional but still recommended.

  1. yum install vzkernel

System configuration[edit]

Yellowpin.svg Note: With vzctl 4.4 or newer there is no need to do manual configuration. Skip to #Tools_installation.

Please make sure the following steps are performed before rebooting into OpenVZ kernel.

sysctl[edit]

There are a number of kernel parameters that should be set for OpenVZ to work correctly. These parameters are stored in /etc/sysctl.conf file. Here are the relevant portions of the file; please edit accordingly.

# On Hardware Node we generally need
# packet forwarding enabled and proxy arp disabled
net.ipv4.ip_forward = 1
net.ipv6.conf.default.forwarding = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.default.proxy_arp = 0

<!--T:23-->
# Enables source route verification
net.ipv4.conf.all.rp_filter = 1

<!--T:24-->
# Enables the magic-sysrq key
kernel.sysrq = 1

<!--T:25-->
# We do not want all our interfaces to send redirects
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0

SELinux[edit]

SELinux should be disabled. Put SELINUX=disabled to /etc/sysconfig/selinux:

echo "SELINUX=disabled" > /etc/sysconfig/selinux

Tools installation[edit]

Before installing tools, please read about vzstats and opt-out if you don't want to help the project.

OpenVZ needs some user-level tools installed:

  1. yum install vzctl vzquota ploop

Reboot into OpenVZ[edit]

Now reboot the machine and choose "OpenVZ" on the boot loader menu (it should be default choice).

Download OS templates[edit]

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

Download precreated template caches from Downloads » Templates » Precreated, or directly from download.openvz.org/template/precreated, or from one of the mirrors. Put those tarballs as-is (no unpacking needed) to the /vz/template/cache/ directory.

Next steps[edit]

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