Microsoft System Center Virtual Machine Manager
Monitor Microsoft Hyper-V Cluster with System Center Virtual Machine Manager (SCVMM)
This source has been deprecated
observIQ is in the process of transitioning a subset of BindPlane's monitoring capabilities to the observIQ OpenTelemetry Collector. As a result, this Source is no longer publicly available in BindPlane. If you need access to this Source, please reach out to our support via chat or via [email protected].
Not Included in the BindPlane with Google Stackdriver offering
All of the Google Cloud Platform sources listed within this documentation are not included with the BindPlane with Google Stackdriver offering.
Monitoring Microsoft Hyper-V Clusters Only
Microsoft SCVMM does support management of VMware vSphere, Xen, and KVM hypervisors. To monitor those technologies, use the specific BindPlane Source for those hypervisors.
Data Collection Setup
Metrics are collected via remote Powershell callls via WinRM library.
Enable WinRM on the SCVMM Server**
To complete basic WinRM setup, run the following commands:
winrm quickconfig -q
winrm set winrm/config/winrs @{MaxMemoryPerShellMB="300"}
winrm set winrm/config @{MaxTimeoutms="1800000"}
winrm set winrm/config/service/auth @{Basic="true"}
Non-SSL users can use the following additional commands to complete their basic setup:
Enabling SSL
SSL user should skip the following command and continue to Enabling SSL.
winrm set winrm/config/service @{AllowUnencrypted="true"}
Kerberos Setup
To complete a Kerberos WinRM setup, run the following commands:
winrm quickconfig -q
winrm set winrm/config/winrs @{MaxMemoryPerShellMB="300"}
winrm set winrm/config @{MaxTimeoutms="1800000"}
winrm set winrm/config/service/auth @{Kerberos="true"}
Non-SSL users can use the following additional commands to complete their Kerberos setup:
Enabling SSL
SSL users should skip the following command and continue to Enabling SSL.
winrm set winrm/config/service @{AllowUnencrypted="true"}
Enabling SSL
To enableSSL for either your Basic or Kerberos WinRM setups, perform the following steps:
Prerequisites
If you are using SSL and are fine with a self-signed certificate, we recommend using Ansible's WinRM setup script (github):
Invoke-Expression ((New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1'))
To use a signed certificate, perform the following steps:
- Generate an SSL certificate from your internal certificate authority.
Note
Make sure to generate a P12 file.
- Copy the SSL certificate to the Windows Server.
- Import the SSL certificate:
* Run **mmc.exe**
* Select **File > Add/Remove Snap-in**.
* From the list of available snap-ins, select **Certificates**, then click **Add**.
* Select **Computer** account, then click **Next**.
* Click **Finish**.
* Verify that the certificate is installed in **Console Root > Certificates (Local Computer > Personal > Certificates and Console Root > Certificates ( Local Computer) > Trusted Root Certification Authorities > Certificates**.
- Verify your root certificate authority is installed in the Trusted Root Certification Authorities folder.
- Record the thumbprint of the certificate.
- Run the following commands to create a new WinRM listener with the certificate. The certificate should have no spaces.
winrm delete winrm/config/Listener?Address=*+Transport=HTTPS
winrm create winrm/config/Listener?Address=*+Transport=HTTPS @{Hostname="<FQDN>"; CertificateThumbprint="<COPIED_CERTIFICATE_THUMBPRINT>"}
To use a custom port, you can modify the above commands as follows:
winrm delete winrm/config/Listener?Address=*+Transport=HTTPS
winrm create winrm/config/Listener?Address=*+Transport=HTTPS @{Port="14539";Hostname="<FQDN>"; CertificateThumbprint="<COPIED_CERTIFICATE_THUMBPRINT>"}
Increasing WinRM Resources
Windows 2012 will only allow 30 shells per user. If other monitoring processes are using the same credentials, you may wish to increase this umber by running the following command:
winrm set winrm/config/winrs @{MaxShellsPerUser="100000"}
Testing WinRM
To test PowerShell connectivity, run the command test-wsman .
To start a remote PowerShell session, run the following command:
$options=New-PSSessionOption -SkipCACheck -SkipCNCheck Enter-PSSession -ComputerName <IP or host name> -Credential <user name> -UseSSL -Authentication <authtype> -SessionOption $options
Note
Replace with your Windows domain user name and with the appropriate authentication type: Basic, Digest, Kerberos, or Negotiate.
Network Requirements
Port: 5985 (TCP) HTTP or 5986 (TCP) HTTPS WinRM to the SCVMM Server
Least Privileged User
A Windows Domain user that a member of the Virtual Machine Manager Servers
Local Group and Read-Only Administrator User Role on SCVMM.
Example: Creating the LPU
- Open up the VMM Console and go to Settings
- Under Security: User Roles
- Create a Read-Only Administrator User Role Profile for the User-Role and give it access to all the Hosts.
- In Computer Management, Add the Domain user toe the
Virtual Machine Manager Servers
Local Windows Group
Supported Versions
Microsoft SCVMM:
- 2012 R2 minimum version: 3.2.7510.0
- 2016
Kerberos "with File" option on Windows Collectors not Supported
Using the krb5.conf file for Kerberos Authentication method will only work on Linux-based Bindplane Collectors.
Troubleshooting
Test Connection Error
Issue:
Received the following non-empty standard error when executing the ScvmmServer command: Get-SCVMMServer : The term 'Get-SCVMMServer' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
Resolution:
The user may require additional permissions to collect data from SCVMM. Verify the LPU settings or use a user with higher privileges.
Connection Parameters
Name | Required? | Description |
---|---|---|
Host | Required | The SCVMM server to connect to. |
Port | The port for communication to the SCVMM server. The default non-SSL port is 5985, whereas the default SSL port is 5986. | |
Username | Required | |
Password | Required | |
Authentication Mechanism | The authentication mechanism to use when connecting the SCVMM server. CredSSP will only be attempted when SSL is specified to the SSL Configuration parameter. | |
NTLM Domain | Required | |
Kerberos Configuration | Required | |
Kerberos Domain | Required | |
Kerberos Realm | Required | |
Kerberos Key Distribution Center (AD Server) | Required | |
Location of krb5.conf | The location of the krb5.conf file that should be used by the collector. If none is specified, the system default will be used. | |
SSL Configuration | The SSL mode to use when connecting to the target. Can be configured to not use SSL (No SSL), use SSL but do not verify the target's certificate (No Verify), and use SSL and verify the target's certificate (Verify). | |
Connection Timeout (seconds) | The amount of time to allow the remote execution of each command to take on the target system. | |
Maximum Concurrent Calls | The maximum number of concurrent calls to make on the remote target. By default, it will use the number of available processors minus one. | |
Maximum Threads Per Remote Call | The maximum number of threads to spawn within (some) calls made to the remote target. To reduce collection time, we attempt to use more than one thread when retrieving performance data for Cluster and Host resources. | |
Retrieve Cluster Performance Metrics | Whether or not we will retrieve performance data for each Cluster resource. Depending on the size of the system, this can be a time consuming operation. | |
Retrieve Host Performance Metrics | Whether or not we will retrieve performance data for each Host resource. Depending on the size of the system, this can be a time consuming operation. |
Metrics
Cluster
Name | Description |
---|---|
Average Host CPU Usage (%) | The average CPU usage from Host children. |
Domain | The Windows domain in which the Cluster resource is a member. |
Functional Mode | The aggregate functional mode across all nodes in the Cluster. |
Host Group | The Host Group assigned to the Cluster. |
IP Addresses | Comma separated list of IP addresses associated with the Cluster. |
Operation Normalization Size (Kilobytes) | The size of an operation that will be used to quantify an operation when enforcing QoS. Any IO that is 8KB or smaller is considered as one normalized IO. Any IO that is larger than 8KB is treated as multiple normalized IOs. For example, a 256KB request is treated as 32 normalized IOPs. |
Reserve State | The number of node failures the Cluster can sustain while still supporting all VMs deployed in the Cluster. |
Total Host Available Memory (Gibibytes) | The sum of Available Memory from Host children. |
Total Host Memory (Gibibytes) | The sum of Total Memory from Host children. |
Total Host Memory Used (Gibibytes) | The difference of Total Memory and Available Memory from Host children. |
Total Host Network I/O (Bytes per Second) | The sum of Network I/O from Host children. |
Total Host Storage I/O (Bytes per Second) | The sum of Storage I/O from Host children. |
UUID | The UUID of the Cluster. |
Virtualization Platform | The virtualization platform in used on the Cluster. |
VMware DRS Enabled | Whether or not VMware Distributed Resource Scheduler is enabled on the Cluster. |
VMware HA Enabled | Whether or not the VMware High Availability is enabled on the Cluster. |
Cluster Shared Volume
Name | Description |
---|---|
Capacity Used (%) | The amount of space used on the Cluster Shared Volume based on the values of the used_space and total_space metrics. |
Free Space (Gibibytes) | The amount of free space remaining on the Cluster Shared Volume. |
State | The state of the clustered resource. |
Total Space (Gibibytes) | The capacity of the Cluster Shared Volume. |
Used Space (Gibibytes) | The amount of space used on the Cluster Shared Volume. |
UUID | The UUID of the Cluster Shared Volume. |
Host
Name | Description |
---|---|
Available Memory (Gibibytes) | Total usable Host memory for failed over Virtual Machines to use. This is equal to: Host Total Memory - Existing VMs - Host Reserve. |
Cluster Parent | The name of the Cluster parent. |
Communication State | The status of communication with the Host. |
CPU Reserve (%) | The amount of CPU that VMM is configured to set aside for the Host operating system to use. |
CPU Usage (%) | Processor usage on the Host. |
Disk Space Reserve (Megabytes) | The disk space that VMM is configured to set aside for the Host operating system to use. |
Domain Name | The Windows Domain in which the Host resides. |
FQDN | The Fully Qualified Domain Name of the Host. |
L2 Cache Size (Kibibytes) | The speed of the L2 cache on the processor powering the Host. |
L3 Cache Size (Kibibytes) | The speed of the L3 cache on the processor powering the Host. |
Logical Processor Count (Cores) | The number of processing units available to the Host. |
Memory Reserve (Mebibytes) | The amount of memory that VMM is configured to set aside for the Host operating system to use. |
Memory Usage (%) | The memory usage of the Host. |
Memory Used (Gibibytes) | Memory usage on the Host. |
Network I/O (Bytes per Second) | Total network IO sent and received by the Host. |
Operating System | The operating system running on the Host. |
Operating System Version | The version of the operating system running on the Host. |
OS Disk IO Reservation (Operations per Second) | The maximum disk throughput that VMM is configured to set aside for the Host operating system to use. |
OS Network Capacity Reservation (%) | The network capacity that VMM is configured to set aside for the Host operating system to use. |
Overall State | The overall state of the Host. |
Override Host Group Reserves | Whether or not the Host is allowed to override the reserves set by host group. |
Power Savings (Milliwatts) | Power savings on the Host. |
Processor Architecture | The architecture of the processor powering the Host. |
Processor Manufacturer | The manufacturer of the processor powering the Host. |
Processor Model | The model of the processor powering the Host. |
Processor Speed (Megahertz) | The speed at which the processor powering the Host runs. |
Secure VMRC Enabled | Whether or not secure Virtual Machine Remote Control is enabled. |
Storage I/O (Bytes per Second) | Storage IO usage on the Host. |
Total Memory (Gibibytes) | The total memory on the Host. |
UUID | The UUID of the Host. |
Virtual Server State | The state of Virtual Server on which the Host runs. |
Virtual Server Version | The version of Virtual Server on which the Host runs. |
Virtual Server Version State | The state of the version of the Virtual Server on which the Host runs. |
Virtualization Platform | The name of the virtual platform hosting the Host. |
VM Host Group | The host group in which this Host is a member. |
VMRC Certificate Available | Whether or not a certificate is available to use for secure Virtual Machine Remote Control. |
VMRC Enabled | Whether or not Virtual Machine Remote Control is enabled. |
VMRC Port | The port configured for Virtual Machine Remote Control access. |
Virtual Hard Disk
Name | Description |
---|---|
Accessibility | The accessibility of the Virtual Hard Disk. Can be 'Public' or 'Internal'. |
Classification | The classification of storage being used (e.g. local, remote, etc). |
Cloud ID | The ID of the Cloud hosting the Virtual Hard Disk. |
Description | A description provided by user or process that created the Virtual Hard Disk. |
Enabled | If the Virtual Hard Disk is enabled. |
Format Type | The type of file format used to create this Virtual Hard Disk. |
Has Product Key | If the Virtual Hard Disk has a product key. |
Host Type | The type of parent Host for this Virtual Hard Disk. |
Host Volume | The folder location of the Host Volume. |
Host Volume ID | The Host Volume's ID. |
ID | The unique identifier of the Virtual Hard Disk. |
Is Cached Vhd | If the Virtual Hard Disk is cached. |
Is Fully Cached | If the Virtual Hard Disk is fully cached. |
Is Orphaned | If the Virtual Hard Disk is orphaned. |
Is View Only | If the Virtual Hard Disk is view only. |
Library Server | The library server with this Virtual Hard Disk file. |
Library Share ID | The library share the Virtual Hard Disk originated from. |
Location | The file location of the Virtual Hard Disk. |
Marked For Deletion | If the Virtual Hard Disk is marked for deletion. |
Maximum Size (Gibibytes) | The maximum size of the Virtual Hard Disk. |
Owner | The owner of the Virtual Hard Disk. |
Parent Disk ID | The ID of the parent Virtual Hard Disk. |
SAN Copy Capable | If the Virtual Hard Disk is SAN copy capable. |
Share Path | The Share Path for the Virtual Hard Disk file. |
Shielded | If the Virtual Hard Disk is shielded. |
Size (Gibibytes) | The current size of the Virtual Hard Disk. |
State | The state of the Virtual Hard Disk. Options include: Normal, Missing. |
Type | The type of Virtual Hard Disk. Options include: Unknown Type, Dynamically Expanding, Fixed Size, Differencing, Linked Physical. |
Virtualization Platform | The name of the virtualization platform being used to host this Virtual Hard Disk. |
VM Host | The Virtual Machine host name. |
Virtual Machine
Name | Description |
---|---|
Allocated Disk Size (Bytes) | The total size of the allocated disk space to the Virtual Machine. |
Backup Enabled | Whether backup options are enabled for this VM. |
Computer Name | The name of the computer. |
CPU Count (Cores) | The number of CPUs allocated to the Virtual Machine. |
CPU Usage (%) | Processor usage on the Virtual Machine. |
Deployment State | The deployment state of the Virtual Machine. |
Disaster Recovery State | The state of the disaster recovery. |
Dynamic Memory Demand (Mebibytes) | The amount of dynamic memory that the Virtual Machine is requesting. |
Dynamic Memory Status | The status of the dynamic memory. |
Enabled | Whether the Virtual Machine is enabled. |
Host Group Path | The path of the host group. |
Hostname | The hostname of the Virtual Machine. |
ID | The UUID of the Virtual Machine. |
Is Disaster Recovery Enabled | Whether the disaster recovery options are enabled for this Virtual Machine. |
Is Fault Tolerant | Whether the Virtual Machine is fault tolerant. |
Is Highly Available | Whether the Virtual Machine is highly available. |
Is Orphaned | Whether the Virtual Machine is orphaned. |
Is Primary VM | Whether this Virtual Machine is a primary VM. |
Is Recovery VM | Whether this Virtual Machine is a recovery VM. |
Is Test Replica VM | Whether this Virtual Machine is a replica VM. |
Location | The location of the Virtual Machine. |
Memory Assigned (Mebibytes) | The amount of assigned memory to the Virtual Machine. |
Memory Available (%) | The amount of memory that is available on the Virtual Machine. |
Name | The name of the Virtual Machine. |
Network I/O (Bytes per Second) | Total network IO sent and received by the Virtual Machine. |
Operating System | The name of the operating system being used on the Virtual Machine. |
Resource Group | The resource group the Virtual Machine belongs to. |
Resource Status | The status of the Virtual Machine resource. |
State | The state of the Virtual Machine. |
Status | The status of the Virtual Machine. |
Storage I/O (Bytes per Second) | Storage IO usage on the Virtual Machine. |
Version | The configuration version of the Virtual Machine. |
Virtualization Platform | The name of the virtualization platform being used to host this Virtual Machine. |
Updated almost 2 years ago