Erfahrungsbericht: Installation von EXM in Sitecore 8

15.02.2016 Miklas Bieberstein

In diesem Beitrag geht es um die Installation des Email Experience Manager Moduls in Sitecore 8. Genauer gesagt um die Erfahrungen, um die man dabei reicher wird. Dabei wird dieser Bericht quasi in Echtzeit geschrieben und jeder einzelne Schritt entsprechend dokumentiert. Also keine Dokumentation von Erfahrungen, die man über einen längeren Zeitraum gesammelt hat, während man der Lösung eines Problems Schritt für Schritt näher gekommen ist, sondern nur die nackte, ungeschönte Wirklichkeit, der man sich gegenüber sieht, wenn man versucht, eine bestimmte Aufgabe zu erfüllen. Das ist natürlich bewusst dramatisch formuliert, aber jeder der schon einmal versucht hat, vermeintlich triviale Dinge in der IT zu erledigen, weiß, wovon ich rede.

Abbildung 1: Paketinstallation starten im Control Panel

Die Aufgabe

Die Herausforderung besteht in der Installation des Email Experience Managers in Sitecore 8. Email Experience Manager (kurz EXM), wie das Modul seit Version 3 heißt, war zuvor als Email Campaign Manager (kurz ECM) bekannt und wurde, wie so ziemlich alles andere im Sitecore Universum, im Rahmen der globalen Sitecore Marketing-Strategie und weil es sich eben auch um ein von Sitecore entwickeltes Modul handelt, mit dem X für Experience versehen. Ziel ist es also, innerhalb weniger Stunden zu einer funktionierenden EXM Installation zu gelangen und wenn es richtig gut läuft, auch noch Emails zu verschicken. Da ich bereits Erfahrung mit der Installation von ECM unter Sitecore 6.4 gesammelt habe, bin ich zweierlei: Zuversichtlich, weil ich bereits Erfahrung mit der Installation von ECM habe und vorsichtig, aus demselben Grund. Ich erinnere mich gut, dass die Installation mehrfach scheiterte, bis sich herausstellte, dass es nicht genügte, als Benutzer, der das Modul installiert, über administrative Rechte zu verfügen. Nein: Reverse Engineering des Codes ergab, dass es tatsächlich eine Stelle in der Installationsroutine gibt, die ganz konkret abfragt, ob der Benutzer 'admin' heißt. Ich bin also gewarnt.

Installation

Die Ausgangsbasis ist eine neue, 'nackte' Sitecore 8.0 Installation auf einem Windows 2012 R2 Server. Das ganz läuft als virtuelle Maschine auf einem Hyper V Host. Das hat (neben anderen) den entscheidenden Vorteil, dass man den aktuellen Zustand speichern kann, Änderungen, wie zum Beispiel die Installation des EXM Moduls vornehmen und bei Problemen den vorherigen Zustand wiederherstellen kann. Perfekt also, um ein wenig zu experimentieren.

Also mache ich mich auf die Suche nach dem EXM Modul per Google. Ich finde diverse Dokumentationen, aber keinen Download. Auf doc.sitecore.net heißt es im Kapitel Getting started with EXM → About → Introducing the Email Experience Manager nur lapidar: „When you have installed the EXM module, you can open it from the Sitecore Launchpad.“ Toll.

Mein nächster Gedanke: Ist das Modul vielleicht schon integraler Bestandteil von Sitecore 8 geworden? Ich schaue mir das Launchpad also nochmal ganz intensiv an, aber: Fehlanzeige.

Das Launchpad ist nebenbei die neue Start-Oberfläche von Sitecore 8. Existiert hat es schon immer und man konnte es in früheren Sitecore Versionen auch am Login, neben Desktop und Content Manager, als Einstieg auswählen. Inhaltlich hat es sich aber stark verändert und ist nun eine Art Dashboard mit diversen Verknüpfungen und konfigurierbaren Analytics Daten. Prinzipiell folgt Sitecore mit seiner Benutzeroberfläche der jeweils aktuellen Entwicklung bei Microsoft Windows. Der bekannte Sitecore Desktop ist also, analog zu Windows 8.x, nach wie vor erreichbar.

Doch zurück zu meiner eigentlichen Aufgabe, der Suche nach dem EXM Modul. Da erinnere ich mich wieder, wo ich einst das ECM Modul gefunden hatte: Sitecore Marketplace! Enttäuschenderweise ergibt aber die entsprechende Suche dort weder im anonymen noch im angemeldeten Zustand das gesuchte Ergebnis. Hmmm.

Also zurück zu Google und tatsächlich: Man sollte nicht immer den ersten Links in der Ergebnisliste folgen und so finde ich auf der Developer Seite von Sitecore endlich mein EXM Modul. Aktuell ist zwar Version 3.2 Update-1 des Moduls, die ist aber nicht kompatibel mit meiner Sitecore 8.0 Installation. 3.2 Initial Release? Nein. Auch bei der 3.1 Version bin ich unsicher.

In solchen Fällen ist es absolut wichtig, genau auf die Versionsnummer von Sitecore zu schauen. Das Schema ist: Major.Minor Revision. Also z. B. 8.0 rev.150812.

In Sitecore vor Version 8 war diese Information immer auf der rechten Seite des Login-Bildschirms zu finden. Das ist nun nicht mehr so einfach. Man begibt sich zunächst zum bereits erwähnten Launchpad und öffnet von dort das Control Panel. Dieses ist erfreulicherweise nicht nur eine optisch angepasste Version des alten Control Panel, sondern wurde komplett überarbeitet und basiert nun auch auf der Speak Engine.



Abbildung 2: Control Panel (Ausschnitt) in Sitecore 8
 

Klickt man im Control Panel dann auf 'License details' öffnet sich ein Dialog-Fenster mit den gesuchten Informationen:

Abbildung 3: Sitecore Version in den Lizenz Details
 

Meine Sitecore Version ist also 8.0 (rev. 150812). Diese Version trägt den Namen 'Update-5'. Auf Grund dieser Informationen wähle ich also das EXM Modul 3.1 Update-1 aus und lade es nach dem Bestätigen der Nutzungsbedingungen herunter. Als nächstes werfe ich einen Blick in den 'EXM Installation Guide'. Und ja, ich gehöre zu den Menschen, die vor der Inbetriebnahme von Geräten, die sich in Bezug auf ihre Komplexität jenseits eines Toasters bewegen, die Bedienungsanleitung lesen.

Die Installationsanleitung ist ein PDF. Das Deckblatt verrät mir, dass sie erfreulicherweise nur aus drei Seiten besteht. Abzüglich des Deckblatts also zwei Seiten mit Instruktionen. Ich wage es, mir Seite zwei anzusehen...

In den 'Prerequisites' werde ich darauf hingewiesen, dass ich für die Verwendung der Sitecore Experience Plattform Änderungen in der web.config durchführen müsse. Die Experience Plattform ist der Analytics Teil von Sitecore. Prinzipiell möchte ich die Möglichkeiten zwar nutzen, um entsprechende Statistiken für meine versandten Emails zu erhalten, entscheide mich aber dafür, dies später zu konfigurieren und erst einmal einen Prüfpunkt meiner virtuellen Maschine im Hyper V Manager zu erstellen, damit ich zu diesem Zustand zurückkehren kann, sollte etwas schiefgehen. In Sitecore existiert leider keine Möglichkeit, ein Modul automatisch wieder zu deinstallieren.

Die Installationsanleitung verrät mir, dass das was ich heruntergeladen habe noch nicht das Paket ist, das ich installieren möchte, sondern die .zip Datei weitere 5 (in Worten: fünf) Archive enthält:


Installation04

Abbildung 4: Inhalt des EXM Downloads
 

Ich lese also weiter. Email Experience Manager 3.1.1 rev. 150811.zip ist das eigentliche Sitecore EXM Modul. Die anderen Archive wären für bestimmte Serverrollen. In diesem Zusammenhang verweist die Installationsanleitung auf einen 'Walkthrough: Configuring EXM in a scaled environment'. Da ich mir ziemlich sicher bin, aktuell keine skalierte Umgebung zu verwenden, erspare ich es mir, die weit verzweigte Dokumentation zu diesem Thema zu lesen.

In Punkt zwei des Installations-Prozess werde ich angehalten, bei einer bestimmten Sitecore Version eine DLL aus dem Archiv zu entfernen. Wer schon mal ein Sitecore Upgrade durchgeführt hat, kann über solche Anweisungen nur schmunzeln. Mich betrifft das in diesem Fall nicht, also Feuer frei für die eigentliche Installation. Die erfolgt ebenfalls über das Control Panel, unter dem Eintrag 'Install a package':

Abbildung 5: Nach dem Hochladen kann das Paket installiert werden
 

Nun muss man noch die Lizenzbedingungen abnicken und erhält folgende Anweisungen:

Installation06
Abbildung 6: Weitere Installationsanweisungen
 

Der Hinweis, sich diese Informationen zu kopieren ist überflüssig, bzw. irreführend. Im 'Installation Guide' steht ohnehin dasselbe. Allerdings mit dem Hinweis, das Ausführen des SQL Scripts unter bestimmten Bedingungen zu unterlassen. Vielleicht fange ich jetzt auch bei Toastern an, die Bedienungsanleitung vorher zu lesen. Man kann nie wissen.

Punkt 5 der Anweisungen erinnert mich an etwas, das mir schlagartig klar macht, dass ich heute bestimmt keine Emails mehr versenden werde: Sitecore bietet für den Versand von Emails einen eigenen (und natürlich kostenpflichtigen) Cloud Service an. Das hat zwar viele Vorteile, will man aber die Emails mit einem eigenen Service verschicken, benötigt man dazu die Erlaubnis von Sitecore. Dazu muss man sich an den Partner Support wenden und erhält eine entsprechende Lizenz, die den selbständigen Versand ermöglicht. Das kostet zwar kein Geld, aber Zeit.

Trotzdem bin ich mutig und klicke auf 'Next'. Während die Installation läuft, fällt mir auf, dass ich die Checkbox 'Restart the Sitecore Client' (was nichts anderes als F5 drücken bedeuten würde) nirgends während der Installation gesehen habe. Na ja, es muss ja nicht immer alles auf dem neuesten Stand sein. Dokumentation schon gar nicht. Früher gab es diese Checkbox jedenfalls.

In der Zeit, die es braucht, um das Modul zu installieren könnte man ungefähr zwanzig komplette Backups der Datenbank per SQLManagement Konsole durchführen und wieder einspielen. Was machen die da, frage ich mich? Ich nutze also die Zeit und widme mich den verbleibenden Installationsanweisungen. Dabei geht es um das Anbinden der EXM Datenbank, wofür ich die schon erwähnte SQLManagement Konsole verwende. Leider kann ich das nicht parallel machen, da die Datenbank-Datei Bestandteil der Installation ist... Die Anzahl der geschätzten Backups habe ich nun auf dreißig erhöht. Heute werde ich wohl nicht mehr erfahren, ob die Installation erfolgreich war, denn es ist langsam Zeit für Feierabend. Ich geh' dann mal.

Installation07

 

Update: Auch am nächsten Morgen ist die Installation nicht abgeschlossen. Das lässt natürlich darauf schließen, dass es irgendwo ein Problem gibt. Leider erhalte ich keine Fehlermeldung oder Ähnliches, nur die Animation im Installationsfenster dreht sich munter weiter.

Ich gebe erst mal auf und mache mich später auf die Suche nach der Ursache. Dass die Installation nicht auf Anhieb gelingt, ist zwar schade, aber auch keine große Überraschung. Ich stelle einfach den ursprünglichen Zustand meines Systems mittels Hyper V Manager wieder her und starte einen neuen Versuch. In einem der nächsten Beiträge werde ich dann sicherlich über eine funktionierende Email Experience Manager Installation berichten können.