VMware vSphere Hypervisor connector
This documentation references external sources. Nexthink does not have control over the accuracy of third-party documentation, nor any external updates or changes that might create inconsistencies with the information presented on this page. Please report any errors or inconsistencies to Nexthink Support.
The Nexthink Connector for VMware VSphere retrieves essential information about your VSphere virtual desktop infrastructure (VDI), most notably the name of the desktop pool and related virtualization context to which virtual machines (VMs) belong. The connector enriches your Nexthink environment with VSphere-specific data that enhances visibility into VDI health, usage patterns, and configuration drift.
This installation guide is designed to help you securely deploy the connector for VSphere. We recommend your organization’s security team reviews the configuration and installation steps outlined here and adjusts them as needed to align with internal security policies and compliance requirements.
Device fields
The vSphere connector imports the following device virtualization fields under the device_performance.hypervisor_host_events table.
Virtualization hostname
The name of the virtualization host running the VMs.
Virtualization cluster
The logical grouping of hypervisor hosts managed as a single unit to provide shared resources, policy enforcement and other features.
Number of logical processors
The number of CPU cores multiplied by the number of threads that can run on each core of the hypervisor host.
CPU ready
Ratio of time when VMs were ready, but could not get scheduled to run on the physical CPU during the observed period of time. High CPU Ready can signal noisy neighbors, CPU overcommit, or too many vCPUs assigned.
Normalized CPU usage
Average physical CPU utilization over the selected time period, expressed on a 0–100% scale. Indicates the proportion of time the CPU was busy. The value is normalized to enable comparison across hosts of different sizes and is useful for capacity planning.
CPU time
Total time the physical CPUs were actively used during the observed period. Represents absolute CPU consumption, useful for capacity planning and for comparing workloads.
Number of virtual processors
The number of virtual processors provisioned on the host during the observed period of time. Useful for understanding over-provisioning and underutilization of CPUs.
Disk read throughput
Average disk read throughput during the observed period, measured in bytes per second. Useful for identifying storage performance and potential bottlenecks affecting data-intensive workloads.
Disk write throughput
Average disk write throughput during the observed period, measured in bytes per second. Useful for identifying storage performance and potential bottlenecks affecting data-intensive workloads.
Disk latency
Maximum disk latency during the collection interval, representing the time taken to process SCSI commands issued by the guest OS. Indicates storage responsiveness and potential performance bottlenecks.
Memory pressure state
Indicates the current memory pressure state and the memory reclamation techniques applied by the hypervisor. As memory pressure increases, the hypervisor progressively applies ballooning, compression, and swapping. Possible values: high, soft, hard, low.
Swap in throughput
Average rate at which guest physical memory is swapped in from disk during the observed period. Indicates real memory contention that can directly impact VDI user experience.
Swap out throughput
Average rate at which guest physical memory is swapped out to disk during the observed period. Indicates real memory contention that can directly impact VDI user experience.
Swap in use
Amount of swap storage actively used by the virtual machine, representing memory pages stored on disk instead of physical memory. Indicates sustained memory overcommit and the level of performance degradation carried over time.
Memory usage
Percentage of host physical memory consumed during the observed period. Hypervisors cache memory aggressively, so high values (for example, around 90%) are common and do not necessarily indicate memory contention. Useful for capacity planning and establishing a baseline memory footprint.
Memory ballooning
Total amount of memory reclaimed from guest virtual machines by the balloon driver. Indicates memory pressure on the host; sustained ballooning typically signals memory overcommit and can affect VDI performance if workloads are memory-sensitive.
Installed memory
The total amount of physical memory installed on the hypervisor host. Used as a capacity baseline to evaluate memory utilization, overcommitment on the hypervisor.
Committed memory
The total amount of memory configured for all powered-on virtual machines running on the hypervisor. A sustained committed-to-installed memory ratio greater than 1.0 may indicate memory overcommitment and can lead to increased memory contention under load.
NUMA misaligned VMs
Number of virtual machines running on the host whose vCPU and memory placement is not aligned with the host’s NUMA topology or spans multiple NUMA nodes. Indicates potential NUMA-related performance inefficiencies, particularly for CPU- or memory-intensive workloads.
Hyper-threading
Indicates whether CPU simultaneous multithreading is enabled on the host. When enabled, each physical core presents multiple logical processors to the hypervisor, affecting scheduling efficiency and consolidation density. Possible values: enabled, disabled.
Power policy
Power management mode configured on the host, defining the balance between performance and energy efficiency. Affects CPU frequency scaling, power-saving behavior, and workload performance. Possible values: high_performance, balanced, low_power.
Number of VMs
Number of active VMs running on the hypervisor, including VMs without active user sessions. Commonly used to assess host consolidation, baseline resource load, and identify background or idle VMs contributing to resource consumption.
Nexthink connector server
Nexthink recommends installing the vSphere connector on a separate server.
Prerequisites
Installed Windows PowerShell 7.2. Do not use earlier versions of PowerShell, such as PowerShell 5.
Execution policy set to bypass.
Required PowerShell modules:
URLs to allow through firewall/proxy for PowerShell Install-Module
Install-ModulePowerShell Gallery
https://www.powershellgallery.com
NuGet provider
https://www.nuget.org
NuGet API
https://api.nuget.org
CDN for packages
https://www.powershellgallery.com/api/v2/
Alternate NuGet V2 API
https://www.nuget.org/api/v2/
Certificate revocation
http://crl.microsoft.com
(normally optional; sometimes necessary)
Additional Considerations
Only one vSphere connector is supported; do not set up the connector on multiple servers because it can lead to duplicated events.
If SSL inspection is enabled on your proxy, ensure it does not break the TLS handshake.
If you're behind a proxy, ensure
PowerShellis configured to use it by running the following command:
Test connectivity
Test access using a PowerShell terminal by running the following command:
Networking
The vSphere connector needs to query the VSphere REST API.
Service account for scheduled tasks
The vSphere connector runs as a scheduled task and needs to be able to access the vSphere APIs. To limit security concerns, we recommend using a local user account on the Nexthink connector server or a regular domain user account without any special privileges at the domain level.
The following guide uses a local account on the Nexthink connector server.
Log on as an administrator to the server that will run the vSphere connector.
Launch the local users and groups console by running the following command from the Start Menu:

Right-click on the Users folder in the Local Users and Groups (Local) directory and select New user…
Create a user account according to your organization's naming conventions. Make a note of the User name and Password as you will need these later when creating a scheduled task. To safeguard the functionality of the connector, select the following options:
User cannot change password
Password never expires

Select Create.
Open the local group policy editor by running the following command from the Start Menu:
Navigate to Computer Configuration > Windows Settings > Security Settings> Local Policies > User Rights Assignment and locate the Log on as a batch Job policy.
Open the policy and select Add User or Group to add the previously created user to the list.

Ensure the account is enabled by running the following commands:
Installing the connector
Download the vSphere connector.
Extract the zip file to a folder on your system. Nexthink recommends placing it in the following folder:
C:\program files\Nexthink\Connectors\VSphere
Apply Modify permissions for the Logs folder for the user account you created earlier.

Nexthink Enrichment API credentials
The vSphere connector needs appropriate credentials to connect to the Nexthink Enrichment API. Nexthink stores the credentials safely in the credential store of the local user account you created earlier.
Updating the configuration file
For the configuration file update, you need the URL of your Nexthink Cloud API instance. The URL pattern is as follows:
instance.api.region.nexthink.cloud
See the following steps for more details.
If you do not know your region, reach out to your Nexthink representative to obtain this information.
Locate the folder where you unzipped the vSphere connector.
Navigate to the Config folder and open the config.json file using a text editor.
Scroll to the "NexthinkAPI" section and insert the following code:
Change the following values under the "NexthinkAPI" section:
Replace the
"HostFQDN"value with the URL of your Nexthink cloud API instance using the format<instance>.api.<region>.nexthink.cloudwhere<instance>and<region>are placeholders.Replace
<instance>with the name of the instanceReplace
<region>with the name of one of the following regions:usfor the United Stateseufor the European Unionpacfor Asia-Pacificmetafor the Middle East, Turkey, and Africa
If needed, refer to the following URL example:
gwy-eu-west-3-fuji-rest.api.eu.nexthink.cloud
Replace the
“WindowsCredentialEntry"with theTargetNameof the credentials you noted down from the PowerShell window earlier, for example:"WindowsCredentialEntry": "nxt-vsphere-credentials",
To replace the "VSphereEnvironments" values in the configuration file and set up a connection to the Citrix CVAD farm, refer to Updating the configuration file.
Setting up stored credentials
On the server that will be running the vSphere connector, open PowerShell under the credentials of the local user you created earlier by running runas in the command line:

In the newly opened PowerShell window, add the API credentials you just created in the Nexthink web interface by running the following command:
Replace the <domain\username> and <password> with the values you noted down when creating a domain user account with a read-only vSphere administrator.
Make a note of the TargetName you used as you will need this value for the configuration file.

Updating the configuration file
Each Citrix CVAD environment has its own section in the configuration file. The configuration file that comes with the connector contains an example of how to configure multiple environments. If needed, create a copy of the original config.json file for future reference.
Locate the folder where you unzipped the vSphere connector.
Navigate to the Config folder and open the config.json file using a text editor.
Scroll to the "VSphereEnvironments" section and remove the second item on the list. The code should look similar to the following:
Change the following values in the "VSphereEnvironments" section:
Replace
<environment-name-1>with the name of your environment.Replace
<host>with the vSphere host.Replace
<vsphere-user-credentials-1>with theTargetNameof the stored credentials you created earlier in PowerShell.Make a note of the identifier as you will need it later.
Testing the connector
On the server that will be running the vSphere connector, open PowerShell under the credentials of the local user you created earlier using the runas command:
Change to the directory where you installed the connector, for example:
Run the following command:
Then run the following command:
Replace <vsphere-name> with the value you put as a name in the config in the following section:
After executing the command, the PowerShell window closes, and a folder with the name you chose for the connection appears containing a log file with the test result.
Setting up scheduled tasks
Auto updater
Open the task scheduler and select Create task…

Name the task and change the user to the service account that you previously created in the General tab. Select Run whether user is logged on or not. Select OK.

Switch to the Triggers tab.
Under Advanced settings, select Repeat tasks every 15 minutes. Select OK.

Switch to the Actions tab and create a new action.
Ensure to use PowerShell 7. Do not use earlier versions, such as PowerShell 5. Check the PowerShell version by, for example, examining the file path:
C:\Program Files\PowerShell\7\pwsh.exe
Paste the full path of the VSphere-Connector-Auto-Updater.ps1 script into the Add arguments (optional) field, including the environment name, for example:
-ExecutionPolicy Bypass -File "C:\Program Files\Nexthink\Connectors\VSphere\VSphere-Connector-Auto-Updater.ps1"
Start in the folder containing the script, for example:
C:\Program Files\Nexthink\Connectors\VSphere.
Select OK.

A window will prompt you to enter the password of the service account. Select OK.

Runner
Open the task scheduler and select Create task…

Name the task and change the user to the service account that you previously created in the General tab. Select Run whether user is logged on or not. Select OK.

Switch to the Triggers tab.
Under Advanced settings, select Repeat tasks every 15 minutes. Select OK.

Switch to the Actions tab and create a new action.
Ensure to use PowerShell 7. Do not use earlier versions, such as PowerShell 5. Check the PowerShell version by, for example, examining the file path:
C:\Program Files\PowerShell\7\pwsh.exe
Paste the full path of the VSphere-Connector-Runner.ps1 script into the Add arguments (optional) field, including the environment name, for example:
-ExecutionPolicy Bypass -File "C:\Program Files\Nexthink\Connectors\VSphere\VSphere-Connector-Runner.ps1" -VSphereEnvironment "vsphere-name".
Start in the folder containing the script, for example:
C:\Program Files\Nexthink\Connectors\VSphere
Select OK.

A window will prompt you to enter the password of the service account. Select OK.

RELATED TOPIC
Last updated
Was this helpful?