Монитор сервера VMM Service Provider Foundation

Microsoft.SystemCenter.SPF.Monitor.VMMServerConnection (UnitMonitor)

Отслеживание подключений ко всем зарегистрированным серверам VMM.

Knowledge Base article:

Сводка

Отслеживает подключения веб-серверов SPF к серверу управления VMM. Выполняется путем периодической проверки подключения к каждому из зарегистрированных серверов управления VMM.

Причины

Если этот монитор переходит в состояние ошибки, значит сервер управления VMM недоступен с сервера, изменилась конфигурация сервера управления VMM или неправильно настроены параметры безопасности монитора. Дополнительные сведения о настройке монитора см. в разделе "Конфигурация".

Если монитор настроен правильно, но возникает его ошибка, значит сервер управления VMM отключен от сети или недоступен для сервера Service Provider Foundation.

Разрешение

Проверьте номера портов, разрешения учетной записи и операционное состояние в конфигурации сервера управления VMM, используя пакет управления мониторинга VMM. Если для операционного состояния VMM не отображаются ошибки, проверьте зарегистрированные серверы VMM в базе данных SPF, чтобы убедиться в правильности сведений о подключении. Убедитесь, что учетной записи "Пул приложений" для конечной веб-точки VMM на сервере SPF предоставлен доступ к серверу VMM. Убедитесь, что не истек срок действия пароля учетной записи "Пул приложений".

Конфигурация

Для правильной работы этого монитора необходимы права на выполнение командлетов PowerShell SPF. Создайте учетную запись запуска от имени, которая использует или имеет разрешения с уровнем, равным уровню учетной записи "Пул приложений", указанной для конечной веб-точки VMM. Добавьте ее в профиль запуска от имени с именем "Учетная запись VMM Microsoft Service Provider Foundation".

Параметр

Определение

По умолчанию

Оповещение о состоянии

Состояние работоспособности для монитора, создавшего оповещение.

Монитор в критическом состоянии работоспособности

Приоритет оповещения

Приоритет оповещений, созданных для этого монитора.

Высокая

Серьезность оповещений

Приоритет оповещений, созданных для этого монитора.

Критическое

Автоматическое разрешение оповещения

Указывает, должно ли оповещение разрешаться автоматически, когда монитор возвращается в работоспособное состояние.

True

Включено

Указывает на необходимость запуска монитора.

True

Создает оповещение

Указывает, должен ли монитор создавать оповещение при переходе в критическое состояние или состояние предупреждения.

True

Интервал

Интервал в секундах между запусками монитора.

300

Element properties:

TargetMicrosoft.SystemCenter.SPF.SpfServer
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.ServiceProviderFoundation.PowerShellModule.TwoStateMonitorType.PropertyBag
RemotableTrue
AccessibilityInternal
Alert Message
AlertIfCantConnectToVMM
Неудачное подключение к зарегистрированному серверу VMM
RunAsMicrosoft.SystemCenter.SPF.DatabaseAccount

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.SPF.Monitor.VMMServerConnection" Accessibility="Internal" Enabled="true" Target="Microsoft.SystemCenter.SPF.SpfServer" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter.ServiceProviderFoundation.PowerShellModule.TwoStateMonitorType.PropertyBag" ConfirmDelivery="false" RunAs="Microsoft.SystemCenter.SPF.DatabaseAccount">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.SPF.Monitor.VMMServerConnection.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='DownVmmServers']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Success" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<ScriptName>HealthOfVmmServers.ps1</ScriptName>
<ScriptBody><Script>$oAPI = new-object -comObject "MOM.ScriptAPI"
$propertyBag = $oAPI.CreatePropertyBag()

$errorActionSetting = $ErrorActionPreference

$downVmmServers = $null

try
{
$ErrorActionPreference = "Stop"
Import-Module "$env:COMMONPROGRAMFILES\Microsoft System Center 2012 R2\Service Provider Foundation\Microsoft.SystemCenter.Foundation.Cmdlet.dll"
$vmmInstallPath = get-itemproperty "hklm:\software\microsoft\microsoft system center virtual machine manager administrator console\setup" | select-object -ExpandProperty installpath
Import-Module "$vmmInstallPath\bin\Microsoft.SystemCenter.VirtualMachineManager.dll"
$servers = Get-SCSPFServer -ServerType 0
foreach($server in $servers)
{
try
{
$vmmServer = Get-SCVmmServer -ComputerName $server
$vmmServer.Disconnect()
$vmmServer = $null
}
catch
{
$downVmmServers = $downVmmServers + "$server;"
}
}

if($downVmmServers -ne $null)
{
$propertyBag.AddValue("Result", "Error")
$propertyBag.AddValue("DownVmmServers", $downVmmServers)
}
else
{
$propertyBag.AddValue("Result", "Success")
}
}
catch
{
$propertyBag.AddValue("Result", "Error")
}
finally
{
$ErrorActionPreference = $errorActionSetting
$propertyBag
}
</Script></ScriptBody>
<TimeoutSeconds>300</TimeoutSeconds>
<ErrorExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">Success</Value>
</ValueExpression>
</SimpleExpression>
</ErrorExpression>
<SuccessExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Success</Value>
</ValueExpression>
</SimpleExpression>
</SuccessExpression>
</Configuration>
</UnitMonitor>