Firmenbrief

17.07.2007

Hochverfügbarkeit mit CoreBiz Relozierbaren Diensten, Teil 2


In unserem Linux-Firmenbrief 17/2007 haben wir Ihnen die Grundstruktur eines Failover-Systems mit Heartbeat vorgestellt. Hierbei wurde deutlich, dass dieses Prinzip in der Praxis Unzulänglichkeiten aufweist. Mit CoreBiz Relozierbaren Diensten können Sie diese Problematik lösen.

In der CoreBiz-Architektur sind Dienste über Service-Einträge im LDAP repräsentiert. Diese Service-Einträge sind direkt oder über ein Cluster indirekt mit einem oder mehreren Servern verbunden. Durch diese Verbindung wird die Konfiguration des Dienstes auf dem oder den Server(n) gesteuert. Konfigurationsparameter werden vom verbundenen Server aus diesen Einträgen gelesen und mit cfengine in die jeweiligen lokalen Konfigurationsdateien umgesetzt. Die Service-IP wird bei der direkten Verbindung mittels cbConfig auch unabhängig von Heartbeat aktiviert.

Mit dieser Architektur ist es denkbar einfach, einen Dienst von einem Server zu einem anderen zu übertragen. Wenn die Software auf beiden Systemen installiert ist, reicht es, den jeweiligen Service-Eintrag vom einen zum anderen umzuhängen, den Dienst hier anzuhalten und dort zu starten. Eine eventuell notwendige Datensynchronisation muss natürlich weiterhin durch externes RAID oder DRBD sichergestellt werden. Heartbeat ist also auf keinen Fall überflüssig. Es wird durch das CoreBiz-Servicekonzept allerdings hervorragend ergänzt.

In der Praxis gestaltet sich das Hochverfügbarkeits-Setup eines Base-Servers so, dass zum Beispiel der LDAP-Server zunächst als Active/Active-Kombination mit normaler LDAP-Replikation arbeitet. Im Failover-Fall hat der zweite Knoten mit seinem LDAP-Slave den aktuellen Datenbestand und ist ohne jede Unterbrechung erreichbar. Alle Clients, deren Konfiguration die Verwendung des ldapSecondary als Ausweichlösung (= Fallback) unterstützen, arbeiten ohne Probleme weiter. Allerdings lässt sich im LDAP nun nichts mehr ändern und alle Clients, die allein auf den ldapPrimary fixiert sind, haben ein Problem. Deshalb wird im Failover-Fall automatisch im LDAP der Verweis beim zweiten Knoten auf den ldapSecondary Service durch einen Verweis auf den ldapPrimary Service ausgewechselt. Ein anschliessendes cbConfig tauscht die Rolle des zweiten Knoten aus, und der LDAP-Server des zweiten Knoten ist als ldapPrimary erreichbar. Durch dieses Failover ist die Verfügbarkeit des ldapPrimary auf Kosten des ldapSecondary sichergestellt.

Analog funktioniert das Failover des NTP-Dienstes. Auch hier wird beim Überlauf automatisch die Verknüpfung zwischen Server und Service vom ersten zum zweiten Knoten vertauscht. Wenn der erste Knoten also tot ist, geht der ntpSecondary verloren, der ntpPrimary bleibt verfügbar.

Möchten Sie konkret erfahren, wie Ihre IT mittels CoreBiz hochverfügbar wird? Wir informieren Sie gern. Schreiben Sie einfach ein E-Mail an info@linux-ag.com oder rufen Sie uns an unter (0 89) 99 34 12-0.