Signed-off-by: Peter Krempa <pkrempa@xxxxxxxxxx> --- docs/drvopenvz.html.in | 123 ----------------------------------------- docs/drvopenvz.rst | 97 ++++++++++++++++++++++++++++++++ docs/meson.build | 2 +- 3 files changed, 98 insertions(+), 124 deletions(-) delete mode 100644 docs/drvopenvz.html.in create mode 100644 docs/drvopenvz.rst diff --git a/docs/drvopenvz.html.in b/docs/drvopenvz.html.in deleted file mode 100644 index 64a75e3fec..0000000000 --- a/docs/drvopenvz.html.in +++ /dev/null @@ -1,123 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE html> -<html xmlns="http://www.w3.org/1999/xhtml"> - <body> - <h1>OpenVZ container driver</h1> - - <ul id="toc"></ul> - - <p> - The OpenVZ driver for libvirt allows use and management of container - based virtualization on a Linux host OS. Prior to using the OpenVZ - driver, the OpenVZ enabled kernel must be installed & booted, and the - OpenVZ userspace tools installed. The libvirt driver has been tested - with OpenVZ 3.0.22, but other 3.0.x versions should also work without - undue trouble. - </p> - - <h2><a id="project">Project Links</a></h2> - - <ul> - <li> - The <a href="https://openvz.org/">OpenVZ</a> Linux container - system - </li> - </ul> - - <h2><a id="connections">Connections to OpenVZ driver</a></h2> - - <p> - The libvirt OpenVZ driver is a single-instance privileged driver, - with a driver name of 'openvz'. Some example connection URIs for - the libvirt driver are: - </p> - -<pre> -openvz:///system (local access) -openvz+unix:///system (local access) -openvz://example.com/system (remote access, TLS/x509) -openvz+tcp://example.com/system (remote access, SASl/Kerberos) -openvz+ssh://root@xxxxxxxxxxx/system (remote access, SSH tunnelled) -</pre> - - <h2><a id="notes">Notes on bridged networking</a></h2> - - <p> - Bridged networking enables a guest domain (ie container) to have its - network interface connected directly to the host's physical LAN. Before - this can be used there are a couple of configuration pre-requisites for - the host OS. - </p> - - <h3><a id="host">Host network devices</a></h3> - - <p> - One or more of the physical devices must be attached to a bridge. The - process for this varies according to the operating system in use, so - for up to date notes consult the <a href="https://wiki.libvirt.org">Wiki</a> - or your operating system's networking documentation. The basic idea is - that the host OS should end up with a bridge device "br0" containing a - physical device "eth0", or a bonding device "bond0". - </p> - - <h3><a id="tools">OpenVZ tools configuration</a></h3> - - <p> - OpenVZ releases later than 3.0.23 ship with a standard network device - setup script that is able to setup bridging, named - <code>/usr/sbin/vznetaddbr</code>. For releases prior to 3.0.23, this - script must be created manually by the host OS administrator. The - simplest way is to just download the latest version of this script - from a newer OpenVZ release, or upstream source repository. Then - a generic configuration file <code>/etc/vz/vznet.conf</code> - must be created containing - </p> - -<pre> -#!/bin/bash -EXTERNAL_SCRIPT="/usr/sbin/vznetaddbr" -</pre> - - <p> - The host OS is now ready to allow bridging of guest containers, which - will work whether the container is started with libvirt, or OpenVZ - tools. - </p> - - - <h2><a id="example">Example guest domain XML configuration</a></h2> - - <p> - The current libvirt OpenVZ driver has a restriction that the - domain names must match the OpenVZ container VEID, which by - convention start at 100, and are incremented from there. The - choice of OS template to use inside the container is determined - by the <code>filesystem</code> tag, and the template source name - matches the templates known to OpenVZ tools. - </p> - -<pre> -<domain type='openvz' id='104'> - <name>104</name> - <uuid>86c12009-e591-a159-6e9f-91d18b85ef78</uuid> - <vcpu>3</vcpu> - <os> - <type>exe</type> - <init>/sbin/init</init> - </os> - <devices> - <filesystem type='template'> - <source name='fedora-9-i386-minimal'/> - <target dir='/'/> - </filesystem> - <interface type='bridge'> - <mac address='00:18:51:5b:ea:bf'/> - <source bridge='br0'/> - <target dev='veth101.0'/> - </interface> - </devices> -</domain> -</pre> - - </body> -</html> diff --git a/docs/drvopenvz.rst b/docs/drvopenvz.rst new file mode 100644 index 0000000000..ff6e1f994d --- /dev/null +++ b/docs/drvopenvz.rst @@ -0,0 +1,97 @@ +======================= +OpenVZ container driver +======================= + +.. contents:: + +The OpenVZ driver for libvirt allows use and management of container based +virtualization on a Linux host OS. Prior to using the OpenVZ driver, the OpenVZ +enabled kernel must be installed & booted, and the OpenVZ userspace tools +installed. The libvirt driver has been tested with OpenVZ 3.0.22, but other +3.0.x versions should also work without undue trouble. + +Project Links +------------- + +- The `OpenVZ <https://openvz.org/>`__ Linux container system + +Connections to OpenVZ driver +---------------------------- + +The libvirt OpenVZ driver is a single-instance privileged driver, with a driver +name of 'openvz'. Some example connection URIs for the libvirt driver are: + +:: + + openvz:///system (local access) + openvz+unix:///system (local access) + openvz://example.com/system (remote access, TLS/x509) + openvz+tcp://example.com/system (remote access, SASl/Kerberos) + openvz+ssh://root@xxxxxxxxxxx/system (remote access, SSH tunnelled) + +Notes on bridged networking +--------------------------- + +Bridged networking enables a guest domain (ie container) to have its network +interface connected directly to the host's physical LAN. Before this can be used +there are a couple of configuration pre-requisites for the host OS. + +Host network devices +~~~~~~~~~~~~~~~~~~~~ + +One or more of the physical devices must be attached to a bridge. The process +for this varies according to the operating system in use, so for up to date +notes consult the `Wiki <https://wiki.libvirt.org>`__ or your operating system's +networking documentation. The basic idea is that the host OS should end up with +a bridge device "br0" containing a physical device "eth0", or a bonding device +"bond0". + +OpenVZ tools configuration +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +OpenVZ releases later than 3.0.23 ship with a standard network device setup +script that is able to setup bridging, named ``/usr/sbin/vznetaddbr``. For +releases prior to 3.0.23, this script must be created manually by the host OS +administrator. The simplest way is to just download the latest version of this +script from a newer OpenVZ release, or upstream source repository. Then a +generic configuration file ``/etc/vz/vznet.conf`` must be created containing + +:: + + #!/bin/bash + EXTERNAL_SCRIPT="/usr/sbin/vznetaddbr" + +The host OS is now ready to allow bridging of guest containers, which will work +whether the container is started with libvirt, or OpenVZ tools. + +Example guest domain XML configuration +-------------------------------------- + +The current libvirt OpenVZ driver has a restriction that the domain names must +match the OpenVZ container VEID, which by convention start at 100, and are +incremented from there. The choice of OS template to use inside the container is +determined by the ``filesystem`` tag, and the template source name matches the +templates known to OpenVZ tools. + +:: + + <domain type='openvz' id='104'> + <name>104</name> + <uuid>86c12009-e591-a159-6e9f-91d18b85ef78</uuid> + <vcpu>3</vcpu> + <os> + <type>exe</type> + <init>/sbin/init</init> + </os> + <devices> + <filesystem type='template'> + <source name='fedora-9-i386-minimal'/> + <target dir='/'/> + </filesystem> + <interface type='bridge'> + <mac address='00:18:51:5b:ea:bf'/> + <source bridge='br0'/> + <target dev='veth101.0'/> + </interface> + </devices> + </domain> diff --git a/docs/meson.build b/docs/meson.build index bf5a978b07..d936091091 100644 --- a/docs/meson.build +++ b/docs/meson.build @@ -22,7 +22,6 @@ docs_html_in_files = [ 'csharp', 'dbus', 'docs', - 'drvopenvz', 'drvsecret', 'drvtest', 'drvvbox', @@ -80,6 +79,7 @@ docs_rst_files = [ 'drvhyperv', 'drvlxc', 'drvnodedev', + 'drvopenvz', 'drvqemu', 'errors', 'formatbackup', -- 2.35.1