Coremedia Replication Connector

Smart replication for shared-nothing clusters

Eine typische Coremedia-Infrastruktur basiert auf einem Redaktionssystem, das publizierte Dokumente mittels Corba in einen Master-Live-Server überträgt. Dieser Master-Live-Server ist primärer Knoten einer Corba-basierten Replikationsinfrastruktur aus Slave-Live-Servern und Content-Application-Engines (CAE), die die eigentliche Auslieferung der Website übernehmen.

Die gesamte Prozesskette beginnend beim Redaktionssystem bis hin zum Auslieferungsserver ist also zwingend durch Corba miteinander verbunden (Bild).

Da Corba von den meisten Firewalls nicht sinnvoll überwacht werden kann, entwickelt sich so ein gewisses Problem: Das Redaktionssystem an sich ist eigentlich nicht zur Platzierung in der DMZ geeignet, da es zur Authentisierung der Redakteure Zugriff auf die Authentisierungsinfrastruktur der Organisation benötigt. Das Auslieferungssystem mit der CAE muss aber zwingend in der DMZ platziert sein. Das Problem wird noch größer, wenn die Auslieferung beispielsweise durch einen Hoster erbracht wird, der organisatorisch bedingt nicht den gleichen Sicherheitslevel aufweisen kann, wie zur Anmeldung der Redakteure notwendig wäre.

Dieses Problem tritt zum Beispiel auf, wenn eine öffentliche Behörde, dessen Netz der Einstufung NfD (nur für den Dienstgebrauch) unterliegt, seine Webseite bei einem privatwirtschaftlichen Unternehmen hosten lassen möchte.

Um diesem Problem Abhilfe zu schaffen, haben wir die den „Coremedia Producer“ entwickelt, der die redaktionellen Änderungen des Coremedia-Redaktionssystems fast universal transportfähig macht. Die Änderungen der Redakteure werden in jeweils einzeln sinnvolle Dateien verpackt, die ohne Corba auf gängigen Transportwegen wie SMTP, HTTP, WebDAV, SSH, Amazon S3 an die Auslieferungsumgebung versendet werden können. Die Software macht keine Vorgabe an den Transportweg, d.h. jeder Transportweg, der Dateien transportieren kann, kann verwendet werden.

In der Auslieferungsumgebung wird durch das Gegenstück dieser Software, den „Coremedia Consumer“, die Änderung der Datei in die dort vorliegende Infrastruktur eingespielt und dadurch die Änderungen nachvollzogen, die der Redakteur im Redaktionssystem durchgeführt hat.

Es ist keine Rückkopplung der Auslieferungsumgebung an das Redaktionssystem notwendig, wodurch auch mehr als ein Auslieferungssystem parallel betrieben werden kann (beispielsweise ein verteiltes System auf Basis von Amazon EC2). Im Gegensatz zum klassischen Coremedia-Ansatz kann dadurch ein kostengünstiger shared-nothing Cluster mit globaler Verteilung ermöglicht werden (Bild).