Versions Compared

Key

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

...

An example of when concurrency limits apply is when you are deploying a virtual appliance with multiple VMs.

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

Control concurrency at the platform level

...

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

Code Block
java
java
abiquo.virtualfactory.{pluginTypeInLowerCase}.openSession
abiquo.virtualfactory.{backupManagerLowerCase}.backup.openSession
abiquo.virtualfactory.{deviceLowerCase}.device.openSession

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

For example, to allow two connections to AWS.one concurrent operation on each AWS region.

Code Block
abiquo.virtualfactory.amazon.openSession=1



Control concurrency at the virtual datacenter level

...

If you do not specify these properties, the default values are false, which means that concurrent operations are limited by at the type level of the hypervisor/public cloud provider, 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


To prevent compute concurrency in the same virtual datacenter, which means all the operations to the same VDC will be executed one after another, set the "byvdc" property to true and restrict the total number of sessions as the platform or provider/hypervisor level.

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

...

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


Allow fast VM state changes

...

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

 

Limitations

* the properties only apply to the virtualfactory (vm centric ops) so don't expect other operations with entities related to virtualdatacenter are also executed in the same pool (eg: create private network doesn't follow this concurrency limitations)

* byvdc requires a Vpc interface implementation, which can be:
** compute plugin also implements Vpc. eg: PCR vcloud 
** compute plugin + networking device. eg: vcenter + nsx device 

...