Add Host to Cluster fails on Management Portgroup Uplink Teaming Validation Action
search cancel

Add Host to Cluster fails on Management Portgroup Uplink Teaming Validation Action

book

Article ID: 369617

calendar_today

Updated On:

Products

VMware SDDC Manager

Issue/Introduction

Symptoms:

When an ESXI Host with mixed-case FQDN is added to a cluster ManagementPortgroupUplinkTeamingValidationAction, it fails with an error similar to:

```

cd /var/log/vmware/vcf/domainmanager.log


VCF_ERROR_INTERNAL_SERVER_ERROR Invocation of prefix '' part of task ManagementPort
groupUplinkTeamingValidationAction in plugin HostNetworkingPlugin failed with exception.
com.vmware.evo.sddc.common.core.error.InternalServerErrorException: Invocation of prefix '' part of task ManagementPortgroupUplinkTeamingValidationAction in plugin HostNetworkingPlugin failed with exception
.
        at com.vmware.evo.sddc.orchestrator.core.ProcessingTaskSubscriber.invokeMethod(ProcessingTaskSubscriber.java:447)
        at com.vmware.evo.sddc.orchestrator.core.ProcessingTaskSubscriber.processTask(ProcessingTaskSubscriber.java:520)
        at com.vmware.evo.sddc.orchestrator.core.ProcessingTaskSubscriber.accept(ProcessingTaskSubscriber.java:124)
        at jdk.internal.reflect.GeneratedMethodAccessor384.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:88)
        at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:73)
        at org.springframework.cloud.sleuth.instrument.async.TraceRunnable.run(TraceRunnable.java:68)
        at org.springframework.cloud.sleuth.instrument.async.TraceRunnable.run(TraceRunnable.java:68)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)Caused by: java.lang.NullPointerException: null
        at com.vmware.vim.vmomi.client.http.impl.HttpClient.resolveMoRef(HttpClient.java:124)
        at com.vmware.vim.vmomi.client.http.impl.HttpClient.createStub(HttpClient.java:89)
        at com.vmware.evo.sddc.common.client.vmware.BaseVmomiClient.createStub(BaseVmomiClient.java:91)
        at com.vmware.evo.sddc.common.client.vmware.vsphere.VcManagerBase.listAvailableVmnicsForHost(VcManagerBase.java:12372)
        at com.vmware.vcf.common.fsm.plugins.action.impl.ManagementPortgroupUplinkTeamingValidationAction.hostAvailableVmnic(ManagementPortgroupUplinkTeamingValidationAction.java:189)
        at com.vmware.vcf.common.fsm.plugins.action.impl.ManagementPortgroupUplinkTeamingValidationAction.execute(ManagementPortgroupUplinkTeamingValidationAction.java:90)
        at com.vmware.vcf.common.fsm.plugins.action.impl.ManagementPortgroupUplinkTeamingValidationAction.execute(ManagementPortgroupUplinkTeamingValidationAction.java:43)
        at com.vmware.evo.sddc.orchestrator.platform.action.FsmActionState.invoke(FsmActionState.java:62)
        at com.vmware.evo.sddc.orchestrator.platform.action.FsmActionPlugin.invoke(FsmActionPlugin.java:159)
        at com.vmware.evo.sddc.orchestrator.platform.action.FsmActionPlugin.invoke(FsmActionPlugin.java:144)
        at com.vmware.evo.sddc.orchestrator.core.ProcessingTaskSubscriber.invokeMethod(ProcessingTaskSubscriber.java:400)

 

We also observe that the host will go to the following error state:

platform=# select id,hostname,name,status from host where status='ERROR';

                  id                  |          hostname           | name | status

--------------------------------------+-----------------------------+------+--------

 7bd8d87a-3841-xxxx-81fb-fcb1489xxxx |Hostname.com |    Hostname  | ERROR


```

Environment

Vmware Cloud Foundation 4.x

Cause

This issue is caused due to a cross-product gap when doing an nslookup for the host.

Resolution

Currently there is no resolution. This will be resolved in the future release.


Workaround:

To workaround the issue, please follow the steps mentioned below:
This validation logic can be skipped by adding the following application property validation.disable.mgmt.portgroup.uplink.teaming.check in the domain manager service:

  1. SSH to SDDC Virtual Machine and open /etc/vmware/vcf/domainmanager/application.properties.

  2. Add validation.disable.mgmt.portgroup.uplink.teaming.check=true in a new line.

  3. Restart the services: /opt/vmware/vcf/operationsmanager/scripts/cli/sddcmanager_restart_services.sh

  4. Retry the operation again.


This procedure should be performed once, and it will be applicable for all subsequent running operations.

The customers should manually verify that the host has at least one free vmnic available, which is going be attached with one of the uplink(s) connected to management port group.