Monitor de extremo web de VMM de Service Provider Foundation

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

Supervisa el estado operativo del extremo web de VMM de SPF.

Knowledge Base article:

Resumen

Supervisa la accesibilidad y la operatividad de la interfaz web de VMM desde los servidores web SPF. Esto se realiza mediante una llamada de interfaz web de prueba para recuperar recursos de nube.

Configuración

Para que el monitor funcione correctamente, debe tener permisos de administrador para acceder a recursos de nube en servidores VMM. Cree una cuenta de ejecución que use la cuenta del grupo de aplicaciones (o que tenga los mismos permisos que esta) especificada para el extremo web de VMM y agréguela al perfil de ejecución denominado cuenta de VMM de Microsoft Service Provider Foundation.

En este monitor se pueden configurar las siguientes opciones:

Opción

Definición

Valor predeterminado

Estado de alerta

Estado de mantenimiento del monitor que genera una alerta.

El monitor se encuentra en un estado de mantenimiento crítico

Prioridad de la alerta

La prioridad de la alerta que ha generado el monitor.

Alta

Gravedad de la alerta

La prioridad de la alerta que ha generado el monitor.

Crítico

Alerta de resolución automática

Especifica si la alerta debe resolverse automáticamente cuando el monitor devuelva un estado correcto.

Verdadero

Habilitado

Especifica si el monitor debe ejecutarse.

Verdadero

Genera una alerta

Especifica si el monitor debe generar una alerta cuando cambie de un estado crítico a un estado de advertencia.

Verdadero

Intervalo

Número de segundos transcurridos entre las ejecuciones del monitor.

300

Causas

Si este monitor presenta errores, y ningún otro monitor de conectividad los tiene, las causas más probables son un error de configuración del tejido o un error de permisos. Consulte la sección Configuración para obtener más detalles sobre la configuración del monitor.

Soluciones

Compruebe el servidor VMM de destino para ver la configuración del tejido en los recursos de nube y asegúrese de que se han otorgado derechos de acceso a la cuenta del administrador. Asegúrese de que la seguridad del monitor está configurada correctamente.

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
No se puede acceder al extremo de VMM
El extremo web de VMM de Service Provider Foundation no es accesible.
RunAsMicrosoft.SystemCenter.SPF.VmmEndpointAccount

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.SPF.Monitor.VMMEndpointGet" 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.VmmEndpointAccount">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.SPF.Monitor.VMMEndpointGet.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='StatusCode']$</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>HealthOfSpfServer.ps1</ScriptName>
<ScriptBody><Script>param
(
$PortNumber
)

$oAPI = new-object -comObject "MOM.ScriptAPI"
$propertyBag = $oAPI.CreatePropertyBag()

$errorActionSetting = $ErrorActionPreference

$downVmmServers = ""
$res = $null

try
{
$ErrorActionPreference = "Stop"

[Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}

$req = [System.Net.WebRequest]::Create("https://localhost:$PortNumber/SC2012R2/VMM/Microsoft.Management.OData.svc/Clouds")
$req.UseDefaultCredentials = $true
$res = $req.GetResponse()
$int = [int]$res.StatusCode
if($int -eq 200)
{
$propertyBag.AddValue("Result", "Success")
}
else
{
$propertyBag.AddValue("Result", "Failure")
}

$propertyBag.AddValue("StatusCode", $int)

}
catch
{
$propertyBag.AddValue("Result", "Failure")
$propertyBag.AddValue("StatusCode", $_.Exception.Message)
}
finally
{
$ErrorActionPreference = $errorActionSetting
if($res -ne $null)
{
$res.Close()
}
$propertyBag
}
</Script></ScriptBody>
<Parameters>
<Parameter>
<Name>PortNumber</Name>
<Value>$Target/Property[Type="Microsoft.SystemCenter.SPF.SpfServerBase"]/PortNumber$</Value>
</Parameter>
</Parameters>
<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>