私は次の設定をしています:
2つのロードバランサー(HAProxy)間で高可用性を構成し、HAProxy1がダウンした場合、フローティングIPが他のロードバランサーHAProxy2に転送されるようにしました。したがって、すべてのクライアントがHAProxy2から応答を取得します。中小企業の2つのWebサーバーの中でLB。これは、HAProxyが1つしかない場合に、単一障害点を削除するためのものです。
HAProxy1でヒアビートを停止するたびに、フローティングIPはHAProxy2に移動します。しかし、私はいつでもprocess haproxy
がダウンすると、フローティングIPがHAProxy2に割り当てられるはずです。誰かがそれを実装する方法を教えてもらえますか?
oCFでは、HAProxyを取得できません。LSBクラスを使用する必要があります。以下のコマンドを実行して、lsbクラスの下のhaproxyを確認します
crm ra list lsb
その後
crm configure primitive haproxy lsb:haproxy
これで完了です。
Crmコマンドを使用して多くのことを試しました... crmコマンドを使用してフローティングIPを追加しましたが、それを使用してhaproxyを追加できません。haproxyという名前のocfがないため、多くのことを試しましたが、それを行うことができません。正確なコマンドを教えてもらえますか
Haproxyocfエージェントは russki リポジトリからダウンロードできます。
Sudo wget -O /usr/lib/ocf/resource.d/heartbeat/haproxy http://github.com/russki/cluster-agents/raw/master/haproxy
次に、ファイルのアクセス許可を変更します。
Sudo chmod 755 /usr/lib/ocf/resource.d/heartbeat/haproxy
次のようにリソースを構成します。
# crm configure show
node node1
node node2
primitive failover-ip ocf:heartbeat:IPaddr2 \
params ip="v.i.p.a" cidr_netmask="32" \
op monitor interval="5s" \
meta is-managed="true"
primitive haproxy ocf:heartbeat:haproxy \
params conffile="/etc/haproxy/haproxy.cfg" \
op monitor interval="30s" \
meta is-managed="true"
colocation haproxy-with-failover-ip inf: haproxy failover-ip
order haproxy-after-failover-ip inf: failover-ip haproxy
property $id="cib-bootstrap-options" \
dc-version="1.0.12-unknown" \
cluster-infrastructure="openais" \
no-quorum-policy="ignore" \
expected-quorum-votes="2" \
stonith-enabled="false" \
last-lrm-refresh="1342783084"
ハートビートを適切に構成したようですが、ペースメーカーを構成していません。
Pacemakerは、実行中のサービスなどを監視し、他のサーバーに切り替える必要があるかどうかを判断するソリューションの一部です。
http://itand.me/4190152 haproxy用に設定するためのガイドがあります。 「pacemakerhaproxy」をグーグルで検索すると、さらに多くの情報が見つかります。ペースメーカーのすべてのドキュメントも読むことを忘れないでください。すべてをスムーズに実行するための重要なヒントがたくさんあります。
サービスを監視し、マスター(HAProxy1)に障害が発生した場合にサービスを利用できるように、Pacemakerを構成する必要があります。 crmコマンドを使用して構成し、フローティングIPとhaproxyサービスをペースメーカーに追加できます。