web-dev-qa-db-ja.com

openSUSEでのHeartbeatとCorosyncの関係

Heartbeat + PacemakerのセットアップをopenSUSE12.1に移動します。このプラットフォームではHeartbeat サポートされていません であることが判明したため、公式リポジトリからは利用できません。

Corosyncへの切り替えは実際には問題ではありませんが、なぜこの特定の決定がなされたのか興味があります。ハートビートは減価償却されていますか、それともこれはディストリビューション固有のメンテナンスの問題ですか? HAコンテキストでCorosyncをメッセージングレイヤーとして使用する利点は何ですか?

4
Szymon Jednac

私はあなたの質問に答えるのが遅れていますが、ここに行きます:

  1. はい、ハートビートは非推奨です。
  2. いいえ、これはディストリビューション固有の問題ではありません
  3. ハートビートの代わりにCorosyncを使用することには多くの利点があります。何よりもまず、上記のポイント1です。それでも、私が知っている限りここにリストします。

機能の比較:

  1. まず、Heartbeat over Corosyncを使用する唯一の利点(IMO)は、構成が簡単で、初めて実行する場合でも数分で実行できることです。 Corosyncには多くの忍耐と愛情が必要です。

  2. Heartbeatを使用すると、すべてのリソースに単一のプライマリを定義できますが、corosyncでは、リソースごとに異なるプライマリを割り当てることができます。

  3. リソースの粘着性はcorosyncで定義できます(ハートビートでは使用できません)。リソースの粘着性は、リソースの所有権の優先順位です。 Server1とServer2を持つ2サーバークラスターがあるとしましょう。 Server1はプライマリであり、すべてのアクティブなリソースがあり、Server2はセカンダリです。ある晴れた日、Server1がダウンし、Server2がプライマリになり、すべてのリソースがアクティブになります。これがハートビートクラスターの場合、Server1を追加するのに頭痛の種が発生しますが、Corosync(リソーススティッキネスが定義されている)と同様に、server1が後で起動された場合でも、Server2がプライマリとして保持されます。

  4. Corosyncを使用すると、同じバージョンのクラスター構成を維持することを心配する必要はありません。 Corosyncクラスターは、構成するすべてのサーバー間で構成を自動的に同期するため、オペレーターのエラーによって引き起こされる問題を最小限に抑えます。

  5. ハートビートを使用すると、2ノードクラスターを作成できます。corosyncにははるかに高い制限があります(正確な数は覚えていません)。

  6. Corosyncはリソースのコロケーションを可能にします。リソースのセットをグループ化し、特定のグループを1つのサーバーから実行したい場合があります。 Corosyncを使用すると、そのようなグループを作成し、各グループに異なるプライマリを割り当てることができるため、コンピューティング/ネットワークの使用率を最大化できます。

  7. 多少の手間がかかる場合がありますが、Stonithを検索することもできます。これは、データの破損やクラスター内の競合を回避するための便利な機能です。 StonithはShootThe Other Node In The Headの略です。これは、ハードウェア/負荷またはその他の問題が発生している可能性のあるノードを処理する(強制的にオフにする)ことを目的としています。

3
n3rV3