Monitoring Windows Services with VMware vRealize Operations Manager (vROps)

Categories Building Clouds (Technology)
vROps Automatic Specific Services

Recently one of my customers asked me how to go about monitoring Windows services with VMware vRealize Operations Manager (vROps).  Nothing fancy… just CPU, Memory, Up/Down status.  Luckily they were licensed for vROps Advanced which according to the version comparison chart provides “Monitoring of OS resources (CPU, disk, memory, network)”.  This is really just a fancy way of saying they can leverage the End Point Operations (EPOPS) Agent to gain greater visibility into the Guest OS.  vROps Enterprise is required for visibility into the Application layer (SQL Server, IIS, Postgres, etc.) but still leverages the EPOPS Agent.  The great thing about this solution is that you can monitor both virtual AND physical systems… assuming you are licensed properly of course.

Getting Started

I won’t go into detail regarding how to install the EPOPS agent itself as I feel the VMware documentation is pretty thorough and can be found here for version 6.6.x.  Once you have the agent installed you can login to vROps and validate that it is connected to your environment by browsing to “Administration” –> “Configuration” –> “End Point Operations“.

vROps EPOPS Agents

A good way to validate that you are receiving data is to browse to one of your systems and check the metrics: “Environment” –> “Operating Systems” –> “Windows” OR “Linux” –> HOSTNAME –> “All Metrics”.

vROps EPOPS Metrics

Configuration

Now that you have agents installed and sending metrics to vROps you will need to configure which services you want to monitor.  There are a few options to perform this configuration:

  • Manually – One by One
  • Automatically – All Services
  • Automatically – Specific Services

vROps Manual Configuration – One by One

This option works great if you are only monitoring a handful of systems; however, it is by far the most time consuming method.  Go to “Environment” –> “Operating Systems” –> “Windows” –> HOSTNAME –> “Actions” –> “Monitor OS Object” –> “Monitor Windows Service“.

vROps Monitor Windows Service

Now simply give your new service a name and specify the “Service name” of the Windows Service.

vROps DNS Server

vROps Windows DNS Server

vROps DNS Service

vROps Automatic Configuration – All Services

Manual configuration (above) works well but can be extremely slow and tedious.  Another option is to modify the agent.properties config file on the remote system and add a specific line of configuration to trigger an automatic service discovery.  By default, the agent.properties file is located in the C:\ep-agent\conf\ directory.  Open this file and add the following line to the bottom, then restart the End Point Operations Management Agent service.

windows.services.discover=true

This will result in ALL the Windows Services being configured automatically in vROps; however, there are two caveats:

  1. This config change will have no effect on systems where you have already added a service to monitor manually within vROps.
  2. Windows services that have a Startup Type of “Manual” or “Disabled” will not be added via this config option… only “Automatic”, “Automatic (Delayed Start)”, or “Automatic (Triggered Start)” will be added.

vROps Automatica All Services

vROps Automatic Configuration – Specific Services

The final option is to add a specific line of configuration to the agent.properties file that specifies only certain Windows Services.  For example:

  • DNS Client
  • Print Spooler
  • DHCP Client
  • VMware Tools
  • VMware vRealize Log Insight Agent
  • Windows Time

windows.services.discover=Dnscache,Spooler,Dhcp,VMTools,LogInsightAgentService,W32Time

Again, a restart of the End Point Operations Management Agent service will be needed and the same two caveats apply here as well:

  1. This config change will have no effect on systems where you have already added a service to monitor manually within vROps or if the “windows.services.discover=true” config has been used previously.
  2. Windows services that have a Startup Type of “Manual” or “Disabled” will not be added via this config option… only “Automatic”, “Automatic (Delayed Start)”, or “Automatic (Triggered Start)” will be added.

vROps Automatic Specific Services

This is a great option if you have many VMs performing the same role, i.e. – SQL Servers, Domain Controllers, Print Servers, etc.  A post Agent install script could be ran to automate this configuration across your VMs.  Perhaps a vRO workflow that leverages vSphere Tags could be used.

The Automatic config options (modifying the agent.properties file) is where the EPOPS Agent shows its Hyperic roots.  The following KB article outlines these configurations specifically for vFabric Hyperic Server: Enabling auto-discovery for Windows Services when using VMware vFabric Hyperic 4.5/4.6 (1032736).

vROps Up/Down Alert Configuration

Now that we have our Windows Services defined in vROps we need to setup an Alert Definition with Alert Symptoms to alert us when a service goes down.  Start by navigating to “Alerts” –> “Alert Settings” –> “Symptom Definitions” and click the “Add” button.

vROps Alerts

Choose “Windows Service” as the Base Object Type and specify the metric “Resource Availability” as being less than 100 to define our symptom then click Save.

vROps Symptom Definition

Now create a new Alert Definition based on our new Alert Symptom.

vROps Alert Definition

The final step is to create a Notification Setting that defines the notification that will be triggered when an Alert is created.

vROps Notification Setting

Now we will receive an email alert whenever a defined Windows Service goes down.  Below is an example of the email alert:

vROps Email Alert

3 thoughts on “Monitoring Windows Services with VMware vRealize Operations Manager (vROps)

  1. Great article!

    I was wondering how would someone get the name of the VM in the email that gets sent out? I was able to replicate a similar output as yours but the alert seems kinda vague if you don’t know what is the source.

    1. Yeah I was wondering the same thing. Can’t seem to find much documentation on how to get that in the email.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.