How to bulk install OMS solutions with PowerShell

What is Operations Management Suite (OMS)?

The (OMS), previously known as Azure Operational Insights, is a software as a service platform that allows an administrator to manage on-premises and cloud IT assets from one console. Microsoft OMS handles log analytics, IT automation, backup and recovery, and security and compliance tasks.

In short words, our best friend. Currently, OMS has one big disadvantage, very poor performance in the web browser. There is solution! PowerShell.


Lets list all solutions. Please remember that this number is constantly changing.

Get-AzureRmOperationalInsightsIntelligencePacks -ResourceGroupName test-rg -WorkspaceName oms-workspace

Name                      Enabled
----                      -------
CapacityPerformance         False
AzureWebAppsAnalytics       False
Security                     True
Updates                      True
AntiMalware                  True
LogManagement                True
ChangeTracking               True
SQLAssessment                True
SCOMAssessment              False
ServiceDesk                 False
ADAssessment                False
AlertManagement              True
AzureAutomation             False
WireData                    False
SiteRecovery                False
Backup                      False
SurfaceHub                  False
NetworkMonitoring            True
Containers                  False
ServiceMap                   True
AzureNetworking             False
ADReplication               False
Office365                   False
CompatibilityAssessment     False
KeyVault                    False
ServiceFabric               False
DnsAnalytics                 True
ApplicationInsights          True
WireData2                   False
WaaSUpdateInsights          False
AgentHealthAssessment        True
AzureActivity                True
HDInsight                   False
HDInsightKafka              False
HDInsightSpark              False
HDInsightHadoop             False
AzureCdnCoreAnalytics       False
HDInsightStorm              False
HDInsightInteractiveQuery   False
VMware                      False
SecurityCenterFree           True
LogicAppsManagement         False
LogicAppB2B                 False
AzureSQLAnalytics           False
KeyVaultAnalytics            True
AzureNSGAnalytics            True
AzureAppGatewayAnalytics     True
DeviceHealthProd            False
WindowsDefenderATP          False
ProcessInvestigator         False
Microsoft365Analytics       False

Solutions with value True are now installed on the workspace.

How to install in bulk?

[array]$Solutions = "Security", "Updates", "AntiMalware", "LogManagement", 
"ChangeTracking", "SQLAssessment", "AlertManagement", "NetworkMonitoring", 
"ServiceMap", "DnsAnalytics", "ApplicationInsights", "AgentHealthAssessment", 
"AzureActivity", "SecurityCenterFree", "KeyVaultAnalytics", "AzureNSGAnalytics", 

$ResourceGroup = "test-rg"
$WorkspaceName = "oms-workspace"

foreach ($solution in $Solutions) {
    Set-AzureRmOperationalInsightsIntelligencePack -ResourceGroupName $ResourceGroup
    -WorkspaceName $WorkspaceName -IntelligencePackName $solution -Enabled $true