Application - Microsoft Hyper-V Server Agentless Opspack
Formerly known as Windows Server Virtualization, Hyper-V is Microsoft’s popular virtualization system for Windows Servers. It provides virtualization software for operating systems as well as hardware components such as, hard drives and network switches. Virtualization and Hyper-V offer numerous benefits, such as; hardware resources savings, space savings and reductions in energy costs, amongst many others. As a result it has become an incredibly popular hypervisor across the globe.
What You Can Monitor Copied
This opspack allows you to monitor your host and its virtual components, checking metrics of components like Virtual Disks, Network Adapters, the CPU usage of the machine, the uptime of the machine and a summary of the guests running.
Service Checks Copied
Service Check | Description |
---|---|
CPU | CPU Usage, CPU Interrupts per second, and CPU Context Switches per second |
Disk | Total bytes written and read by virtual hard disks per second |
Network | Total bytes sent and received by virtual network adapters per second |
Uptime | Uptime of the Hyper-V server. Time since last bootup |
Virtual Machines Summary | Summary of all the virtual machines and their states. Gives names of any VMs in Critical state |
Prerequisites Copied
To use this Opspack, your Windows host must first be configured for Powershell Agentless Monitoring.
Setup Windows Host for Monitoring Copied
By default, Windows hosts will not allow remote PowerShell scripts to run, which is required for Opsview Agentless Monitoring plugins to work.
This can be configured manually by the Windows Host administrator, or automatically using our recommended approach by running the ConfigureRemoting.ps1 Powershell script on the Windows Host.
Powershell Agentless Monitoring requires at least version 5.0 of Powershell. Check the Powershell version on your Windows Host by running:
$PSVersionTable.PSVersion
Run the ConfigureRemoting.ps1
script with Administrator privileges using a Powershell terminal. This will configure firewall rules, self-signed SSL certificates and authentication for PowerShell remoting.
Check this has been configured properly by running:
winrm quickconfig
You should get the following output:
WinRM service is already running on this machine.
WinRM is already set up for remote management on this computer.
By default port 5985 must be opened from the Opsview monitoring server to the Windows host you wish to check. WinRM utilises the HTTP/HTTPS protocol and can be configured to use certificates to secure the data in transit.
Ensure the service is listening by running:
For HTTP: netstat -an | findstr 5985
For HTTPS: netstat -an | findstr 5986
When using basic authentication with WinRM, the following commands must also be run on the windows host:
winrm set winrm/config/service/auth '@{Basic="true"}'
winrm set winrm/config/service '@{AllowUnencrypted="true"}'
winrm set winrm/config/client/auth '@{Basic="true"}'
If you receive a 500 error, which is a known issue on Windows Server 2016, you may need to install WinRM-IIS-Ext. You can do so by running the following command:
Add-WindowsFeature winrm-IIS-Ext
Setup and Configuration Copied
Add the Host Template Copied
Add the Application - Microsoft Hyper-V Server Agentless Host Template to your Opsview Monitor host.
Note
For more information, refer to the documentation on Adding Host Templates to Hosts.
Add and configure variables required for this host Copied
Variable | Description |
---|---|
WINRM_TRANSPORT | Used for authenticating with the remote host. The Value is the Authentication Transport Type - must be one of: Basic, Certificate, Kerberos or NTLM. NOTE: CredSSP is not supported. Override the Username and Password with the credentials to be used for authentication with the remote host. Scheme can be overridden to make the check use HTTP (defaults to https). Extra arguments can be used to pass extra arguments to check_by_winrm.py |
KERBEROS_REALM | Only required if authenticating using Kerberos. The Value is the Kerberos realm. |
Note
For more information, refer to the documentation on Adding Variables to Hosts.
Apply Changes Copied
Apply Changes and the system will then be monitored: