You are here
Windows - Base Agentless Opspack
Windows Base Agentless Opspack measures various performance metrics and health statuses for Windows operating systems.
What You Can Monitor
This Opspack allows you to monitor the status of your Windows machines with service checks that cover CPU, Disk, Memory and Network as well as other useful metrics.
Service Checks
Service Check | Description |
---|---|
CPU Statistics | Percentage of time CPU is executing processes, Percentage of time CPU recieves interrupts, Number of processes queued but not able to use the CPU, Percentage of time CPU is in user mode |
Drive Space Used | Check disk space used on the given drive |
Disk Statistics | Number of reads and writes to disk per second, Number of disk requests outstanding, Percentage of time the disk is serving read or write requests |
Disk Usage | Shows the percentage of the total usable disk space |
File Size | Checks the size of the given file |
Folder Size | Checks the size of the given folder |
Memory Pages | The number of requested pages that were not immediately available in RAM and had to be read from the disk per second |
Memory Usage | Shows the amount of memory available to processes running on the computer |
Network In/Out | Shows the rate at which packets are received and sent on the network interface. |
OS Details | Displays the name of the OS being monitored |
Process Count | Checks the number of instances of the given process |
Process CPU Time | Shows the percentage of elapsed time that all of the threads of this process used the processor to execute instructions. |
System In/Out | Shows the rate of file system read and write requests to all devices on the computer |
Uptime | Uptime of the operating system. Time since last bootup |
Users Count | Number of users currently on the system |
Prerequisites
-
Ensure your Opsview Monitor version is at least 6.7.0.
-
To use this Opspack, your Windows host must first be configured for Powershell Agentless Monitoring.
-
Ensure you have set your LD_LIBRARY_PATH to /opt/opsview/krb5/lib when trying to execute this service check from the command line and your authentication method is kerberos. e.g LD_LIBRARY_PATH=/opt/opsview/krb5/lib:$LD_LIBRARY_PATH check_by_winrm ARGUMENTS
Setup Windows Host for Monitoring
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
To configure and utilize this Opspack, you simply need to add the 'OS - Windows Base Agentless' Opspack to your Opsview Monitor system.
Step 1: Import the Opspack
Download the os-windows-base-agentless.opspack file from the Releases section of this repository.
Navigate to Host Template Settings inside Opsview Monitor and select Import Opspack in the top right corner.
Then click Browse and select the os-windows-base-agentless.opspack file. Click Upload and then click Import when the file is uploaded.
For more information, refer to Opsview Knowledge Center - Importing Opspacks
Step 2: Add the Host Template
Add the OS - Windows Base Agentless Host Template to your Opsview Monitor host.
For more information, refer to Opsview Knowledge Center - Adding Variables to Hosts.
Step 3: Add and configure variables required for this host
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. If Basic or NTLM authentication is being used, then no further configuration than entering the Name into the Value needs to occur. |
WINDOWS_BASE_DRIVE | The name of the Windows drive to monitor. The Value is the name of the Windows drive to monitor. You can have multiple host variables to check the status of each drive individually. |
WINDOWS_BASE_FILE | The name of the file to monitor. The Value is the name of the file to monitor. You can have multiple host variables to check the status of each drive individually. |
WINDOWS_BASE_PATH | The path to the directory to monitor. The Value is the path to the directory to monitor. You can have multiple host variables to check the status of each directory individually. |
WINDOWS_BASE_PROCESS | The name of the process to monitor. The Value is the name of the process to monitor. You can have multiple host variables to check the status of each process individually. |
KERBEROS_REALM | Only required if authenticating using Kerberos. The Value is the Kerberos realm. |
Step 3a: Setting up Certificates
To use a Certificate for the authentication of WinRM, first, move it to the same directory on all Opsview machines running checks. Set the value of WINRM_TRANSPORT's Extra Args to -c PATH_OF_CERTIFICATE.pem
. This allows the script to use the certificate for authentication.