Ubuntu: Abhängige Dienste automatisch stoppen/starten/neu starten

Ubuntu: Abhängige Dienste automatisch stoppen/starten/neu starten

Ich habe einen kleinen Cluster aus 2 x Apache/PHP-Servern, auf denen HAProxy läuft, und der mit 2 x MySQL-Clusterservern verbunden ist. Die Sites werden von beiden Apache-Servern bedient und DNS RR wird für Failover und groben Lastausgleich verwendet.

Diagramm:

Apache/PHP -- HAProxy -- MySQL
                      \/
                      /\
Apache/PHP -- HAProxy -- MySQL

(entschuldigen Sie meine mangelnden ASCII-Art-Kenntnisse!)

Mein Problem besteht darin, dass es regelmäßig zu Netzwerkstörungen zwischen einem der Apache/PHP/HAProxy-Server und den beiden MySQL-Servern kommt.

Da Apache jedoch immer noch ausgeführt wird, beginnt es (wie zu erwarten!) immer dann Fehler auszugeben, wenn eine Anforderung von der Verfügbarkeit von MySQL abhängt.

Idealerweise sollte Apache gestoppt werden, wenn MySQL nicht verfügbar ist, und möglicherweise automatisch neu gestartet werden, wenn MySQL wieder verfügbar ist.

Dies würde dann dazu führen, dass Client-Anfragen ohne manuelles Eingreifen vom anderen Apache-Server verarbeitet werden.

Kennt jemand ein Paket, das so konfiguriert werden kann, dass dies sofort einsatzbereit ist?

Antwort1

Pacemaker ist ein Cluster-Ressourcenmanager, der so konfiguriert werden kann, dass er Standort- und Reihenfolgebeschränkungen für Ihre Dienste durchsetzt. Wenn ein Überwachungsvorgang fehlschlägt, kann der Cluster abhängige Dienste in der angegebenen Reihenfolge neu starten.

Weitere Informationen zum Pacemaker-Projekt finden Sie auf der ClusterLabs-Website:http://clusterlabs.org/

verwandte Informationen