MySQL-Proxy mit automatischem Failover

s24!

Registered User
Hi,

ich habe hier eine Master-Master-Replikation (wobei immer nur ein Server wirklich Daten ausliefert etc.), deren Anwendung nicht automatisch von Server 1 auf Server 2 oder umgekehrt bei Nichterreichbarkeit umschalten kann. Da die Anwendung nur noch so weit wie es irgendwie notwendig ist gepflegt wird, wird sich daran auch nichts ändern.

Nun suche ich eine Art MySQL-Proxy, der das kann. Er muss nichts cachen und braucht auch sonst keine "Feature-Sammlung"; er muss wirklich nur Queries an einen Server durchreichen und bei Misserfolg den anderen Server anfragen. Besonders toll wäre, wenn er sich den Ausfall eines Servers "merken" könnte und diesen dann für $Zeit nicht mehr anfragt.

Kennt da jemand etwas? =)


Grüße
Tim
 
Wenn du sowieso schon eine fertige Master-Master Repli hast. Warum schwenkst du dann nicht einfach die Service-IP hin und her?
Wenn du es nicht selbst fummeln willst, übernehmen das auch gern Tools wie mysql-mmm für dich. :)
 
"einfache" aber zuverlässige Bastellösung: In der DB-Konfig der Anwendung nicht die IP der Datenbank hinterlegen sondern einen Hostnamen reinschreiben, den in die /etc/hosts packen mit der IP und dann mit einem lokal laufenden Mini-Script die Verfügbarkeit des Hosts prüfen. Bei "failed" mit sed die IP in der Hosts-Datei ändern.

Je nach Prüfzyklus bekommt man zwar keine 100% hin und für das "bitte kein flapping" muss man ein wenig basteln (oder z.B. fertige Tools wie die NagiosTools bemühen), grundlegend funktionert das aber problemlos und stressfrei.

Kommt halt drauf an, wie hoch die Wunschanforderungen sind...
 
Danke erstmal für die Anregungen, ich werde mich am Dienstag (vorher nicht wirklich Zeit für das Projekt) noch mal detaillierter damit befassen und mich dann zurückmelden. :)
 
Back
Top