問題タブ [pacemaker]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
high-availability - HAProxy クラスターが同じ仮想 IP を複数のマシンに割り当てるとどうなりますか?
クラスター内でHAProxyの 2 つのインスタンスを実行して、別の負荷分散を提供しているとします。2 ノードの HAProxy クラスターは、Pacemaker と Corosync を使用して実装できます。
2 つのノードが相互に接続できなくなった状況を考えてみましょう (ただし、外部からは引き続きアクセスできます)。この状況では、このクラスターに関連付けられた仮想 IP を両方とも取得することにしました。このような状況が発生する可能性はありますか? その場合、仮想 IP リソースを保護するために STONITH を実装する必要がありますか? STONITHなしでこの問題を解決する方法はありますか?
python - セロリビート HA - ペースメーカーを使用していますか?
セロリについて私が知る限り、セロリ ビートは SPOF と見なされるスケジューラです。これは、サービスがクラッシュすることを意味し、何もスケジュールおよび実行されません。
私の場合、マスター/スレーブの 2 つのスケジューラーで HA をセットアップする必要があります。
マスターがクラッシュすると、スレーブがマスターになり、死んだマスターから残り物を拾い上げ、定期的なタスクを続行する必要があります。(リーダー選挙)
ここでの要件は次のとおりです。
- タスクは 30 分ごとにスケジュールされます (これはセロリビートで達成できます)
- タスクはアトミックではなく、失敗または成功する 30 分ごとの呼び出しだけではありません。たとえば、30 分ごとに、タスクが 50 の異なる呼び出しを行うとします。マスターが 25 回終了してクラッシュした場合、スレーブは 50 回すべての呼び出しを再度行うのではなく、残りの 25 回を終了することが期待されます。
- 死んだマスターが障害から再起動するとき、すでに実行中のマスターがあることを認識する必要があります。必ず、マスターとして起動する必要はなく、実行中のマスターが再びクラッシュするまでアイドル状態を維持する必要があります。
ペースメーカーは、セロリと組み合わせてこれを達成するための適切なツールですか?
cluster-computing - ノードは、ネットワーク ケーブルが抜かれたときにオンラインであると認識します。ペースメーカー/コロシンク
Pacemaker/Corosync を使用して 2 台のコンピューターをクラスター化しようとしています。彼らが共有する唯一のリソースは ocf:heartbeat:IPaddr です。これが主な問題です:
ノードが 2 つしかないため、フェイルオーバーはno-quorum-policy=ignore
.
ネットワーク ケーブルがノード A から引き抜かれると、ノード A の corosync が 127.0.0.1 にバインドされ、Pacemaker はノード A がまだオンラインで、ノード B がオフラインであると認識します。
Pacemaker はノード A で IPaddr を開始しようとしますが、ネットワーク接続がないため開始に失敗します。一方、ノード B はノード B がオフラインであることを認識し、IPaddr サービスがノード A で開始された場合、それ自体 (ノード B) で正常に開始されます。
ただし、サービスはノード A で開始できなかったため、致命的な状態になり、クラスターに再参加するには再起動する必要があります。(代わりに、必要なサービスの一部を再起動できます。)
1 つの回避策は、start-failure-is-fatal="false"
ノード A が成功するまで IPaddr サービスの開始を試行し続けるようにするセットです。これに関する問題は、成功すると、2 つのノードが再クラスター化され、いずれかがリソースを放棄するまで、2 つのノード間で IP 競合が発生することです。
私はcat /sys/class/net/eth0/carrier
、ケーブルが接続されている場合は 1 で、ケーブルが切断されている場合は 0 であるノード属性をミラーリングし、「接続されている」== ゼロの場合はサービスを開始しないというロケーション ルールを設定するというアイデアをいじっています。ことですが、見ていきます。
どんな考えやアイデアも大歓迎です。
sip - アスタリスク HA および SIP 登録
Pacemaker/Corosync/DRBD を使用してアクティブ/パッシブ クラスターをセットアップしました。Asterisk サーバーを HA にしたいと思っていました。ソリューションは完全に機能しますが、サービスが 1 つのサーバーで失敗し、別のサーバーで開始すると、アクティブなサーバーに登録されているすべての SIP クライアントが失われます。そして、パッシブサーバーは次の出力に何も表示しません:
クライアントが電話をかけるか、再度登録するまで。1 つの解決策は、クライアントの登録レートを 1 分程度に設定することです。他のオプションはありますか?たとえば、アスタリスクを DBMS と統合すると、この種の状態を DB に保存するのに役立ちますか??
cluster-computing - ペースメーカーの公式コマンドラインパッケージはどれ? crmshまたはpc?
ご存知pacemaker-1.1.10-1.el6_4.4
のように、このペースメーカー バージョンでは、クラスター コマンド ライン機能がペースメーカー パッケージにパッケージ化されていません。2 つのパッケージが見つかりましcrmsh
たpcs
。どれがおすすめですか?そしてそれらの間の関係は何ですか?
ありがとう、
エムレ