Editing UBC parameters

Jump to: navigation, search

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:
{{UBC toc}}
+
{| class="wikitable"
 
+
! Name !! Description
All the existing parameters are listed in the [[UBC parameters table]].
+
|-
 
+
| colspan="2" align="center" | Primary parameters
By importance, the parameters are divided into 3 groups: [[UBC primary parameters|primary parameters]],
+
|-
[[UBC secondary parameters|secondary parameters]] and [[UBC auxiliary parameters|auxiliary parameters]].
+
| numproc        || Number of processes and threads.
More detailed description of the parameters and the resource control
+
|-
mechanisms governed by the parameters is provided in the appropriate articles.
+
| numtcpsock    || Number of TCP sockets.
 
+
|-
== General information about all parameters ==
+
| numothersock  || Number of sockets other than TCP.
All resource control parameters have some common properties
+
|-
and some differences.
+
| vmguarpages   || Memory allocation guarantee, in pages.
 
+
|-
<ol>
+
| colspan="2" align="center" | Secondary parameters
<li>Most parameters provide both accounting of some system resource
+
|-
and allow controlling its consumption.
+
| kmemsize      || Size of unswappable kernel memory, allocated for processes in this [[VE]].
The exceptions are <code>physpages</code> (accounting only)
+
|-
and <code>vmguarpages</code> (no accounting, control only), explained below.</li>
+
| tcpsndbuf      || Total size of TCP send buffers.
 
+
|-
<li>Each parameter has 2 configuration variables, called <code>barrier</code> and <code>limit</code>.
+
| tcprcvbuf      || Total size of TCP receive buffers.
 
+
|-
Although both 2 variables are changeable, only one or none of them may be
+
| othersockbuf  || Total size of UNIX-domain socket buffers, UDP and other datagram protocol send buffers.
effectively used for the resource control for some parameters.
+
|-
For example, <code>physpages</code> is an accounting-only parameter and both its
+
| dgramrcvbuf    || Receive buffers of UDP and other datagram protocols.
configuration variables are not effectively used in the current OpenVZ
+
|-
version.
+
| oomguarpages  || The guaranteed amount of memory for the case the memory is “over-booked” (out-of-memory kill guarantee), in pages.
 
+
|-
The description of each parameter explains the meaning of the <code>barrier</code>
+
| privvmpages    || Memory allocation limit, in pages.
and the <code>limit</code> and what they should be set to if they are not
+
|-
effectively used.
+
| colspan="2" align="center" | Auxiliary parameters
 
+
|-
In general, for all parameters the <code>barrier</code> should not be greater than
+
| lockedpages    || Process pages not allowed to be swapped out (pages locked by <code>mlock(2)</code>).
the <code>limit</code>.</li>
+
|-
 
+
| shmpages      || Total size of shared memory (IPC, shared anonymous mappings and <code>tmpfs</code> objects), in pages.
<li>The parameters control
+
|-
how the resources are distributed between containers in terms of
+
| physpages      || Total number of RAM pages used by processes.
* limits, i.e.&nbsp;upper boundaries on what this container can consume, and
+
|-
* guarantees, i.e.&nbsp;mechanisms ensuring that this container can get the assigned “resources” regardless of the activity and the amount of resources required by other containers.
+
| numfile        || Number of open files.
 
+
|-
The parameters containing “<code>guar</code>” in their names,
+
| numflock      || Number of file locks.
i.e.&nbsp;<code>vmguarpages</code> and <code>oomguarpages</code> are container's
+
|-
guarantees.
+
| numpty        || Number of pseudo-terminals.
They guarantee availability of resources and certain service level
+
|-
up to the value, specified by the <code>barrier</code>,
+
| numsiginfo    || Number of <code>siginfo</code> structures.
and do not guarantee above the <code>barrier</code>.
+
|-
However, these parameters do not impose usage restrictions.
+
| dcachesize    || Total size of <code>dentry</code> and <code>inode</code> structures locked in memory.
The guarantees are discussed in more detail in the paragraphs describing
+
|-
these parameters.
+
| numiptent      || Number of NETFILTER (IP packet filtering) entries.
 
+
|}
The <code>limit</code> of <code>vmguarpages</code> and <code>oomguarpages</code> should be
 
set to the maximal value [[LONG_MAX]].
 
</li>
 
 
 
<li>
 
For some resource limiting parameters, such as <code>kmemsize</code>,
 
both <code>barrier</code> and <code>limit</code> settings are effectively used.
 
If the resource usage exceeds the <code>barrier</code> but doesn't exceed the
 
<code>limit</code>, vital operations (such as process stack expansion)
 
are still allowed to allocate new
 
resources, and other ones are not allowed.
 
A gap between the <code>barrier</code> and the <code>limit</code> gives applications
 
better chances to handle resource shortage gracefully.
 
 
 
For other resource limiting parameters, such as <code>numproc</code>,
 
<code>barrier</code> and <code>limit</code> should be set to the same value.
 
</li>
 
 
 
<li>
 
Each parameter has “natural units of measurement” — the units
 
of measurement of values shown via <code>/proc/user_beancounters</code> interface and accepted by [[vzctl]].
 
Values related to parameters with names starting with <code>num</code> are measured
 
in pieces.
 
Values related to parameters with names ending with <code>pages</code> are measured
 
in memory pages (memory page is equal to 4 kilobytes on IA-32 hardware).
 
The remaining values (parameters ending with <code>size</code> and <code>buf</code>)
 
are measured in bytes. See more at [[UBC parameter units]].
 
</li>
 
 
 
</ol>
 
 
 
The properties of parameters are summarized in [[UBC parameter properties]].
 
 
 
{{Note|Continue reading with [[UBC primary parameters]], [[UBC secondary parameters]] and [[UBC auxiliary parameters]].}}
 

Please note that all contributions to OpenVZ Virtuozzo Containers Wiki may be edited, altered, or removed by other contributors. If you don't want your writing to be edited mercilessly, then don't submit it here.
If you are going to add external links to an article, read the External links policy first!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)

Templates used on this page: