Skip to content

Added hot plugging of vifs in case of VMware isolated networks#5912

Merged
DaanHoogland merged 1 commit into
4.16from
VMwareRemoveExtraReservedInterfaces
Feb 4, 2022
Merged

Added hot plugging of vifs in case of VMware isolated networks#5912
DaanHoogland merged 1 commit into
4.16from
VMwareRemoveExtraReservedInterfaces

Conversation

@harikrishna-patnala

@harikrishna-patnala harikrishna-patnala commented Jan 31, 2022

Copy link
Copy Markdown
Member

Description

This PR fixes #5716 where isolated network VR failed to deploy when Vmxnet3 adapter type is used and when router.extra.public.nics is not 0. This is because of the extra nics that are reserved in the VR based on the global setting router.extra.public.nics.

To address the issue we have now implemented nic hot plugging for isolated networks because systemvm templates had open-vm-tools installed and support hot plugging which is what is already used in the case of VPC VR.

Types of changes

  • Breaking change (fix or feature that would cause existing functionality to change)
  • New feature (non-breaking change which adds functionality)
  • Bug fix (non-breaking change which fixes an issue)
  • Enhancement (improves an existing feature and functionality)
  • Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity

Feature/Enhancement Scale

  • Major
  • Minor

Bug Severity

  • BLOCKER
  • Critical
  • Major
  • Minor
  • Trivial

Screenshots (if appropriate):

How Has This Been Tested?

Steps to reproduce:

  1. Set the global setting vmware.systemvm.nic.device.type to Vmxnet3 and router.extra.public.nics to some value (not 0)
  2. Create an isolated network and VM in it.
  3. VR will stuck in starting state

After the fix, following are the test cases that are performed

  1. Set the global setting vmware.systemvm.nic.device.type to Vmxnet3. router.extra.public.nics is not used in VMware anymore.
  2. Create an isolated network N1 and VM in it
  3. Add a new IP range with different vlan under "Physical Network Guest Public".
  4. Aquire an IP from the above range in the network N1
  5. Enable staticnat on that IP
  6. Observed VR interfaces a new interface is created dynamically

Followed the same steps with vmware.systemvm.nic.device.type value E1000 and VR came up and subsequent operations of acquiring IP, enabling static NAT worked fine.

…g router.extra.public.nics in case of VMware.

Added hot plugging of vifs whenever required in case of isolated networks. VPC networks already uses hotplugging of vifs.
@harikrishna-patnala

Copy link
Copy Markdown
Member Author

@blueorangutan package

@blueorangutan

Copy link
Copy Markdown

@harikrishna-patnala a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

@blueorangutan

Copy link
Copy Markdown

Packaging result: ✔️ el7 ✔️ el8 ✔️ debian ✔️ suse15. SL-JID 2402

@sureshanaparti

Copy link
Copy Markdown
Contributor

@blueorangutan test centos7 vmware-67u3

@blueorangutan

Copy link
Copy Markdown

@sureshanaparti a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests

@borisstoyanov borisstoyanov left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, manually tested

@borisstoyanov borisstoyanov removed their assignment Feb 1, 2022
@harikrishna-patnala

Copy link
Copy Markdown
Member Author

@blueorangutan test centos7 vmware-67u3

@blueorangutan

Copy link
Copy Markdown

@harikrishna-patnala a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests

@weizhouapache

Copy link
Copy Markdown
Member

@blueorangutan package

@blueorangutan

Copy link
Copy Markdown

@weizhouapache a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

@blueorangutan

Copy link
Copy Markdown

Packaging result: ✔️ el7 ✔️ el8 ✔️ debian ✔️ suse15. SL-JID 2444

@DaanHoogland

Copy link
Copy Markdown
Contributor

@blueorangutan test

@blueorangutan

Copy link
Copy Markdown

@DaanHoogland a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

@blueorangutan

Copy link
Copy Markdown

Trillian test result (tid-3143)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 32926 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr5912-t3143-kvm-centos7.zip
Smoke tests completed. 92 look OK, 0 have errors
Only failed tests results shown below:

Test Result Time (s) Test File

@blueorangutan

Copy link
Copy Markdown

Trillian test result (tid-3144)
Environment: vmware-67u3 (x2), Advanced Networking with Mgmt server 7
Total time taken: 36943 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr5912-t3144-vmware-67u3.zip
Smoke tests completed. 91 look OK, 1 have errors
Only failed tests results shown below:

Test Result Time (s) Test File
test_08_reboot_cpvm Failure 26.75 test_ssvm.py

@yadvr yadvr left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - manual testing to confirm change required

@yadvr

yadvr commented Feb 4, 2022

Copy link
Copy Markdown
Member

@harikrishna-patnala can you check/address any outstanding review comments
@blueorangutan package

@blueorangutan

Copy link
Copy Markdown

@rohityadavcloud a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

@blueorangutan

Copy link
Copy Markdown

Packaging result: ✔️ el7 ✔️ el8 ✔️ debian ✔️ suse15. SL-JID 2450

@apache apache deleted a comment from blueorangutan Feb 4, 2022
@yadvr

yadvr commented Feb 4, 2022

Copy link
Copy Markdown
Member

@blueorangutan test centos7 vmware-67u3

@weizhouapache weizhouapache left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@harikrishna-patnala
I have tested many scenarios with isolated networks and vpcs.

all looks ok, except an issue: #5934
I think it is not related to this PR.

@harikrishna-patnala

Copy link
Copy Markdown
Member Author

Thanks for all the testing @weizhouapache @rohityadavcloud @borisstoyanov
@rohityadavcloud no outstanding review comments to address.

@DaanHoogland

Copy link
Copy Markdown
Contributor

@harikrishna-patnala I have tested many scenarios with isolated networks and vpcs.

all looks ok, except an issue: #5934 I think it is not related to this PR.

did you test that issue in a generic 4.16, @weizhouapache ?

@weizhouapache

Copy link
Copy Markdown
Member

@harikrishna-patnala I have tested many scenarios with isolated networks and vpcs.
all looks ok, except an issue: #5934 I think it is not related to this PR.

did you test that issue in a generic 4.16, @weizhouapache ?

@DaanHoogland
yes, 4.16 does not support both hotplug and hot-unplug.
with this pr, hotplug is supported.
we could merge this at first, then support hot-unplug afterwards.

@DaanHoogland

Copy link
Copy Markdown
Contributor

good merging...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

No open projects
Status: Done

Development

Successfully merging this pull request may close these issues.

Isolated Network VR with Vmxnet3 fails deployment when router.extra.public.nics is not 0

7 participants