Script to put a group into maintenance mode

Create a group with your servers in it, if you are dynamically adding the servers into the group then as a safeguard add your SCOM management servers to the Excluded Members tab

If you like you can set this script to run as a scheduled task using the trigger powershell.exe “c:\scripts\myscript.ps1”

# Puts all servers in a specified group into maintenance mode
#
#
# Uncomment the ‘param’ line below if you want to pass values by parameter to this script
#param ($groupName, $MMDurationInHours, $rmsServerName)

#NOTE change the parameters below to suit your environment
$MMDurationInHours = “2.5”
$rmsServerName = “mgmtserver.mydomain.com”
$groupName = “My Server Group”
$comment = “Routine maintenance mode procedure” # this comment shows up in the SCOM Console.
#Load the Operations Manager snapin and connect to the Root Management Server
add-pssnapin “Microsoft.EnterpriseManagement.OperationsManager.Client”;
Set-Location “OperationsManagerMonitoring::”;

$mgConn = New-ManagementGroupConnection -connectionString:$rmsServerName;
if($mgConn -eq $null)
{
[String]::Format(“Failed to connect to RMS on ‘{0}'”,$rmsServerName);
return;
}

Set-Location $rmsServerName;

$startTime = [DateTime]::Now
$endTime = $startTime.AddHours($MMDurationInHours)
$MonitoringClassCG = get-monitoringclass | where {$_.DisplayName -eq $groupName}
$MonitoringGUID = get-monitoringobject $MonitoringClassCG.Id
New-MaintenanceWindow -startTime:$startTime -endTime:$endTime  -comment:$comment -monitoringObject:$MonitoringGUID

 

 

Advertisements
This entry was posted in Misc Stuff and tagged , , , , , , , , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s