Aufbau der Systeme
Ein TMR-Verbund besteht insgesamt aus fünf
Servern, die man in der Regel als virtuelle
Maschinen betreibt. Als Schnittstelle zu den
Clients wird ein zweifach vorhandener TMR-Server
bereitgestellt, der von den Clients unter einer
virtuellen IP-Adresse erreicht werden kann. Der
TMR-Server baut die virtuellen CmContainer und
die darin befindlichen TMR-Lizenzen auf Basis
der CmContainer an den drei nachgelagerten
CodeMeter-Servern auf.
Virtuelle IP-Adresse
Im Firmennetz ist der TMR-Verbund unter einer
einzigen, virtuellen IP-Adresse erreichbar. Über
die virtuelle IP-Adresse werden alle Anfragen
an den aktiven TMR-Server geleitet. Dieser hat
beim Start der Netzwerkinfrastruktur, also dem
Switch, mitgeteilt, dass er neben seiner eigenen
IP-Adresse auch die Pakete von der festen,
virtuellen IP-Adresse empfangen möchte.
Der nicht-aktive TMR-Server überwacht als pas-
siver TMR-Server die Verfügbarkeit des aktiven
TMR-Servers über eine Keep-Alive-Prüfung.
Sobald der aktive TMR-Server nicht mehr
erreichbar ist, teilt der bislang passive TMR-
Server der Infrastruktur mit, dass er ab sofort
die Pakete der virtuellen IP-Adresse empfangen
möchte und übernimmt nahtlos die Rolle des
aktiven TMR-Servers.
Aktiv und Passiv
Dazu ist es notwendig, dass der passive
TMR-Server stets über den aktuellen Zustand
des aktiven TMR-Servers informiert ist. Daher
schickt der aktive TMR-Server immer sofort
alle Veränderungen seines Zustands an den
passiven Partner. Das sind die Konfiguration
des Systems selbst inklusive der konfigurierten
virtuellen CmContainer, der aktuellen Lizenz-
belegung sowie aller Handles, die an den nach-
gelagerten CodeMeter-Servern belegt sind.
Systembedingt kommt es bei einer solchen
Umschaltung aufgrund eines Fehlers oder
auch wegen Wartungsarbeiten zu einer kurzen
Unterbrechung von wenigen Sekunden und
ggf. zu einzelnen Paketverlusten.
Linux TMR-Server
Der auf dem TMR-Server laufende TMR-Dienst
ist eine komplette Neuentwicklung, die ein-
gehende CodeMeter API-Calls kompatibel bis
hin zur ersten CodeMeter-Version mit Universal
Firm Code, der Version 6.10, unterstützt. Das
System ist ein originales Debian-Betriebssystem,
auf das dann frei verfügbare Softwarepakete
sowie der TMR-Dienst aufgespielt werden.
Hinter den beiden TMR-Servern laufen drei
nachgelagerte CodeMeter-Server, die entweder
unter Linux oder Windows betrieben werden
können. Nach minimalen Änderungen an der
CodeMeter-Konfiguration auf diesen Servern
stehen die CodeMeter-Lizenzen nur noch den
beiden TMR-Servern zur Verfügung; eine direkte
Nutzung durch einen Client ist unterbunden.
Businessprozesse
oder dem darauf aufsetzenden Kommandozei-
lenwerkzeug CmBoxPgm programmiert wer-
den. Hierbei muss man die oben beschriebene
TMR-Id selbst vergeben. Ab Frühjahr 2019
wird die CodeMeter License Central eine
einfache Integration in Ihre Businesspro-
zesse ermöglichen. Diese wird dann auch
Mechanismen zum sauberen Ersetzen von
einzelnen CmContainern bereitstellen, zum
Beispiel nach Defekt einer Hardware und dem
anschließenden Ersatz eines CodeMeter-Servers.
Gleichzeitig wird die Software am TMR-Server
für die nächste Version erweitert, so dass eine
Lizenzanfrage-Datei für den ganzen Verbund
erzeugt wird, in der die einzelnen Kontext-Dateien
eingepackt sind. Auf gleiche Art gelieferte
Update-Dateien werden ausgepackt und nach-
einander auf die nachgelagerten CodeMeter-
Server eingespielt. Damit wird ein perfektes
Zusammenspiel von CodeMeter License
Central und TMR-Verbund möglich – und dies
unter Verwendung der gleichen Abläufe wie
bei einem einzelnen CodeMeter-Server. Auf
Softwarehersteller kommen höchstens kleine
Anpassungen in der Aktivierungssoftware zu.
Lizenzierung
Das TMR-Paket kann ab November 2018 in
der ersten Version bei Wibu-Systems lizenziert
werden. Die Abrechnung erfolgt pro instal-
liertem TMR-Verbund in einem Subskriptions-
modell.
Zunächst können die TMR-Lizenzen unter eigener
Verwaltung mit dem High Level Programming-API
Client
CodeMeter
Kommunikation
TMR-Server A
CodeMeter
Kommunikation
Failover
TMR-Verbund
Im Fehlerfall
Übernahme
von vIP
Replication
Client
Client
Client
TMR-Server B
Client
9