A Hyper-V Monitoring Plugin that allows you to control Hyper-V virtual architectures easily. For more information visit the following webpage: http://pandorafms.com/index.php?sec=Library&sec2=repository&lng=es&action=view_PUI&id_PUI=587
3. 1 CHANGELOG
Date Author Changes Version
08/10/13 M. Pulido First plugin version V1r1
14/10/13 S. Lerena Global revission V1r1.1
Page 3
4. 2 INTRODUCTION TO HYPER-V MONITORING
Virtual environments are very important for IT architectures of companies, because of that their
monitoring is crucial. With Pandora FMS Enterprise you can get the Hyper-V Monitoring
Plugin that allows you to control Hyper-V architectures easily.
3 COMPATIBILITY MATRIX
The compatibility matrix for Hyper-V monitoring is:
Systems where it has been tested • Hyper-V 2012
Systems where it should work • Hyper-V 2008
4 REQUIREMENTS FOR PLUGIN EXECUTION/CONFIGURATION
The requirements for this monitoring could work correctly are the following ones:
• To Install the Pandora FMS agent in the 3.2.1 version or higher.
• A Powershell 2.0 console to execute the plugin. By default, it comes installed in Windows
Server 2008 R2 and Windows 2012 systems, therefore there should be no problems in this
point of the requirements.
• It is necessary that the user with which the Pandora FMS agent is executed, that is the user
that will execute the plugin, has the following system permissions available:
◦ Local Administrator
• WMI and performance counters as well as the Hyper-V Manager remotely using powershell
commands must be enabled (Get-VM, Get-VMMemory, Get-VMHardDiskDrive ....). They
tend to be enabled on computers where Hyper-V is installed, but in the case of error when
Page 4
5. its execution, review these 3 points.
◦ The Powershell scripts execution policy should be fixed as RemoteSigned or lower.
◦ Set-ExecutionPolicy RemoteSigned.
5 MODULES PROVIDED BY PLUGIN HYPER-V
The available modules for each element of the Hyper-V architecture are the followings:
5.1. Modules for Local Agent
• % Mem Use: RAM use percentage of the Host system. It is defined by default thresholds
can be modified in Pandora Console once they are defined.
• CPU Use: CPU use percentage of the Host system. It is defined by default thresholds can
be modified in Pandora Console once they are defined.
• Avail Dynamic Memory Balancer: Total amount of physical memory on the host in
MBytes, only available when Dinamic Memory Balancer is on in the VM.
• FreeDisk (Volume_Name): Free Disk percentage in Host Volumes. It is defined by
default thresholds can be modified in Pandora Console once they are defined. Be added as
many modules as volumes are on your computer.
• Disk Read Bytes (Volume_Name) : Bytes/sec reading by Disk.
• Disk Write Bytes (Volume_Name) : Bytes/sec writing by Disk.
• Health VM Critical: Number of VM in critical condition. When there is at least one VM
in critical status, the module appear in this status too.
• Bytes Sent (Interfaz): Number of Bytes/sec sent by each network interface. It will be set
in the Pandora intervals depending on the interface speed. If it between 50 and 79% of its
capacity appear in warning state and if it is greater than 80% in critical status.
• Bytes Received (Interfaz): Number of Bytes/sec received by each network interface. It
will be set in the Pandora intervals depending on the interface speed. If it between 50 and
79% of its capacity appear in warning state and if it is greater than 80% in critical status.
• Packets Received: Number of packets received by the network interface at each interval
(Pack/sec)
Page 5
6. 5.2. Modules for Virtual Machine Agents
• VMsUptime: Virtual Machine Uptime.
• Status: Connection status. Description is displayed in the particular state in which it is
located, even if the VM is off, we will see the module in critical condition.
• %Mem Dynamic Use: Percentage of dynamic memory used by the virtual machine, this
module will only be raised if dynamic memory is enabled in the configuration of the Virtual
Machine. It is defined by default thresholds can be modified after the module that defined
the Pandora.
• CPU Usage: % CPU used in the Virtual Machine. It is defined by default thresholds can be
modified in Pandora Console once they are defined.
• Read_Bytes/sec: Read Bytes/sec belonging to Virtual Hard Disk Drive of VM.
• Write_Bytes/sec: Write Bytes/sec belonging to Virtual Hard Disk Drive of VM.
• %Disk used: Percentage free virtual machine disk. (There will be a module for each disk
belonging the virtual machine).
• Bytes Received/sec: Number of Bytes/sec received by each network interface of VM. It
will be set in the Pandora intervals depending on the interface speed. If it between 50 and
79% of its capacity appear in warning state and if it is greater than 80% in critical status.
• Bytes Send/sec: Number of Bytes/sec send by each network interface of VM. It will be set
in the Pandora intervals depending on the interface speed. If it between 50 and 79% of its
capacity appear in warning state and if it is greater than 80% in critical status.
• Number of Snapshots: Number of Snapshots generated of Virtual Machine.
Page 6
7. 6 PLUGIN INSTALLATION
Its a plugin of Agent, so will have to make the call in the module configuration file. The call will be
as follows:
module plugin powershell.exe -command “plugin_hyper-V.ps1 -c hyperV_config.txt“
The example occurs in the case where the plugin is copied into the default plugin folder of windows
agent ( %programfiles%pandora_agentutil).
You need create a temp folder in pandora_agent/util to save XML temp files of virtual
agents(temp), where XML of VM Agents momentarily keep and where you can also save the plugin
configuration file. If execute the plugin without config file, this will look for the file
temphyperV_config.txt If not found there, the plugin will error, so you have to indicate this in the
execution.
To see the help:
plugin_hyper-V.ps1 -h
7 CONFIGURATION FILE PARAMETERS
The following will explain the configuration file parameter
Config example:
ServerIP 192.168.1.50
Interval 300
Agent_Version 5.0
Group Servers
File_Path temp/
Tentacle_Options
# VM Module Configuration (if you don't want to use any module use NO or delete it
of the list)
VM#ALL
VM_Uptime OK
VM_Dinamic_Memory OK
VM_I/O_Disk OK
VM_I/O_Network OK
Page 7
8. VM_Snapshot OK
# Host Module Configuration
HS#ALL
HS_Dynamic_Memory OK
HS_I/O_Disk OK
HS_I/O_Network OK
HS_Mem OK
HS_CPU OK
HS_Critical NO
HS_FreeDisk OK
Server IP : In this "token" must set the server IP that is pointing to the agent and used to send the
XML of the virtual machines agents.
Interval : Indicate the VM Agents interval, is recommended set an proportional interval to Host
Agent interval. If the agent have 300 seconds, we can set 300, 600, 900, 1200..
Agent_version: Indicate the version of the Pandora's agent where the agent is installed so that it
appears on the Pandora Console.
Group : We can set the agent group with this token. All VM Agent belonging to this group.
File_Path: PATH will have to tell where we want to temporarily save the XML of different agents
to be trained with each virtual machine. The configuration should indicate at the end of everything
"/"
Tentacle_Options : This token indicate send tentacle options. In case you do not need any not
indicate anything like this in the example. These are the options available
-c Enable SSL without a client certificate.
-e cert OpenSSL certificate file. Enables SSL.
-f ca Verify that the peer certificate is signed by a ca.
-k key OpenSSL private key file.
-p port Server port (default 41121).
-x pwd Server password.
-y proxy Proxy server string (http://user:password@address:port).
7.1. VM Modules
VM_ALL : If only is indicated this token (VM_ALL) send the information of all modules available.
If you do not want to send all, we must eliminate this token or as indicated in the example, falsify
(VM # ALL)
VM_Uptime: Through an OK, we will enable this module is sent. To avoid this we have to set up a
NO or remove it from the list.
Page 8
9. VM_Dinamic_Memory: Through an OK, we will enable this module is sent. To avoid this we
have to set up a NO or remove it from the list.
VM_I/O_Disk: Through an OK, we will enable this module is sent. To avoid this we have to set
up a NO or remove it from the list.
VM_I/O_Network: Through an OK, we will enable this module is sent. To avoid this we have to
set up a NO or remove it from the list.
VM_Snapshot: Through an OK, we will enable this module is sent. To avoid this we have to set
up a NO or remove it from the list.
7.2. Configuring host modules.
HS_ALL: If only is indicated this token (HS_ALL) send the information of all modules available.
If you do not want to send all, we must eliminate this token or as indicated in the example, falsify
(HS#ALL)
HS_Dynamic_Memory: Through an OK, we will enable this module is sent. To avoid this we
have to set up a NO or remove it from the list.
HS_I/O_Disk: Through an OK, we will enable this module is sent. To avoid this we have to set up
a NO or remove it from the list.
HS_I/O_Network: Through an OK, we will enable this module is sent. To avoid this we have to
set up a NO or remove it from the list.
HS_Mem: Through an OK, we will enable this module is sent. To avoid this we have to set up a
NO or remove it from the list.
HS_CPU: Through an OK, we will enable this module is sent. To avoid this we have to set up a NO
or remove it from the list.
HS_Critical: Through an OK, we will enable this module is sent. To avoid this we have to set up a
NO or remove it from the list.
HS_FreeDisk: Through an OK, we will enable this module is sent. To avoid this we have to set up
a NO or remove it from the list.
8 SCREENSHOTS AND RESULTS
Agent configuration:
This agent has copied the plugin in the "util" directory belonging to pandora_agent and config file is inside
the temp folder with the name hyperV_config.txt as indicated above is your standard installation.
Page 9
10. Inside the temp folder we keep our plugin configuration file and will be saved temporarily also the XML
VM agents and in the case of send failure, be stored here. It is essential to create the temp folder or specify
the path in the configuration file.
Inside the agent configuration, either by remote or local configuration settings would remain so, this is an
example for the 5.0 version in which the call to plugin accepts the following configuration.
module_begin
module_plugin powershell -Command "hyperV_v1r1.ps1 -c tempHyperV-config.txt"
module_interval 2
module_end
Once the plugin is properly configured, this report each range the data and created the first time an agent on
each virtual machine installed, and modules to the host where you are installing the Hyper-V.
Virtual machines that are turned off, initially only report one module, the state of the machine. Until you turn
on virtual machines will not report all the modules that are enabled.
We can create a new group called Hyper-V and in the plugin configuration file indicate that name to create
all agents in in that group.
Page 10