Open main menu

OpenVZ Virtuozzo Containers Wiki β

Changes

UBC configuration examples

4,358 bytes added, 02:25, 23 August 2006
created
{{UBC toc}}

Table [[UBC configuration examples table]] contains example settings of the system resources
parameters. There are 4 example configurations — A, B, C and D, in the
order of increasing Virtual Environment power.

“Power” represents the power of the Virtual Environment. It is shown
as the RAM size of the computer slash number of Virtual Environments of
this type that can be run on such a computer.

“Helper values” are intermediate values, produced during computation
of the resource control parameter limits. These values help to understand
the process of computing the limits and verify the result. “Total mem”
represents the total amount of RAM allowed to be used to each Virtual
Environment, “kernel mem” is its kernel fraction (consisting of <code>kmemsize</code>
and all socket buffers) and “user mem” is the memory allowed to be allocated
to processes. <code>Avnumproc</code> is the expected avarage number of processes, as used

in recommendations in [[UBC consistency check]].

For parameters having distinctive <code>barrier</code> and <code>limit</code> the values of the
barrier and the limit are shown separated by “/” sign.

All values are given in their “natural units of measurement” (except were
the units are explicitly specified). The natural units of measurement are the
units in which the values are accepted by [[vzctl]] command and stored in
Virtual Environment configuration file.

For parameters with names ending in “pages” the natural units of measurement are pages.
For other memory parameters (<code>[[kmemsize]]</code>, <code>[[dcachesize]]</code>
and all socket buffers) the units are bytes. For the remaining parameters
(such as <code>[[numproc]]</code>) the units are items.

== Explanation of the examples ==

=== Example A ===
This is a configuration of a most “light” Virtual Environment.
It has 15 processes on average and can have up to 40 network connections.
This configuration allows to run a simple Web server, handling static and
dynamic pages produced by simple scripts and accessible over ssh and ftp.
Configurations of apache and FTP servers must be adjusted to reduce the
number of spawned processes and memory consumption.

A computer with 2GB of RAM can run up to 400 of such Virtual Environments.

Here is an example <code>pstree(1)</code> output inside such a Virtual Environment:
<pre>[root@test /root]# pstree
init-+-crond
|-httpd---20*[httpd]
|-sendmail
|-sshd
|-syslogd
`-xinetd
</pre>

=== Example B ===
Example B is a configuration for a not “heavy” and not very loaded server.
It can be a dynamic Web server, mail, FTP or DNS server (but not a combination of them).
The configuration assumes 40 processes on average and
up to 80 network connections.

A computer with 2GB of RAM can run up to 120 of such Virtual Environmentrs.

=== Example C ===
A configuration for a “heavy” server: Web application
server with a database backend or any other server consuming a considerable
amount of memory and other resources. Mail and FTP servers having
up to 200 simultaneous clients can also work with this configuration. The
configuration is designed for 200 processes on average, up to 500 network
connections and about 250MB of RAM for each Virtual Environment.

=== Example D ===
Example D is a configuration for 1 Virtual Environment on a computer
and emulates a stand-alone server. It roughly corresponds to the default
configuration of a stand-alone Linux system.

'''Caution''': it is not a safe configuration. Like a stand-alone Linux system,
it can hang if too much memory is consumed. It isn't a security problem,
because it is a configuration for only 1 Virtual Environment on a computer.
However, to make the configuration more robust and protect the system from
silent hangs, <code>[[numproc]]</code>, <code>[[kmemsize]]</code> and
other parameters should be limited to lower values. For example, a
configuration produced by multiplying the limits
from [[{{PAGENAME}}#Example C|Example C]] by 4 is a safe configuration.

== Not specified values ==

For compatibility with future versions, the <code>limit</code>s of <code>[[vmguarpages]]</code>,
<code>[[oomguarpages]]</code>, <code>[[physpages]]</code> should be set to [[MAX_ULONG]]. The <code>barrier</code> of
<code>[[physpages]]</code> should be set to 0.