Editing Quick installation (legacy)
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | + | This document briefly describes the steps needed to install OpenVZ on your machine. | |
− | + | 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]. | |
− | This document | ||
− | + | OpenVZ consists of a kernel, user-level tools, and VE templates. This guide tells how to install the kernel and the tools. | |
− | |||
− | + | == Requirements == | |
− | + | 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]. | |
− | == | + | === Filesystems === |
+ | It is recommended to use a separate partion for VEs (by default /vz directory). The reason why you should do so is that if you wish to use OpenVZ per-VE disk quota, you won't be able to use usual Linux disk quotas on the same partion. Also bear in mind, that per-VE quota in this context includes not only pure per-VE quota, but also usual Linux disk quota used in VE, not on HN. | ||
− | + | OpenVZ per-VE disk quota is supported only for ext2/ext3 filesystems. So use one of these filesystems (ext3 is recommended) if you need per-VE disk quota. | |
− | |||
− | === | + | === rpm or yum? === |
− | + | In case you have yum utility available on your 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. | |
− | |||
− | === yum pre-setup === | + | === yum pre-setup === |
+ | 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: | |
− | Download [ | + | <pre> |
+ | # 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. | |
− | == | + | === Using yum === |
+ | Run the following command | ||
+ | <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. |
− | |||
− | + | === Using rpm === | |
− | + | 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. | |
− | + | Next, install the kernel RPM you chose: | |
− | < | + | <pre> |
− | {{Note| | + | # 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. | ||
+ | |||
+ | {{Note|<tt>rpm -U</tt> (where <tt>-U</tt> stands for ''upgrade'') should '''not''' be used, otherwise all currently installed kernels will be uninstalled.}} | ||
+ | |||
+ | == Configuring the bootloader == | ||
+ | |||
+ | 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: | ||
+ | |||
+ | <pre> | ||
+ | title Fedora Core (2.6.8-022stab029.1) | ||
+ | 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> | ||
+ | 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 == | ||
− | |||
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 === |
− | + | 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. | |
− | There | ||
− | |||
<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.ipv4.conf.default.proxy_arp = 0 | net.ipv4.conf.default.proxy_arp = 0 | ||
− | |||
− | |||
# Enables source route verification | # Enables source route verification | ||
net.ipv4.conf.all.rp_filter = 1 | net.ipv4.conf.all.rp_filter = 1 | ||
− | |||
− | |||
# 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 | |
− | # | + | # 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 === |
+ | |||
+ | 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. | |
− | 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 === | ||
+ | |||
+ | 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: | ||
+ | |||
+ | <pre> | ||
+ | # rpm -Uhv vzctl*.rpm vzquota*.rpm | ||
+ | </pre> | ||
+ | |||
+ | If rpm complains about unresolved dependencies, you'll have to satisfy them first, then repeat the installation. | ||
+ | |||
+ | When all the tools are installed, start the OpenVZ subsystem. | ||
+ | |||
+ | == Starting OpenVZ == | ||
+ | |||
+ | As root, execute the following command: | ||
+ | |||
+ | <pre> | ||
+ | # /sbin/service vz start | ||
+ | </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). | |
− | + | During the next reboot, this script should be executed automatically. | |
− | |||
− | |||
− | |||
− | + | == Next steps == | |
− | |||
− | + | 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. | |
− | + | The next step is to prepare the [[OS template]]: please continue to [[OS template cache preparation]] document. | |
− | |||
[[Category: Installation]] | [[Category: Installation]] | ||
[[Category: HOWTO]] | [[Category: HOWTO]] |