私は HAProxy を実行する 2 台の Apache/PHP サーバーの小さなクラスターを持っており、2 台の MySQL クラスター サーバーに接続しています。サイトは両方の Apache サーバーから提供され、フェイルオーバーと大まかな負荷分散には DNS RR に依存しています。
図:
Apache/PHP -- HAProxy -- MySQL
\/
/\
Apache/PHP -- HAProxy -- MySQL
(ASCII アートのスキルが足りなくてごめんなさい!)
私が直面している問題は、Apache/PHP/HAProxy サーバーの 1 つと両方の MySQL サーバー間のネットワークに定期的に障害が発生することです。
ただし、Apache はまだ実行中であるため、リクエストが MySQL が利用可能であることに依存するたびにエラーが発生し始めます (予想どおりです)。
理想的には、MySQL が利用できない場合は Apache を停止し、MySQL が再び利用可能になったときに自動的に再起動する必要があります。
これにより、クライアントの要求は手動による介入なしに他の Apache サーバーによって処理されるようになります。
これをすぐに実行できるように設定できるパッケージを知っている人はいますか?
答え1
Pacemaker は、サービスに対して場所と順序の制約を適用するように構成できるクラスター リソース マネージャーです。一部のモニター操作が失敗した場合、クラスターは指定された順序で依存サービスを再起動できます。
Pacemaker プロジェクトの詳細については、ClusterLabs Web サイトをご覧ください。http://clusterlabs.org/