Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden

Migration zwischen DotNetNuke-Umgebungen auf Datenbankebene in einer Webfarm

Es gibt ver­schie­dene Gründe, eine Migration zwi­schen zwei DotNetNuke-Umgebungen durch­zu­füh­ren. Oftmals möchte man ein Portal erst auf einer Test-/Staging-Umgebung erstel­len und dann auf die Produktivumgebung por­tie­ren. Zwar bie­tet DotNetNuke kei­nen BuiltIn-Staging-Support, aber es gibt eine Reihe an Techniken, um diese Aufgabe zu bewerkstelligen.

Die wohl am häu­figs­ten genutzte ist die Migration der DNN Datenbank via Backup/Restore. Im DNN Blog fin­det sich dafür ein HowTo, wel­ches die erfor­der­li­chen Schritte geeig­net beschreibt. Nichtsdestotrotz gibt es ins­be­son­dere in einer Webfarm noch einige zusätz­li­che Punkte zu beach­ten, auf die ich nach­fol­gend genauer ein­ge­hen möchte.

MachineKey in web.config überprüfen/anpassen

Folgender Eintrag muss zwin­gend auf allen beteilg­ten Webservern (Quelle und Ziel) iden­tisch sein:

<system.web>
.….<machineKey validationKey="…" decryptionKey="…" decryption="3DES" validation="SHA1" />
</system.web>

Dieser Eintrag wird für die Verschlüsselung der Passwörter in der Datenbank ange­wen­det. Wenn die Einträge in Quelle und Ziel unter­schied­lich sind, kön­nen sich die Nutzer der Quellumgebung in der Zielumgebung nicht mit ihren Passwörtern anmelden.

Lizenz erneut aktivieren

Nach der Wiederherstellung der Datenbank erhält man u.U. fol­gende Meldung im DNN:

You are using an unli­cen­sed and unsup­por­ted ver­sion of DotNetNuke Professional Edition. Please con­tact sales@dnncorp.com for infor­ma­tion on how to obtain a valid license.

Dies liegt daran, dass die Lizenzierungsinformationen eben­falls in der Datenbank gespei­chert wer­den und DNN nun "denkt", wir woll­ten die Development-Lizenz der Test-/Staging-Umgebung in der Produktivumgebung (bzw. in einer ande­ren Testumgebung) ver­wen­den. Um das Problem zu behe­ben, muss man sich als host anmel­den und zu -> System -> Professional Features -> Lizenz akti­vie­ren navigieren:

Nachdem zuerst alle vor­han­de­nen Lizenzen (aus der Quellumgebung) per Klick auf "Delete"gelöscht wur­den, kann man nun für jeden Webserver der Zielumgebung via Klick auf "Add License" wie­der eine Lizenz hin­zu­fü­gen (Achtung: Der Webserver muss dafür laufen):

Mittels Klick auf Automatic Activation wird die Aktion abgeschlossen.

DNN Portaleinstellungen anpassen

Nach der Wiederherstellung der Datenbank müs­sen in der Regel noch einige Systemeinstellung ent­spre­chend der Zielumgebung ange­passt wer­den. Folgende Einstellungen müs­sen oft­mals (zurück-) gesetzt werden:

  • System Details
    • Url des Systemverwalters
    • E‑Mail des Systemverwalters
  • SMTP-Server-Einstellungen
    • Adresse des SMTP-Servers

Zu die­sem Zweck navi­giert man zu -> System -> Systemeinstellungen und nimmt die Einstellungen wie gewünscht vor:

blank

Farm Server aktualisieren

Des Weiteren sind die Webserver der Farm zu aktua­li­sie­ren. Dafür navi­giert man zu -> System -> Professional Features -> Manage Web Servers und geht wie folgt vor:

  • Webserver der Quellumgebung löschen
  • für Webserver der Zielumgebung Enabled=true set­zen und ggf. Url anpassen

blank

Nun sollte der Verwendung des Portals auf der Zielumgebung nichts mehr im Wege stehen.

Related Posts

Pin It on Pinterest