Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The platform uses configuration properties to control the number of concurrent operations for a hypervisor or provider, device, or backup manager. 

This feature also enables you to change the context of concurrency control from the whole platform to the hypervisor/provider level , or to the VDC level. So you can control concurrent operations on a specified type of hypervisor, public cloud region, or VDC. This enables administrators to restrict only a specific hypervisor type (e.g. vCloud with no concurrency) without affecting other types (e.g. ESXi with maximum concurrency).

At the VDC level, the platform can limit concurrent operations that affect the same virtual datacenter, while allowing ones to different other VDCs, e.g. vCloud_VDC_1 and vCloud_VDC_2. .

Through the VDC context, the platform can control concurrency for the many kinds of entities associated with a VM (its firewalls, load balancers, NAT IPs, and backups).

You can choose to allow concurrent operations that change the state of a VM, e.g. powering it on, while limiting VM configure operations.

...

The concurrency limits do not apply to non-VM entities related to virtual datacenters because it the platform does not use the same pool for these, for example, the platform does not restrict the number of concurrent operations to create a private network.  

...


Set default concurrency

...

limits for the platform

...

The top level of concurrency configuration is the platform. This limits  These properties limit the number of concurrent operations for the same connection (hypervisor IP or endpoint), device, or backup manager.

...

This means that if you have two vCenters and some public cloud regions, you can perform two concurrent operations on vCenter1, and two on vCenter2, and two on each of the public cloud regions.

...



Set concurrency limits for a type of hypervisor or public cloud provider, device, or backup manager

To limit concurrency for specific plugins, devices, or backup managers, set the specific properties for this purpose.

...

If you do not specify a value, then the default is the platform level property.

For example, to allow only one concurrent operation at any time on each AWS region.

Code Block
abiquo.virtualfactory.amazon.openSession=1

...

Concurrency control at the VDC level means that the platform will apply the properties for concurrency values (including plugin typelimits (for hypervisor/PCR endpoint, device, and backup manager) to an individual PER VDC.

This means that you must The platform supports "byvdc" properties when you have either a public cloud region with native support for VDCs (e.g. AWS VPC, Azure Virtual Network, vCloud vApp) or a hypervisor with a network device, (e.g. vCenter + NSX device).  

If you do not specify these properties, the default values are false, which means that concurrent operations are limited at the level of the the platform will apply the concurrency limits PER hypervisor/public cloud providerendpoint, device, or backup manager. Or by the values set at the platform level. 

Code Block
java
java
abiquo.virtualfactory.openSession.byvdc=false
abiquo.virtualfactory.device.openSession.byvdc=false
abiquo.virtualfactory.backup.openSession.byvdc=false

...

For example, with the the following properties, it will only be possible to execute multiple concurrent operations (for the same hypervisor/PCR endpoint (connection data)) but only if they affect different virtual datacenters.

Code Block
java
java
abiquo.virtualfactory.openSession.byvdc=true
abiquo.virtualfactory.openSession=1


When using you use ''openSession.byvdc'' properties, the platform does not limit the maximum number of concurrent connections to the provider endpoint or hypervisor IP (i.e. same set of connection data)hypervisor/PCR endpoint, device, or backup manager. 

In contrast, if openSession.byvdc is false, the platform will only allow two concurrent operations for each provider endpoint or hypervisor IP, device, or backup manager.

For example, for the following configuration, in AWS you could have a total number of concurrent operations equal to the number of virtual datacenters x 2.

Code Block
java
java
abiquo.virtualfactory.openSession.byvdc=true
abiquo.virtualfactory.amazon.openSession=2

In contrast, if the "byvdc" properties are false (or not present) the platform will only allow two concurrent operations for each hypervisor/provider endpoint, device, or backup manager.

Allow fast VM state changes

The VM state changes change operations are as follows

  • powerOn
  • powerOff
  • shutdown
  • reset
  • pause
  • resume

...

When you use this fast state changes functionality, the platform will always execute VM state changes when you request them, without waiting for an ''available worker in the pool''any concurrent operations to finish.

For example, with the following configuration, the platform will only allow one configure/deconfigure/reconfigure at a time, but several state changes can occur concurrently.

...