Monitor de servidor VMM do Service Provider Foundation

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

Monitora a conexão para todos os servidores VMM registrados.

Knowledge Base article:

Resumo

Monitora a conectividade do servidor de gerenciamento VMM nos servidores Web da SPF. Isso é realizado por meio de uma conexão de teste periódica a cada um dos servidores de gerenciamento VMM registrados.

Configuração

Para que esse monitor funcione corretamente, é necessário que ele tenha permissão para executar Cmdlets do PowerShell e conectividade ao servidor VMM. Crie uma conta Executar como que use ou tenha as mesmas permissões da conta do Pool de Aplicativos especificada para o ponto de extremidade Web VMM e adicione-a ao perfil Executar como chamado Conta VMM do Microsoft Service Provider Foundation.

Opção

Definição

Padrão

Alertar no estado

Estado de integridade que fará com que o monitor gere um alerta.

O monitor está em um estado crítico de integridade

Prioridade do alerta

Prioridade do alerta gerado para este monitor.

Alto

Gravidade do Alerta

Prioridade do alerta gerado para este monitor.

Crítica

Resolver alerta automaticamente

Especifica se o alerta deve ser resolvido automaticamente quando o monitor retorna para um estado satisfatório de integridade.

Verdadeiro

Habilitado

Especifica se o monitor deve ser executado.

Verdadeiro

Gera um alerta

Especifica se o monitor deve gerar um alerta ao mudar para um estado crítico ou de advertência.

Verdadeiro

Intervalo

Número de segundos entre as vezes em que o monitor é executado.

300

Causas

Caso este monitor apresente um erro, isso significa que o servidor de gerenciamento VMM não está disponível no servidor, ou que a configuração do servidor de gerenciamento VMM foi alterada. Consulte a seção Configuração para obter detalhes sobre a configuração do monitor.

Se o monitor estiver configurado corretamente e apresentar erro, isso significa que o servidor de gerenciamento VMM está offline ou inacessível ao servidor do Service Provider Foundation.

Resoluções

Verifique, na configuração do servidor de gerenciamento da VMM, o número da porta, a permissão da conta e o estado operacional usando o pacote de gerenciamento de monitoramento VMM. Caso o estado operacional VMM não indique erros, verifique se as informações de conexão nos servidores VMM registrados no banco de dados da SPF estão corretas. Verifique se a conta do pool de aplicativos para o ponto de extremidade Web VMM no servidor SPF é provisionado com acesso ao servidor VMM. Verifique a expiração da senha da conta do Pool de Aplicativos.

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
AccessibilityPublic
Alert Message
Não é possível se conectar ao VMM
A conexão ao servidor VMM registrado não foi bem-sucedida
RunAsMicrosoft.SystemCenter.SPF.DatabaseAccount

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.SPF.Monitor.VMMServerConnection" Accessibility="Public" 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 = ""

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.Length -gt 0)
{
$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>