Övervakar driftshälsan för SPF WMM-webbslutpunkten.
Övervakar VMM-webbgränssnittets tillgänglighet och driftsduglighet från SPF-webbservrar. Det här görs genom att regelbundet göra ett testanrop till webbgränssnittet för att hämta molnresurser.
Övervakaren måste ha administratörsbehörighet för molnresurser på VMM-servrar för att kunna fungera ordentligt. Skapa ett Kör som-konto som använder eller har samma behörighet som det programpoolkonto som angetts för VMM-webbslutpunkten och lägg till det i Kör som-profilen med namnet Microsoft Service Provider Foundation VMM-konto.
Följande alternativ kan konfigureras på den här övervakaren:
Alternativ | Förklaring | Standardinställning |
Tillstånd att varna vid | Övervakarens hälsotillstånd som skapar en varning. | Övervakarens hälsotillstånd är kritiskt. |
Varningsprioritet | Prioritet för varning som skapas för den här övervakaren. | Hög |
Allvarlighetsgrad för varning | Prioritet för varning som skapas för den här övervakaren. | Kritiskt |
Lös varning automatiskt. | Anger om varningen ska lösas automatiskt när övervakaren återgår till ett felfritt hälsotillstånd. | Sant |
Aktiverad | Anger om övervakaren ska köras. | Sant |
Skapar varning | Anger om övervakaren ska skapa en varning när övervakaren övergår till ett varningstillstånd eller kritiskt tillstånd. | Sant |
Intervall | Intervall i sekunder mellan tider som övervakaren körs. | 300 |
Om den här övervakaren uppvisar fel och inga andra anslutningsövervakare gör det, beror felet sannolikt på felaktig infrastrukturresurskonfiguration eller behörighet. Gå till avsnittet Konfiguration för information om hur du konfigurerar övervakaren.
Granska infrastrukturresurskonfigurationen för molnresurser på VMM-målservern och se till att det finns åtkomstbehörighet för administratörskontot. Kontrollera att övervakarens säkerhetsinställningar är korrekta.
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 | Public | ||
Alert Message |
| ||
RunAs | Microsoft.SystemCenter.SPF.VmmEndpointAccount |
<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> 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
}
</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>