Search

Language:  
Search for:

Available article translations:

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

APPLIES TO:
  • Parallels Cloud Server
  • Parallels Virtuozzo Containers
  • Parallels Server
  • Parallels Virtual Automation

Answer

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 and backup_deserializer11 operators on PVA Agent side. To demonstrate:

[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>

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 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>

NOTE: For PVC versions < 4.7, vzlin_backup_serializer and backup_deserializer should be used instead.

NOTE2: 0 is equal to an unlimited value.

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

Backups

vzagent

pbackup

pool

556

queue

Message is dropped before processing started because the queue is full

vzabackup

vzarestore




de15ebe36a547439f84e5981418f36c7 2897d76d56d2010f4e3a28f864d69223 909d99074e442b52ce54cc7b31cf065d ca05eaf5b843fbd53589c90d7228a6df bf1c3a170005eae151f49ba2720abde9

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