Forum Discussion

Kerry_DeVilbiss's avatar
8 years ago

VMware vSphere In-Guest Monitoring

VMware "In­-Guest" DataSources - Version 1.0 - LogicMonitor Custom Development

Summary:
The following provides information and deployment instructions for the application of hypervisor-­level monitoring data - as presented within a Windows virtual machine in LogicMonitor. There are three "In­Guest" VMware DataSources ­- they are:

  • VMware_vSphere_VMperformance_InGuest (locator code: CHLF7C )
  • VMware_vSphere_VMsnapshots_InGuest (locator code: 9YF42D )
  • VMware_vSphere_VMstatus_InGuest (locator code: ZMEJ6P )

How it Works:
These datasources were cloned from the official LogicMonitor VMware DataSources ­ with ‘_InGuest’ appended to the end of the standard name. They have been altered in the following fashion to apply them 'within' the virtual machine device:

  • A critical feature built into the DataSources is the ability to ‘override’ a vCenter location with ‘esx.url.’
  • ○ This allows us to apply the DataSource to a VM and point it to vCenter for data.
  • The AppliesTo language is updated to apply the DataSources to Windows Virtual Machines:
  • ○ system.model =~ "Vmware Virtual Platform" && esx.url && esx.user && esx.pass
  • The host property variable is switched from system.hostname to system.sysname:
  • ○ def host = hostProps.get("system.sysname")
  • The Active Discovery of virtual machines is limited to the device hostname to which it is applied:
  • ○ ManagedEntity[] vms = new InventoryNavigator(rootFolder).searchManagedEntity("VirtualMachine","${host}");

Implementation:
Three properties are required to be applied to the virtual machine device(s) in LogicMonitor:

  • esx.user
  • esx.pass
  • esx.url in format: https://<vcenter­ip­address>/sdk

Once the device properties are present, the AppliesTo language will kick in and the DataSources will apply.

Suggestion: create a dynamic group of Windows virtual machines, and set the ‘ESX’ properties at that group level.

Notes:

  • ­These DataSources are custom development and officially unsupported by LogicMonitor.
  • Restrict the application of property esx.url to ONLY the virtual machines needed. This property will apply to ESXi hosts if allowed, which impacts vCenter collection and performance.
  • Deploy this in stages  - we will be increasing the load on vCenter due to the additional API queries.
  • We do not currently identify Linux VM’s out of the box, for now this is Windows-­only.
  • Automated detection of VM to vCenter relationship is difficult at the device level, hence the need for esx.url.
  • vCenter is the preferred integration point for esx.url, but an ESXi host should also work (until the VM moves.)