PowerShell管理SCOM_批量設置維護模式(上 )

#定義存儲須要置爲維護模式的計算機名稱列表
$serverlist = "C:\scomm\servers.txt"
#定義腳本執行結果的輸出位置
$server_maintenance_result = "C:\scomm\server_result.txt"
#定義維護模式截止時間
$time_stop = "3/5/2013 12:00"
#定義RMS服務器名稱
$rmsServerName=」scomw.testj.com」

#################################################################################
#向當前會話添加scom管理單元
add-pssnapin 「Microsoft.EnterpriseManagement.OperationsManager.Client」
#將當前工做會話設置爲SCOM
Set-Location 「OperationsManagerMonitoring::#測試管理組鏈接是否正常,管理組能夠更改
$mgConn = New-ManagementGroupConnection -connectionString:$rmsServerName
if($mgConn -eq $null)
{
[String]::Format(「Failed to connect to RMS on ‘{0}’」,$rmsServerName)
return;
}
#設置當前工做會話到scom管理控制檯服務器
Set-Location $rmsServerName


##################對每臺計算機設置維護模式#################
#定義須要設置維護模式的計算機名稱
#$time_start = [DateTime]::Now
$time_start = Get-Date
$servernames = Get-Content $serverlist
"計算機名稱" + " " + "維護模式結束時間" |Out-File $server_maintenance_result
Foreach ($servername_maintenance in $servernames)
{
#經過agent獲取Monitoringobject
$agent = get-agent|where {$_.name -eq $servername_maintenance+".testj.com"}
$server = $agent.hostcomputer
#設置具體結束時間
New-MaintenanceWindow -Monitoringobject $server -Comment "maintenance test" -Starttime $time_start -Endtime $time_stop 
#設置維護模式時長
#New-MaintenanceWindow -Monitoringobject $server -Comment "maintenance test" -Starttime $time -Endtime $time.addminutes(30)
$servername_maintenance + " " + (get-maintenancewindow -monitoringobject $server).ScheduledEndTime |Out-File $server_maintenance_result -Append

}
相關文章
相關標籤/搜索