Changes

Jump to: navigation, search

Vzctl for upstream kernel

1,005 bytes added, 09:03, 11 September 2012
simplified installation from yum repo; git clone info; move install/use to the top
It is currently possible to create and start a container with the same steps as one would use for a normal OpenVZ container. Other features may be present with limited functionality, while some are not present at all.
{{Warning| Running vzctl on upstream kernels is considered an experimental feature. See [[#Limitatons]] below.}} == Installation == {{Note|This section describes installation for RPM-based distros. See [[#Building]] below if you want to compile vzctl from source.}} First, set up OpenVZ yum repository. Download [[download:openvz.repo|openvz.repo]] file and put it to your <code>/etc/yum.repos.d/</code> repository,and import OpenVZ GPG key used for signing RPM packages. This can be achieved by the following commands, as root:<pre><nowiki>wget -P /etc/yum.repos.d/ http://download.openvz.org/openvz.reporpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ</nowiki></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. Then, install vzctl-core package:  yum install vzctl-core == Usage == For supported features, usage is expected to be the same as standard vzctl tool. See {{man|vzctl|8}} for more information. === Networking === Networking is available through the switches --netdev_add, --netif_add, and their respective deletion counterparts. IP mode networking (--ipadd / --ipdel) is currently not supported.
== Limitations ==
 
The following vzctl commands are not working at all:
* <code>quotaon</code>/<code>quotaoff</code>/<code>quotainit</code> (vzquota-specific)
The following commands have severe limitations:
* <code>stop</code>. A container can be stopped from inside (say if one is connected to CT over ssh) in case the underlying kernel supports rebooting a PID namespace (> 3.4). Using vzctl, the "stop" command is not supported, unless accompanied by the --fast switch, which will simply forceably kill all processes in the container.
 
The following binaries are not ported to work on top of upstream kernel:
* vzlist
* vzcalc
* vzcfgvalidate
* vzcpucheck
* vzmemcheck
* vzmigrate
* vzeventd
* vzpid
* vzsplit
* vzubc
=== /proc and /sys ===
* memory.kmem.tcp.limit_in_bytes
=== Other binaries ===
 
Pretty much everything else other than vzctl is not working. That includes:
* vzlist
* vzcalc
* vzcfgvalidate
* vzcpucheck
* vzmemcheck
* vzmigrate
* vzeventd
* vzpid
* vzsplit
* vzubc
== Building ==
* iproute2 >= 3.0.0 (runtime only)
* libcg libcgroup >= 0.38
=== Compile Download ===
Upstream support is not enabled by default. To build it into You can get the latest released version from [[Download/vzctl/{{Latest vzctl}}#sources]] or directly from [[download:utils/vzctl, one needs to specify the <code>--with-cgroup</code> switch to <code>configure<current/code>. Also, it makes sense to add <code>--without-ploop<src/code> (unless you want ploop compiled it) because otherwise you will need ploop lib headers]].
$ If you are living on the bleeding edge, get vzctl sources from git./configure --with-cgroup --without-ploopThen run autogen.sh to recreate auto* files:
== Using == git clone git://git.openvz.org/pub/vzctl cd vzctl ./autogen.sh
For supported features, usage is expected to be the same as standard vzctl tool.=== Compile ===
=== Networking ===Usual ./confiNetworking is available through the switches -t makes sense to add <code>-netdev_add, -without-netif_add, and their respective deletion counterpartsploop</code> (unless you want ploop compiled it) because otherwise you will need ploop lib headers.
IP mode networking ( $ ./configure --with-cgroup -ipadd / -without-ipdel) is currently not supported.ploop

Navigation menu