The Microsoft System Center Virtual Machine Manager (SCVMM) integration with OpsRamp enables seamless management, monitoring, and optimization of virtualized data centers. By integrating SCVMM into OpsRamp, organizations gain enhanced visibility into their virtual infrastructure, allowing administrators to efficiently manage resources, troubleshoot issues, and maintain optimal performance.
Prerequisites
On Gateway
- OpsRamp Classic Gateway (Linux) version 15.0.0 or later.
- OpsRamp NextGen Gateway version 15.0.0 or later.
Note:We recommend using the latest Gateway version for full coverage of (Recent bug fixes, enhancements, etc.)
- Ensure the SCVMM host/IP address and required ports are accessible from the Gateway.
- Open TCP port 22 for PowerShell over SSH.
- For legacy PowerShell Remoting, open TCP ports 5985 and/or 5986.
Note: By default, WS-Man and PowerShell remoting use port 5985 and 5986 for connections over HTTP and HTTPS, users should be present in nodes and cluster.
Non-Administrator User Privileges for PowerShell over SSH
The following permissions and configurations are required when using the PowerShell over SSH connection option with a non-administrator user account.
Prerequisites
Configure the non-administrator user on the target cluster and all applicable nodes.
Note
Execute all commands in an elevated PowerShell session (Run as Administrator).1. Add User to the Performance Monitor Users Group
The user must be a member of the Performance Monitor Users group to collect performance counter metrics.
net localgroup "Performance Monitor Users" /add "<user>"
2. Grant Remote WMI Read-Only Permissions
To grant remote WMI read-only access, perform the following steps on each monitored system:
- Press Windows Key + R, type
wmimgmt.msc, and press Enter. - In the left pane, right-click WMI Control (Local) and select Properties.
- Navigate to the Security tab.
- Expand Root and select CIMV2.
- Click Security.
- Click Add, enter the non-administrator user account, and click OK.
- Select the user and grant only the following permissions:
- Enable Account (allows local read access).
- Remote Enable (allows remote read access).
- Click Advanced.
- Select the user and click Edit.
- Set Applies to as This namespace and subnamespaces.
- Click OK, then Apply, and close all WMI management windows.
3. Grant the VMM Read-Only Administrator Role
Assign the non-administrator user the VMM Read-Only Administrator user role. This allows the user to execute Get-SC* cmdlets to view infrastructure data without making changes.
Connection Modes
Starting from Microsoft SCVMM version 1.3.0, the option to select the connectionMode is available. The supported options are:
- PowerShell (existing)
- OpenSSH (new)
Note
PowerShell Remoting over WinRM is deprecated and will no longer be supported in the applicable updated application versions. These instructions apply only to earlier application versions that still support this connection option.PowerShell Remoting over WinRM
Configuration steps
- Enable PowerShell Remoting on every applicable target:
Enable-PSRemoting -Force
- Add the user to Remote Management Users:
net localgroup "Remote Management Users" /add "<user>"
- Add the OpsRamp Gateway IP to TrustedHosts:
Set-Item WSMan:\localhost\Client\TrustedHosts -Force -Concatenate -Value "<OpsRampGatewayIP>"
To allow any host, when explicitly required:
Set-Item WSMan:\localhost\Client\TrustedHosts -Force -Value "*"
- Configure and restart WinRM:
Set-Service WinRM -StartupType Automatic
Restart-Service WinRM -Force
- Open WinRM ports on every applicable target:
- 5985 for WinRM over HTTP.
- 5986 for WinRM over HTTPS.
PowerShell pre-checks
Verify network connectivity from the Gateway:
ping <IP-address-or-hostname>
telnet <IP-address-or-hostname> 5985
telnet <IP-address-or-hostname> 5986
- For a Classic Gateway, launch PowerShell directly:
pwsh
- For a NextGen Gateway, enter the NativeBridge container and launch PowerShell:
kubectl exec -it nextgen-gw-0 -c nativebridge -- /bin/bash
pwsh
Test PowerShell Remoting using the integration credential:
$password = ConvertTo-SecureString -AsPlainText -Force -String "<password>"
$credential = New-Object `
-TypeName System.Management.Automation.PSCredential `
-ArgumentList "<username>", $password
$session = New-PSSession `
-ComputerName "<IP-address-or-hostname>" `
-Credential $credential `
-Authentication Negotiate `
-ErrorAction Stop
$session.State
The session state must be Open. Close the test session:
Remove-PSSession $session
A successful PowerShell session confirms connectivity and authentication only. The user must also have the application-specific permissions required to execute discovery and monitoring commands.
PowerShell over SSH using OpenSSH
The non-administrator user must have the following privileges:
- Membership in the Performance Monitor Users group.
- Remote WMI read-only access to the Root\CIMV2 namespace and subnamespaces.
- VMM Read-only Administrator user role.
Pre-checks
Check whether OpenSSH Server is installed:
Get-WindowsCapability -Online -Name OpenSSH.Server*
Check the SSH service:
Get-Service sshd
Configuration steps
- Install OpenSSH Server if it is not already installed:
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
- Start sshd and configure automatic startup:
Start-Service sshd
Set-Service sshd -StartupType Automatic
- Open inbound TCP port 22:
New-NetFirewallRule `
-Name "Allow-SSH-Port-22" `
-DisplayName "Allow SSH Port 22" `
-Protocol TCP `
-Direction Inbound `
-LocalPort 22 `
-Action Allow `
-Profile Domain,Private,Public
- Open C:\ProgramData\ssh\sshd_config as an administrator:
notepad C:\ProgramData\ssh\sshd_config
- Configure password authentication and the permitted user:
PasswordAuthentication yes
AllowUsers <ssh-username>
- Set Windows PowerShell as the OpenSSH default shell:
Set-ItemProperty `
-Path "HKLM:\SOFTWARE\OpenSSH" `
-Name DefaultShell `
-Value "$PSHOME\powershell.exe"
- Restart sshd and confirm that it is running:
Restart-Service sshd
Get-Service sshd
Validate connectivity from the Gateway
ping <IP-address-or-hostname>
telnet <IP-address-or-hostname> 22
ssh <username>@<IP-address-or-hostname>
The SSH connection must be established successfully, and PowerShell must be configured as the default shell. After connecting, run the following command to verify the installed PowerShell version and confirm that the active shell is PowerShell:
$PSVersionTable.PSVersion
Configure Microsoft SCVMM
- To select your client, navigate to All Clients, and click the Client/Partner dropdown menu.
Note: You may either type your client’s name in the search bar or select your client from the list. - Navigate to Setup > Account. The Account Details screen is displayed.
- Click Integrations. The Installed Integrations screen is displayed with all the installed applications.
Note: If you do not have any installed applications, you will be navigated to the Available Integrations and Apps page with all the available applications along with the newly created application with the version. - Click + ADD on the Installed Integrations page.
Note: Search for the integration either by entering the name of the integration in the search bar or by selecting the category of the integration from the All Categories dropdown list. - Click ADD in the Microsoft SCVMM application.
- In the Configuration screen, click +ADD. The Add Configuration screen appears.
- Enter the following BASIC INFORMATION:

| Field Name | Description | Field Type |
|---|---|---|
| Name | A user-defined display name for the integration instance. | String |
| Host Name / IP Address | Enter the Host Name / IP Address of the Microsoft SCVMM. It should be accessible from Gateway. | String |
| Credentials | Select the credential associated with your Microsoft SCVMM account. If you want to use the existing credentials, select them from the Select Credentials dropdown. Else, click +ADD to create credentials. The ADD CREDENTIAL window is displayed. Enter the following information.
| Dropdown |
| Connection Mode | Open SSH is the only supported option.Note: The PowerShell connection model was removed for security reasons. Migration to OpenSSH is recommended for continued support and improved security.For more information, see Deprecation notice for PowerShell Communication. | Dropdown |
| App Failure Notifications | When selected, you will be notified in case of an application failure such as Connectivity Exception, Authentication Exception. | Checkbox |
| Request Timeouts | Selecting this checkbox enables you to configure the timeout settings for NativeBridge connections and script execution requests made by the integration to the end device. | Checkbox |
| Connection Timeout In Mins | Select the maximum time, in minutes, that the integration should wait while establishing a connection with the nativeBridge. Default value: 10 minutes. | Dropdown |
| Connection Request Timeout In Mins | Select the maximum time, in minutes, required to process a NativeBridge HTTP call, from sending the request to receiving the response. Default value: 10 minutes. | Dropdown |
| Socket Timeout In Mins | Select the maximum allowable time of inactivity between two data packets during data exchange with the server. Default value: 10 minutes. | Dropdown |
| Script Execution TimeOut In Mins | Select the maximum execution time, in minutes, to be considered by the script. The default option is 5 minutes, with other available options being 10, 15, 20, 25, and 30 minutes. | Dropdown |
- Click ADD
- CUSTOM ATTRIBUTES: Custom attributes are the user-defined data fields or properties that can be added to the preexisting attributes to configure the integration.
| Field Name | Description | Field Type |
|---|---|---|
| Custom Attribute | Select the custom attribute from the dropdown. You can add attributes by clicking the Add icon (+). | Dropdown |
| Value | Select the value from the dropdown. | Dropdown |
Note
Sample values shown in the configuration fields are for illustration purposes only. Use your actual integration details when configuring.Note: The custom attribute that you add here will be assigned to all the resources that are created by the integration. You can add a maximum of five custom attributes (key and value pair).
- In the Native Types section, select the native types to be discovered.
- In the DISCOVERY SCHEDULE section, select recurrence pattern to add one of the following patterns:
- Minutes
- Hourly
- Daily
- Weekly
- Monthly
- Click ADD.
The configuration is saved and displayed on the configurations page after you save it.Note: From the same page, you may Edit and Remove the created configuration.
12. Under the ADVANCED SETTINGS, Select the Bypass Resource Reconciliation option, if you wish to bypass resource reconciliation when encountering the same resources discovered by multiple applications.
Note: If two different applications provide identical discovery attributes, two separate resources will be generated with those respective attributes from the individual discoveries.
13. Click NEXT.
14. (Optional) Click +ADD to create a new collector. You can either use the pre-populated name or give the name to your collector.
15. Select an existing registered profile.
- Click FINISH.
The integration is installed and displayed on the INSTALLED INTEGRATION page. Use the search field to find the installed integration.
Modify Microsoft SCVMM
See Modify an Installed Integration or Application article.
Note: Select Microsoft SCVMM.
Discover Resources in Microsoft SCVMM
- Navigate to Infrastructure > Search > Virtualization Management > Microsoft SCVMM. The Microsoft SCVMM page is displayed.
- Select the application on the Microsoft SCVMM page
- The RESOURCE page appears from the right.
- Click the ellipsis (…) on the top right and select View Details.
- Navigate to the Attributes tab to view the discovery details.

View resource metrics
To confirm Microsoft SCVMM monitoring, review the following:
- Metric graphs: A graph is plotted for each metric that is enabled in the configuration.
- Alerts: Alerts are generated for metrics that are configured as defined for integration.
- Click the Metrics tab to view the metric details for Microsoft SCVMM.
