Exchange Databases are disabled from provisioning when EDB Diskspace is below 16%
Hallo zusammen,
Kürzlich hatten wir mit einem interessanten Problem zu tun. Ist auf dem Exchange Server der Speicherplatz für die Datenbanken zu knapp, so wird das automatische Provisioning deaktiviert.
Ich habe hier mal den Normalzustand abgebildet, bei den Datenbanken ist der Parameter "IsExcludedFromProvisioning" auf False gesetzt.
Get-MailboxDatabase | fl name, IsExcludedFromProvisioning
Wird der Exchange Server mit SCOM überwacht, sieht man im Criomson Channel Event Log, dass jede Stunde der Database Space überwacht wird.
Es sieht so aus, als das Script "Troubleshoot-DatabaseSpace.ps1" aufgerufen wird. Die Schwellwerte sind in der Datei "StoreTSConstants.ps1" gespeichert.
cd "C:\Program Files\Microsoft\Exchange Server\V14\scripts"
.\Troubleshoot-DatabaseSpace.ps1 -Server ICESRV01 -MonitoringContext
Komischerweise kann dieses Script nur aus der Powershell aufgerufen werden, jedoch nicht aus der Exchange Management Shell (EMS).
Ist der freie Speicherplatz auf den Lauwerken mit den Datenbanken unter 16% gesunken, so wird das automatische Provisioning deaktiviert und entsprechende Einträge im Crimson Channnel Event Log gemacht.
Nun schauen wir was mit dem Provisioning passiert. Die Datenbanken sind nun vom Provisioning ausgeschlossen.
Get-MailboxDatabase | fl name, IsExcludedFromProvisioning
Dieser Alert erscheint dann auch im SCOM. Dabei werden die EventID's aus dem Crimson Channel Event Log ausgelesen.
Leider wird aber mit SCOM nicht das Script von Exchange ("C:\Program Files\Microsoft\Exchange Server\V14\Scripts\Troubleshoot-DatabaseSpace.ps1") aufgerufen , und auch nicht die Schwellwerte von dort ("C:\Program Files\Microsoft\Exchange Server\V14\Scripts\StoreTSConstants.ps1") geladen.
Das SCOM Management Pack bringt ein eigenes Script, mit eigener Schwellwert Datei mit. Das Script liegt irgendwo unter "C:\Program Files\System Center Operations Manager 2007\Health Service State\Monitoring Host Temporary Files 1\" am besten man sucht einfach nach "Troubleshoot-DatabaseSpace.ps1"
Hier kann man die Schwellwerte konfigurieren, ab wann das Provisioning deaktiviert wird.
Auf dem Scom Server habe ich nach dem Script gesucht. Ist aber nicht als File auffindbar. Wo liegt das also? Wenn man sich die heruntergeladenen Management Packs auf dem Exchange Server anschaut findet man schnell die Exchange Management Packs.
Schaut man sich das Microsoft.Exchange.2010.{GUID}.{GUID}.xml im Notepad an, so findet man dort den Quelltext vom "Troubleshoot-DatabaseSpace.ps1" Script.
Das Exchange Management Pack ist aber versiegelt, und man kann keine Änderung am Script auf dem SCOM vornehmen.
Es bleibt also nichts anderes übrig, als das Script unter dem SCOM "C:\Program Files\System Center Operations Manager 2007\Health Service State\Monitoring Host Temporary Files 1\" zu finden und dort die Datei "StoreTSConstants.ps1" anzupassen.