Skip to content

New vmware.ports.per.dvportgroup global setting breaks existing deployments #2631

@PaulAngus

Description

@PaulAngus
ISSUE TYPE
  • Bug Report
COMPONENT NAME
Hypervisor (VMware)
CLOUDSTACK VERSION
4.11.0
CONFIGURATION

dvSwitch in VMware environment >5.0

OS / ENVIRONMENT
SUMMARY
commit:
https://github.com/sureshanaparti/cloudstack/commit/deb2f530b71c1dc13665c0b8dacfb025c38f58b9#diff-2e10685e0f701ef7fd43267f2879bb8e

sets vmware.ports.per.dvportgroup to a low value allowing autogrow to set the value going forward.  However, If a portgroup already exists and has more than (say) 10 ports in use already then a error such as:

> Cannot set number of ports to 10 because at least 11 out of 18 ports are still in use

will be thrown when creating a VM on said dvSwitch and the VM will fail to be deployed.
Setting ALL dvsportgroups to use a sufficiently high number to cover ALL dvsportgroup values will be expensive in large environments.


STEPS TO REPRODUCE
Create a VMware environment >5.0 (5.5 in this case), which uses dvSwitches - this example manifests itself on the mgmt network.  CloudStack version 4.6
use the environment sufficiently to create more than 10 ports on mgmt dvSwitch (or any other network to create other failures).

Upgrade to ACS 4.11.0

Attempt to destroy CPVM in order for it to be recreated.
EXPECTED RESULTS
CPVM is destroyed and recreated (CloudStack either leaves number of ports attached 'as is' or reduces the number of ports in the portgroup to slightly greater than the number of ports in use.
ACTUAL RESULTS
An error is thrown:

> Cannot set number of ports to 10 because at least 11 out of 18 ports are still in use

CPVM is not deployed.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions