Hiermit wird die Betriebsintegrität des SPF-VMM-Webendpunkts überwacht.
Hiermit werden Barrierefreiheit und Funktionsfähigkeit der VMM-Weboberfläche für die SPF-Webserver überwacht. Zu diesem Zweck erfolgt in regelmäßigen Abständen ein Testaufruf der Weboberfläche, um Cloudressourcen abzurufen.
Wenn nur bei diesem, jedoch bei keinem anderen Monitor ein Fehler auftritt, sind mögliche Ursachen entweder eine fehlerhafte Fabric-Konfiguration oder ein Berechtigungsfehler. Details zur Konfiguration des Monitors finden Sie im Abschnitt "Konfiguration".
Überprüfen Sie die Fabric-Konfiguration für Cloudressourcen auf dem VMM-Zielserver, und stellen Sie sicher, dass dem Administratorkonto die Zugriffsrechte gewährt wurden. Stellen Sie außerdem sicher, dass die Sicherheitseinstellungen für den Monitor ordnungsgemäß konfiguriert wurden.
Damit dieser Monitor ordnungsgemäß funktioniert, benötigt er Administratorrechte für den Zugriff auf Cloudressourcen auf VMM-Servern. Erstellen Sie ein ausführendes Konto, von dem das für den VMM-Webendpunkt angegebene Anwendungspoolkonto verwendet wird oder dem die gleichen Rechte wie diesem Konto zugewiesen wurden, und fügen Sie es dem ausführenden Profil "Microsoft Service Provider Foundation-VMM-Konto" hinzu.
Die folgenden Optionen können für diesen Monitor konfiguriert werden:
Option | Definition | Standard |
Warnung bei Status | Integritätsstatus für den Monitor, bei dem eine Warnung ausgelöst wird | Der Monitor befindet sich im Integritätsstatus "Kritisch". |
Warnungspriorität | Priorität der für diesen Monitor generierten Warnung | Hoch |
Warnungsschweregrad | Priorität der für diesen Monitor generierten Warnung | Kritisch |
Warnung automatisch auflösen | Hiermit wird angegeben, ob die Warnung automatisch aufgelöst werden soll, wenn der Status "Fehlerfrei" für den Monitor wiederhergestellt wird. | Wahr |
Aktiviert | Hiermit wird angegeben, ob der Monitor ausgeführt werden soll. | Wahr |
Generiert Warnung | Hiermit wird angegeben, ob durch den Monitor eine Warnung generiert werden soll, wenn ein Wechsel in den Status "Warnung" oder "Kritisch" erfolgt. | Wahr |
Intervall | Anzahl der Sekunden zwischen den einzelnen Ausführungen des Monitors | 300 |
Target | Microsoft.SystemCenter.SPF.SpfServer | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SystemCenter.ServiceProviderFoundation.PowerShellModule.TwoStateMonitorType.PropertyBag | ||
Remotable | True | ||
Accessibility | Internal | ||
Alert Message |
| ||
RunAs | Microsoft.SystemCenter.SPF.VmmEndpointAccount |
<UnitMonitor ID="Microsoft.SystemCenter.SPF.Monitor.VMMEndpointGet" 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.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> param
(
$PortNumber
)
$oAPI = new-object -comObject "MOM.ScriptAPI"
$propertyBag = $oAPI.CreatePropertyBag()
$errorActionSetting = $ErrorActionPreference
$downVmmServers = $null
$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
}
</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>