Nov 13

BizTalk 2009: BAM Alerts mit SQL Server 2008

Tag: Tipps und TricksTorsten @ 22:09

Die Funktion Business Application Monitoring Alerts (BAM Alerts) funktionieren in BizTalk 2009 auch mit dem Microsoft SQL Server 2008. Es wird keine SQL Server 2005 Instanz mehr benötigt. Das ist im offiziellen Installation Guide von Microsoft nachzulesen.

Man braucht dazu folgende Komponenten (in diesem Beispiel für die x64 Plattform):

  1. Microsoft SQL Server Native Client
    sqlncli_x64.msi
  2. Microsoft SQL Server 2005 Management Objects Collection
    SQLServer2005_XMO_x64.msi
  3. Microsoft SQL Server 2005 Notification Services Client Components
    SQLServer2005_NS_x64.msi

Ich habe also diese drei Komponenten nacheinander installiert, was anstandslos funktionierte. Anschließend habe ich den Microsoft SQL Server 2008 aufgesetzt, gefolgt vom SQL Server 2008 Service Pack 1.

Als ich dann schließlich im BizTalk Server 2009 Configuration Wizard die BAM Tools mit aktivierten BAM Alerts konfigurieren wollte, bekam ich am Ende folgende Fehlermeldung:

BizTalk 2009 Configuration Wizard - BAM Tools Failed

BizTalk 2009 Configuration Wizard - BAM Tools Failed

Per Doppelklick auf die Zeile BAM Tools Failed zeigte sich folgende Detailfehlerseite:

BizTalk Server 2009 Configuration Wizard - BAM Tools Fehler

BizTalk Server 2009 Configuration Wizard - BAM Tools Fehler

Es fehlte also eine DLL: Could not load file or assembly ‚Microsoft.SqlServer.Smo, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91‘ or one of its dependencies. The system cannot find the file specified.

Und genau diese DLL, hatte ich kurz zuvor (über Punkt 2 | SQLServer2005_XMO_x64.msi) installiert gehabt. Ich dachte mir dann, ok dann installierst du diese Komponente eben erneut. Aber das ging leider nicht. Das Setup der Komponente versagte den Dienst mit der Meldung, dass die Management Objects Collection bereits in einer neueren Version installiert sei und man die 2005er Version (die der BizTalk Server aber explizit benötigt) daher nicht installieren könne. In der Systemsteuerung / Programme und Funktionen gab es sogar einen Eintrag namens SQL Server 2008 Management Objects Collection, aber selbst eine Deinstallation dieser Komponente half nicht. Die 2005er Version ließ sich nicht installieren.

Auch Versuche anstatt der 2005er Version aus dem Installation Guide (welche sich nicht installieren ließ) die allerneuste Version aus dem SQL Server 2008 Feature Pack (April 2009) zu verwenden schlugen an der selben Stelle im BizTalk Wizard fehl. Der Wizard möchte unbedingt diese eine spezielle Version haben…

Nach einigem Probieren und zurückgehen in frühere Backups/Snapshots habe ich dann schließlich eine Lösung gefunden: Wichtig ist die Installationsreihenfolge.

Man darf nicht zuerst diese 3 Komponenten installieren und anschließend SQL Server 2008 plus SP1. Denn hier kommt es wohl zu dem Problem, dass die Management Objects Collection 2005 im Zuge der 2008er Installation bzw. des SP1 entfernt/aktualisiert wird. Und mit den 2008er Komponenten kann BizTalk nichts anfangen.

Was aber funktioniert:

  1. Zuerst SQL Server 2008 installieren
  2. Dann das SP1 des SQL Server 2008 installieren
  3. Und erst dann die drei 2005er Komponenten nacheinander installieren

Dann läuft auch der BizTalk Server 2009 Configuration Wizard bei der Installation der BAM Tools mit aktivierten Alerts ordnungsgemäß durch 😉