NSX-T workload domain creation fails when the ESXi hosts use physical NICs other than vmnic0 and vmnic1
search cancel

NSX-T workload domain creation fails when the ESXi hosts use physical NICs other than vmnic0 and vmnic1

book

Article ID: 324076

calendar_today

Updated On:

Products

VMware Cloud Foundation

Issue/Introduction

Symptoms:
  • NSX-T workload domain creation fails when the ESXi hosts use physical NICs other than vmnic0 and vmnic1
  • You see messages similar to the following in the /var/log/vmware/vcf/domainmanager/domainmanager.log file on the SDDC Manager VM:
2019-02-28 16:50:03.133 [vcf_dm,3ad1ccc782c22a05,4c40fe8456c6f0fc] [1-thread-5] ERROR [c.v.v.c.f.p.n.a.AttachPnicsAndVmknicsToNvdsAction] INPUT_PARAM_ERROR
java.lang.IllegalArgumentException: Number of vmnics and nvds uplinks do not match

2019-02-28 16:50:03.133 [vcf_dm,3ad1ccc782c22a05,4c40fe8456c6f0fc] [1-thread-5] ERROR [c.v.e.sddc.orchestrator.model.error.ErrorFactory] [NS72U7] INPUT_PARAM_ERROR Invalid parameter: {0}
com.vmware.evo.sddc.orchestrator.exceptions.OrchTaskException: Invalid parameter: {0}
Caused by: java.lang.IllegalArgumentException: Number of vmnics and nvds uplinks do not match

 
Note: The preceding log excerpts are only examples. Date, time, and environmental variables may vary depending on your environment.


Environment

VMware Cloud Foundation 3.5.x

Resolution

This is a known issue affecting VMware Cloud Foundation 3.5.x. This issue is resolved in VMware Cloud Foundation 3.7.

Workaround:
The steps noted in Creating an NSX-T VI workload domain in VMware Cloud Foundation 3.5.x fails (67144) can be used to workaround this issue in VMware Cloud Foundation 3.5.x. 

If implementing the steps in Creating an NSX-T VI workload domain in VMware Cloud Foundation 3.5.x fails (67144) is not an option, the following steps can be used to workaround the issue:

Notes:
  • VMware Cloud Foundation must be at version 3.5.1 prior to installing the domainmanager patch. If the version is currently 3.5.0, upgrade to 3.5.1 before proceeding.
  • Take a snapshot of the SDDC Manager VM prior to starting this procedure.
  1. Download vcf-domain-manager-3.5.1-12658897.noarch.rpm.
  2. Use a file transfer utility to copy the vcf-domain-manager-3.5.1-12658897.noarch.rpm file to the /tmp folder on the SDDC Manager VM.
  3. SSH to the SDDC Manager VM as the vcf user and then issue the su - command to switch to the root user.
  4. Issue the following command to install the vcf-domain-manager-3.5.1-12658897.noarch.rpm file:
rpm -Uvh /tmp/vcf-domain-manager-3.5.1-12658897.noarch.rpm
 
Note: You will see output similar to the following:
 
Preparing...                          ################################# [100%]
Updating / installing...
   1:vcf-domain-manager-3.5.1-12658897################################# [ 50%]
+ test 2 -eq 1
+ systemctl daemon-reload
+ systemctl restart domainmanager.service
Cleaning up / removing...
   2:vcf-domain-manager-3.5.0-11215621################################# [100%]
  1. Issue the following command to validate that the version of the domainmanager component is upgraded to 3.5.0-11215621:
curl http://localhost/domainmanager/about
 
Note: You should see output similar to the following:
 
{
  "id": "1f0a90ad-bf26-4358-a3bf-d217f7e8ffdc",
  "name": "DOMAIN_MANAGER",
  "version": "3.5.1-RELEASE-12658897",
  "status": "ACTIVE",
  "serviceUrl": "http://127.0.0.1:7200/domainmanager",
  "description": "Domain Manager"
  1. Issue the following command to make a copy of the /opt/vmware/vcf/lcm/lcm-app/conf/VersionAlias.yml file:
cp -fp /opt/vmware/vcf/lcm/lcm-app/conf/VersionAlias.yml /opt/vmware/vcf/lcm/lcm-app/conf/VersionAlias.yml.$(date +%Y%m%d)
  1. Open the /opt/vmware/vcf/lcm/lcm-app/conf/VersionAlias.yml file with a text editor.
  2. Add the following to the end of the file:
    DOMAIN_MANAGER:
    - base: 3.5.1-RELEASE-12050813
      alias:
        - 3.5.1-RELEASE-12658897
  1. Save and close the file.
  2. Restart the lcm service by issuing the systemctl restart lcm command.
Note: Remove the snapshot of the SDDC Manager VM that was taken previously.