This step-by-step guide explains how to setup and monitor Azure Windows Virtual Machines using CloudMonix.



In this article


1. Monitoring setup

2. Collect, understand and use your data

    2.1 Metrics

    2.2 Alerts

    2.3 Actions

3. Setup verification and troubleshooting



Did you know?

CloudMonix extends native Azure Windows VM monitoring with advanced metrics and features. Noteworthy:

  • CloudMonix receives data from the Azure Diagnostics Extension or CloudMonix agent
  • CloudMonix supports both Classic and ARM API (see differences)
  • pre-configured metrics (basic Windows server on Azure VM): application event logs, CPU time, disk free space (each disk), total disk free space, disk idle time, disk read / write speed, virtual memory in use, memory free, process list, recommended actions, resource status, system event logs, system uptime
  • alerts (basic Windows server on Azure VM): high CPU usage, instance rebooted, low disk space, low memory, resource outages and slow disk
  • conditional or schedule-based ability to reboot / resize / shutdown / deallocate / start a VM instance, run a PowerShell script on a resource, and reboot / restart an instance using PowerShell 
  • historical dashboard of Windows Services and running processes (last calendar month, requires CloudMonix agent)
  • automatic scheduled Azure Windows VM restart shutdown (requires CloudMonix agent)
  • conditional or schedule-based automated Azure Windows VM resize (requires CloudMonix agent)




Setup


a. Run the Setup Wizard in the portal (preferred way):


The ARM authorization can only be performed via the Setup Wizard. CloudMonix will create a new user with Contributor privileges in the Azure AD. Contributor privileges can be further downgraded to Reader privileges at a later stage.


If CloudMonix agent is intended to be instrumented on the monitored VM, do run thru the Setup Wizard, authorize the ARM API and DO NOT add an Azure Windows VM but follow the instructions in the next step.



CloudMonix setup wizard



This article explains how to add resources to CloudMonix via the Setup Wizard.




b.  Download and install CloudMonix Agent (optional):


By default CloudMonix will use Azure Diagnostics Extension to monitor Azure Windows VMs. CloudMonix agent provides additional metrics as well as support for PowerShell automation. In case CloudMonix agent is used for monitoring, it is important to understand the differences.

Noteworthy:

  • setup script for the agent can be run remotely
  • agent is pre-configured for specific account it was downloaded from
  • agent needs to be deployed for every monitored VM


Installation and configuration instructions for CloudMonix agent can be found here




c. Firewall configuration (optional):


Given the scenario CloudMonix agent is used for monitoring, it is necessary to white-list CloudMonix IP addresses as described in this article.




d. Tweak settings in the Definition tab (optional):


Definition tab for an existing resource can be accessed by clicking the resource's monitoring settings in the performance dashboard:


Resource monitoring settings



Definition tab provides optional settings for the resource name, Azure API, Azure resource management token, Azure resource group, Azure resource name, Use agent, diagnostic storage account, deployment ID, option not to modify diagnostic configuration, configuration template and categories:



Definition settings



Best Practices

Configuration Template setting provides pre-defined configuration templates available in CloudMonix by default as well as previously stored custom templates. The following default templates are available for Azure Windows VMs:




e. Manual setup (optional instead of the Setup Wizard route):



Click the Add New button in the top right corner of your dashboard:


Add new resource


Fill in required information in the Definition tab as described in the previous step.




f. Advanced configuration:


Advanced configuration


Advanced configuration tab provides additional monitoring settings, which are already set as default for most use-cases.





Collect, understand and use your data


Specific Metrics, Templates, Alerts and Automation Actions for Azure Windows VMs:


Azure Windows VM Settings




a. Metrics:


Diagnostic data points retrieved from the monitored resource are referred to as metrics . CloudMonix provides default templates for the metrics recommended for common configurations. Metrics can be further added, removed or customized in the Metrics tab of the Azure Windows VM resource configuration dialog:


CloudMonix Azure Windows VM monitoring metrics




b. Alerts:


CloudMonix features a sophisticated alert engine that allows alerts to be published for very particular conditions pre-defined by a template configuration or custom based on any of the available metrics. Alerts can be further added, removed or customized in the Alerts tab of the Azure Windows VM resource configuration dialog:


CloudMonix alerts for Azure Windows VM




c. Actions:


Actions are automation features that can be configured to fire based on specific conditions or schedule. Actions can be added and configured in the Actions tab of the Azure Windows VM resource configuration dialog:


Available actions include conditional or schedule-based ability to reboot / resize / shutdown / deallocate / start a VM instance, run a PowerShell script on a resource, and reboot / restart an instance using PowerShell.



CloudMonix Azure Windows VM automation






Setup verification and troubleshooting


a. Setup verification:


Successful resource setup can be verified by clicking Test button in the resource configuration dialog and visiting the Test Results tab:


Monitoring setup test results



b. Troubleshooting monitoring issues:


CloudMonix provides deep insights into resource monitoring issues via the Status Dashboard screen. The screen allows to overview resources that have raised alerts and troubleshoot them by diving into the monitoring logs.


Status dashboard


Read the full article on how to use Status Dashboard to diagnose resource monitoring issues.