VCF Bring-up fails at "Create NFS VMkernel adapter" task with the error VSPHERE_CREATE_NFS_VSWITCH_FAILED
search cancel

VCF Bring-up fails at "Create NFS VMkernel adapter" task with the error VSPHERE_CREATE_NFS_VSWITCH_FAILED

book

Article ID: 436032

calendar_today

Updated On:

Products

VMware SDDC Manager

Issue/Introduction

During a VMware Cloud Foundation (VCF) deployment, the bring-up process halts at the task "create NFS VMkernel adapter on ESXI hosts".

The following error is observed in the `/var/log/vmware/vcf/domainmanager/domainmanager.log` on the VCF Installer appliance:
`VSPHERE_CREATE_NFS_VSWITCH_FAILED` because the vmnic0 configured in the spec is already in use.

The workflow is failing when we try to create NFS switch on the hosts:

YYYY-MM-DDTHH:MM:SS+000 DEBUG [vcf_dm,<task_id>,####] [c.v.e.s.c.c.v.vsphere.VcManagerBase,dm-exec-21]  Creating vswitch:<switch_name>
YYYY-MM-DDTHH:MM:SS+000 DEBUG [vcf_dm,<task_id>,####]] [c.v.e.s.o.model.error.ErrorFactory,dm-exec-21]  [PST6DG] VSPHERE_CREATE_NFS_VSWITCH_FAILED Failed to create NFS vSwitch <switch_name> on host <host_name>.
com.vmware.evo.sddc.orchestrator.exceptions.OrchTaskException: Failed to create NFS vSwitch <switch_name> on host <host_name>.
 at com.vmware.vcf.common.fsm.plugins.action.impl.CreateNfsVmknicOnHost.execute(CreateNfsVmknicOnHost.java:123)
 at com.vmware.vcf.common.fsm.plugins.action.impl.CreateNfsVmknicOnHost.execute(CreateNfsVmknicOnHost.java:61)
 at com.vmware.evo.sddc.orchestrator.platform.action.FsmActionState.invoke(FsmActionState.java:66)
 at com.vmware.evo.sddc.orchestrator.platform.action.FsmActionPlugin.invoke(FsmActionPlugin.java:161)
 at com.vmware.evo.sddc.orchestrator.platform.action.FsmActionPlugin.invoke(FsmActionPlugin.java:147)
 at com.vmware.evo.sddc.orchestrator.core.ProcessingTaskSubscriber.invokeMethod(ProcessingTaskSubscriber.java:403)
 at com.vmware.evo.sddc.orchestrator.core.ProcessingTaskSubscriber.processTask(ProcessingTaskSubscriber.java:517)
 at com.vmware.evo.sddc.orchestrator.core.ProcessingTaskSubscriber.accept(ProcessingTaskSubscriber.java:128)
 at jdk.internal.reflect.GeneratedMethodAccessor826.invoke(Unknown Source)
 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.base/java.lang.reflect.Method.invoke(Method.java:569)
 at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:85)
 at com.google.common.eventbus.Subscriber.lambda$dispatchEvent$0(Subscriber.java:71)
 at com.vmware.vcf.common.tracing.TraceRunnable.run(TraceRunnable.java:63)
 at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
 at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
 at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: com.vmware.evo.sddc.common.client.vmware.vsphere.VsphereOperationException: Unable to add vSwitch <switch_name> on host <host_name>!
 at com.vmware.evo.sddc.common.client.vmware.vsphere.VcManagerBase.addVswitch(VcManagerBase.java:5045)
 at com.vmware.vcf.common.fsm.plugins.action.impl.CreateNfsVmknicOnHost.execute(CreateNfsVmknicOnHost.java:116)
 ... 16 common frames omitted
Caused by: com.vmware.vim.binding.vim.fault.ResourceInUse: The resource 'vmnic0' is in use.

Environment

VMware Cloud Foundation 9.0.x

Cause

This failure occurs due to a physical network interface (pNIC) conflict defined in the deployment configuration JSON. The uplinks specified for the NFS Distributed Virtual Switch (VDS) within the `dvsSpecs` configuration are already actively claimed by the ESXi host's default standard switch (e.g., `vSwitch0`) for management traffic. The installer cannot claim interfaces that are already in use by a conflicting virtual switch.

Resolution

To resolve this issue, correct the physical uplink mappings in the deployment configuration:

1. Open the deployment JSON configuration file used for the VCF bring-up.
2. Navigate to the `dvsSpecs` section.
3. Review the `vmnicsToUplinks` mapping for each defined VDS.
4. Reassign the uplinks so there is no overlap with the host's existing management physical NICs. 
   *Example:* Assign `vmnic0` and `vmnic1` to the Management VDS, and assign available, dedicated storage interfaces (such as `vmnic2` and `vmnic3`) to the NFS VDS.
5. Save the updated JSON configuration.
6. Retry the failed deployment task from the VCF Installer UI.

Additional Information

Ensure that the physical switch ports connected to the newly assigned NFS physical NICs (e.g., `vmnic2`, `vmnic3`) are configured for the correct VLANs and MTU (Jumbo Frames) as specified in the VCF deployment parameters.