SCOM 维护模式 cmdlet 问题?

Posted

技术标签:

【中文标题】SCOM 维护模式 cmdlet 问题?【英文标题】:SCOM MaintenanceMode cmdlt issue? 【发布时间】:2017-12-14 04:20:17 【问题描述】:

尝试将服务器设置为scom维护模式并收到错误

这是我正在使用的代码:

$Time = ((Get-Date).AddMinutes(240))
Start-SCOMMaintenanceMode -Instance TEST -EndTime $Time -Comment "Applying 
Software Updates."

【问题讨论】:

该服务器的对象名称是测试吗?您是否尝试使用Get cmdlet(我可能会尝试使用Get-SCOMClassInstance)预先获取服务器的对象?也许您只需要添加域?如果您查看documentation,您会发现他们正在使用$Instance = Get-SCOMClassInstance -Name "Server01.Contoso.com" 预先获取该服务器的实际实例。 【参考方案1】:

Instance 参数的值应具有 MonitoringObject 类型。你应该使用 Get-SCOMClassInstance 来检索它,但要小心,你使用

$Instance = Get-SCOMClassInstance -Name "Server01.Contoso.com"

然后您将获得不同类型的对象列表,这些对象以其父服务器命名。因此,如果您打算将 Windows 服务器置于维护模式,则需要过滤掉除 Windows 计算机类的实例之外的所有内容:

$Instance = Get-SCOMClassInstance -Name "Server01.Contoso.com" | Where-Object  $_.GetClasses() -contains (Get-SCClass -Name Microsoft.Windows.Computer) 

【讨论】:

以上是关于SCOM 维护模式 cmdlet 问题?的主要内容,如果未能解决你的问题,请参考以下文章

Powershell 维护SCOM agent 到动态管理组

如何禁用消息“在维护模式下运行。联机。”在维护模式?

定时维护模式

维护模式与中间件在 Laravel 中重定向

将网站置于维护模式?

drupal 7.34 维护模式