vSAN Health Service - Invalid unicast agent test
search cancel

vSAN Health Service - Invalid unicast agent test

book

Article ID: 326434

calendar_today

Updated On:

Products

VMware vSAN

Issue/Introduction

This article explains the Stretched Cluster Health - Invalid unicast agent test in the vSAN Health Service and provides details about why it might report an error.

Environment

VMware vSAN 7.0.x
VMware vSAN 6.5.x
VMware vSAN 6.x
VMware vSAN 6.6.x
VMware vSAN 8.0.x
VMware vSAN 6.1.x
VMware vSAN 6.2.x

Resolution

Q: What does the Stretched Cluster Health - Invalid unicast agent check do?
A: The Invalid unicast agent test checks whether the unicast setting for the cluster are valid. An invalid unicast agent on the host can cause a communication malfunction with the witness hosts.


Q: What does it mean when it is in an error state?
A: The unicast agent address could not be recognized as a valid address for the vSAN cluster.


Verify IP address for Witness
To verify the listening IP address and port used by the witness host, run this command:
  • esxcli vsan network list
To avoid confusion, configure only one interface for vSAN traffic. The witness host uses the first available vSAN network interface to listen for unicast IP traffic.

You can test vSAN network connectivity by using supplied vmkernel port from the above command with a vmkping test to any other vSAN host. This will test unicast connectivity through basic ICMP pings. 
  • vmkping -I vmk# -d [-s 8972/1472] destination_ip 
    • Which packet size to test with:
      • Include the "-s 8972" without the brackets if jumbo frames with MTU of 9000 are configured.
      • When MTU of 1500 are used, use "-s 1472" instead.
    • The vmk# reflects your vSAN vmkernel adapter (vmk). 
    • Destination IP, is the ip of another host/witness's vSAN network IP. 
    • -d is (do not fragment) this is highly advised for vSAN connectivity tests where jumbo frames are in use. 
For example, where vSAN is vmk1 and jumbo frames (MTU 9000) is configured. 
  • vmkping -I vmk1 -d -s 8972 192.168.xx.xx 


== On the hosts (does not apply to witness) ==
To verify if the current host is using unicast, run the following: 
  • esxcli vsan cluster get
(Unicast Mode Enabled = True) should be reflected here. 


To verify unicast agent tables, to ensure witness and hosts are listed, run:
  • esxcli vsan cluster unicastagent list
Note: This list should contain every member in the cluster, except for itself. 

To set the correct unicast agent address for the host, you must know the correct witness host address and unicast bound port, and then use this command to add a valid unicast agent while removing the invalid one:

$ esxcli vsan cluster unicastagent add --help
Usage: esxcli vsan cluster unicastagent add [cmd options]

Description:
add Add a unicast agent to the Virtual SAN cluster configuration.

Cmd options:
-a|--addr=<str> IP address of the unicast agent. (required)
-i|--bound-interface-name=<str>
Name of the bound outgoing network interface.
-p|--port=<long> Port the unicast agent is listening on.

$ esxcli vsan cluster unicastagent remove --help
Usage: esxcli vsan cluster unicastagent remove [cmd options]

Description:
remove Remove a unicast agent from the Virtual SAN cluster configuration.


Cmd options:
-a|--addr=<str> IP address of the unicast agent. (required)
-p|--port=<long> Port the unicast agent is listening on.


See KB Configuring vSAN Unicast networking from the command line (2150303) for more details.

Additional Information