If all virtual machines on an ESXi host are not working with NSX Guest Introspection Platform or if there are alarms on a particular host regarding communication to the EPP SVA, then it could be a problem with the NSX Guest Introspection Platform on the ESXi host.

To enable debugs based on context (file, process, network, or system), see Troubleshooting the Thin Agent on Linux.

NSX Guest Introspection Platform Host Agent (MUX)

  1. Check to see if the service is running on the ESXi host by running the # /etc/init.d/nsx-context-mux status command:

    For example:

    # /etc/init.d/nsx-context-mux  status
             nsx-context-mux  is running
  2. Run the ps -c |grep Mux command to find the NSX Guest Introspection Platform host agent (MUX) processes that are currently running.
    For example:
    [root@localhost:~] ps -c | grep mux
    54425332 54425332 sh                     /bin/sh /sbin/watchdog.sh -s nsx-context-mux -q 100 -t 1000000 /usr/lib/vmware/mux/bin/nsx-context-mux 900 -c 910 -u mux_user
    54425342 54425342 nsx-context-mux              /usr/lib/vmware/mux/bin/nsx-context-mux 900 -c 910 -u mux_user
    54425345 54425342 nsx-context-mux              /usr/lib/vmware/mux/bin/nsx-context-mux 900 -c 910 -u mux_user
    54425346 54425342 nsx-context-mux              /usr/lib/vmware/mux/bin/nsx-context-mux 900 -c 910 -u mux_user
    54425347 54425342 nsx-context-mux              /usr/lib/vmware/mux/bin/nsx-context-mux 900 -c 910 -u mux_user
    54425348 54425342 nsx-context-mux              /usr/lib/vmware/mux/bin/nsx-context-mux 900 -c 910 -u mux_user
  3. If the service is not running, you can restart it with these commands:/etc/init.d/nsx-context-mux start.

  4. If you see that the service is not running, restart it or start it with this command: /etc/init.d/nsx-context-mux start.

    Note that it is safe to restart this service during production hours as it does not have any great impact, and restarts in a couple of seconds.

  5. To stop the MUX process, run /etc/init.d/nsx-context-mux stop.
  6. To check the logging level currently in use, run get service nsx-context-mux logging-level.
  7. To get a better idea of what the NSX Guest Introspection Platform is doing or check the communication status, you can check the logs on the ESXi host. NSX Guest Introspection Platform logs are written to the host /var/log/syslog file. This is also included in the ESXi host support logs.

    For more information, see Collecting diagnostic information for ESX/ESXi hosts and vCenter Server using the vSphere Web Client (2032892)

  8. The default logging option for NSX Guest Introspection Platform is info and can be raised to debug to gather more information.
  9. If you run into issues with the VIB installation, check the /var/log/esxupdate.log file on the ESXi host. This log provides accurate information to know the reason the package was not successfully installed. This is a common issue for NSX Guest Introspection Platform installation issues. For more information, see Installing NSX Guest Introspection services (ESX GI Module VIB) on the ESXi host fails in VMware NSX for vSphere 6.x (2135278).
  10. To check for a corrupt ESXi image look for a message similar to this:
    esxupdate: esxupdate: ERROR: Installation Error:
     (None, 'No image profile is found on the host or image profile is empty.
     An image profile is required to install or remove VIBs. To install an image profile,
     use the esxcli image profile install command.')
  11. To verify that the image is corrupted run the command cd /vmfs/volumes on the ESXi host.
    1. Search for the imgdb.tgz file by running this command: find * | grep imgdb.tgz.

      This command normally results in two matches. For example:

      0ca01e7f-cc1ea1af-bda0-1fe646c5ceea/imgdb.tgz or edbf587b-da2add08-3185-3113649d5262/imgdb.tgz

    2. On each match, run this command: ls -l match_result

      For example:

      > ls -l 0ca01e7f-cc1ea1af-bda0-1fe646c5ceea/imgdb.tgz -rwx------  
       1 root root  26393 Jul 20 19:28 0ca01e7f-cc1ea1af-bda0-1fe646c5ceea/imgdb.tgz
         > ls -l edbf587b-da2add08-3185-3113649d5262/imgdb.tgz -rwx------ 
        1 root root   93 Jul 19 17:32 edbf587b-da2add08-3185-3113649d5262/imgdb.tgz

      The default size for the imgdb.tgz file is far greater than the other file or if one of the files is only a couple of bytes, it indicates that the file is corrupt. The only supported way to resolve this is to re-install ESXi for that particular ESXi host.