Search

Language:  
Search for:

Available article translations:

How to tune PVA configuration to allow more concurrent backup tasks?

Article ID: 120011, created on Feb 6, 2014, last review on May 4, 2015

APPLIES TO:
  • Virtuozzo
  • Virtuozzo containers
  • Virtuozzo hypervisor
  • Virtual Automation

There are two kinds of parameters, which we can tweak to control the processing of tasks in PVA: queue (the task queue size) and pool_limit (the limit for simultaneously running tasks).

Queue size

The queue size cannot exceed 5000 for the majority of PVA operators. This limit is sufficient for the routine daily activities. If a queue gets stuffed for some reason, the following messages will appear in the log files (/var/log/pva/mn/yyyy-MM-dd-vzagent.log on MN and /var/log/pva/agent/yyyy-MM-dd-vzagent.log on Agent side):

Message is dropped before processing started because the queue is full

To change the queue size limit, correct <queue> value in <gend> section of vzagent.conf. Here's a real-life example:

[root@pva ~]# awk '/<gend>/,/<\/gend>/' /var/opt/pva/mn/etc/vzagent.conf
<gend>
<configuration>
<operation_timing/>
<default_pool>
<timeout_limit>18000</timeout_limit>
<heavy_timeout_limit>360000</heavy_timeout_limit>
<urgent_timeout_limit>60</urgent_timeout_limit>
<queue>5000</queue>   <--------------!!!
...
</gend>

After changing the value, PVA service should be restarted:

# pvamn restart

For the PVA Agent side, /var/opt/pva/agent/etc/vzagent.conf (or /vz/pva/agent/etc/vzagent.conf) file should be corrected and pvaagent restart command should be used to restart the service.

<gend> section represents the global settings that cover all operators, but it's possible to define per-operator configuration by adding <queue> parameter in its section.

Pool size

Pool size defines the amount of simultaneously running tasks that an operator is allowed to have. Again, there are global settings in <gend> section and possible individual values for each operator. For backups, backupm operator should be checked on PVA MN and vzlin_backup_serializer11, backup_deserializer11, and backupm operators on PVA Agent side.

A backup is considered a heavy operation, so it falls under heavy_pool. By default it is restricted to 20 concurrent tasks. In order to set the pool size for a specific operator, it is necessary to add <custom> section inside its <configuration>, and all 3 parameters (<pool>, <heavy_pool> and <urgent_pool>) should be added.

On PVA MN side:

[root@pva ~]# awk '/<gend>/,/<\/gend>/' /var/opt/pva/mn/etc/vzagent.conf
<gend>
<configuration>
...
<pool>30</pool>
<heavy_pool>20</heavy_pool>
<urgent_pool>30</urgent_pool>
...
</gend>

[root@pva ~]# awk '/<backupm>/,/<\/backupm>/' /var/opt/pva/mn/etc/vzagent.conf
<backupm>
<configuration>
<custom>
<pool>30</pool>
<heavy_pool>20</heavy_pool>
<urgent_pool>30</urgent_pool>
</custom>
...
</configuration>
</backupm>

Restart PVA service to apply the configuration:

# pvamn restart

On nodes with PVA Agent:

[root@pcs ~]# awk '/<vzlin_backup_serializer11>/,/<\/vzlin_backup_serializer11>/' /var/opt/pva/agent/etc/vzagent.conf
<vzlin_backup_serializer11>
<configuration>
<backend>0</backend>
<enable_snapshot>1</enable_snapshot>
<custom>
<pool>0</pool>
<queue>0</queue>
<heavy_timeout_limit>82800</heavy_timeout_limit>
</custom>
</configuration>
</vzlin_backup_serializer11>

[root@pcs ~]# awk '/<backup_deserializer11>/,/<\/backup_deserializer11>/' /var/opt/pva/agent/etc/vzagent.conf
<backup_deserializer11>
<configuration>
<port>4435</port>
<custom>
<pool>0</pool>
<queue>0</queue>
<heavy_timeout_limit>82800</heavy_timeout_limit>
</custom>
</configuration>
</backup_deserializer11>

If you need to run more than 20 simultaneous backup tasks on PVA Agent side, backupm operator configuration should be adjusted as well:

[root@pcs ~]# awk '/<backupm>/,/<\/backupm>/' /var/opt/pva/agent/etc/vzagent.conf
<backupm>
<configuration>
<custom>
<pool>30</pool>
<heavy_pool>30</heavy_pool>
<urgent_pool>30</urgent_pool>
</custom>
...
</configuration>
</backupm>

Restart PVA Agent to apply the configuration:

pvaagent restart

Note!: If PVC older than 4.7 is taking part in a backup process as a target node for a backup or as a storage node, vzlin_backup_serializer and backup_deserializer should be adjusted as well.

Note!: Use 0 as a value to make option unlimited.

Pool size for VMs

The operations with VMs such as VM migration or VM backups are also limited in PVA MN by 'heavy_pool' in '/etc/opt/pva/cc/pvacc.conf', default value is "4":

    [root@pva ~]# awk '/<operators>/,/<\/operators>/' /etc/opt/pva/cc/pvacc.conf

    <operators>
            <default_pool>
                    <timeout_limit>1800</timeout_limit>
                    <heavy_timeout_limit>360000</heavy_timeout_limit>
                    <urgent_timeout_limit>60</urgent_timeout_limit>
                    <queue>50</queue>
                    <pool>10</pool>
                    <heavy_pool>4</heavy_pool>
                    <urgent_pool>20</urgent_pool>
                    <comeback_ratio>4</comeback_ratio>
                    <default_timeout>1800</default_timeout>
                    <kill_timeout>20</kill_timeout>
    </default_pool>
    </operators>

You may increase this value, and in order to apply changes restart PVA MN :

[root@pva ~]# pvamn restart
[root@pva ~]# pvacc restart

Tips

  • send the following XML API packet to PVA to check the current state of all operators:

    <packet>
    <data>
    <system>
    <get_state/>
    </system>
    </data>
    </packet>
    
  • send the following XML API packet to PVA to check the currently loaded configuration:

    <packet>
    <data>
    <system>
    <get_configuration/>
    </system>
    </data>
    </packet>
    

For information how to send XML API packets to PVA, check this article.

Search words:

#306 Message is dropped before processing started because the queue is full

backup

Backups

heavy_pool

vzagent

pbackup

pool

queue

Message is dropped before processing started because the queue is full

vzabackup

vzarestore

queueing




319940068c5fa20655215d590b7be29b 2897d76d56d2010f4e3a28f864d69223 d02f9caf3e11b191a38179103495106f a26b38f94253cdfbf1028d72cf3a498b 0dd5b9380c7d4884d77587f3eb0fa8ef

FEEDBACK
Was this article helpful?
Tell us how we may improve it.
Yes No
 
 
 
 
 
 
Server Virtualization
- Odin Cloud Server
- Odin Containers for Windows 6.0
- Odin Virtuozzo Containers
Automation
- Odin Automation
- Odin Automation for Cloud Infrastructure
- Odin Business Automation Standard
- Odin Virtual Automation
- Odin Plesk Panel Suite
- Web Presence Builder
- Odin Plesk Automation
- Odin Small Business Panel
- Value-added Services for Hosters
- Odin Partner Storefront
Services & Resources
- Cloud Acceleration Services
- Professional Services
- Support Services
- Training & Certification