Linux向けの優れたフェイルオーバー/高可用性ソリューション?[閉まっている]


9

障害(サーバーのハングまたはクラッシュ)が発生した場合に、あるサーバーから別のサーバーにアプリケーションを移行する必要があるいくつかのケースがあります。

solarisでは、これをVCS(Veritas Cluster Server)で行います。Linuxにはどのようなオプションがありますか?

それぞれの設定/保守にかかる労力のレベルまたはコスト(ある場合)を示してください。

-詳細を追加-

複雑さのレベルを知るには:

  • 障害が発生したサーバーは予告なしにハングまたはクラッシュする可能性があり、「ping可能」である可能性があります
  • リカバリサーバーは、フェイルオーバー時にアプリケーションを起動する必要があります
  • 失敗したサーバーのブート/電源の再投入は、リカバリサーバーと干渉しないようにパッシブになります。

これはデータベースではなくデータ収集ノードまたは計算ノードであるため、より単純なソリューションが機能する可能性があります。

-さらに詳細(申し訳ありません)-

共有ストレージはオプションではありませんが、あるサーバーから別のサーバーに移行する必要がある状態(ある場合)はそれほど多くありません。rsyncを介して2つのサーバーの同期を維持します。

これまでのすべての投稿をありがとうございました。

回答:



4

Linuxでさまざまなクラスターソリューションを使用しています。私は構成管理の支持者でもあるので、説明に少し追加します(ChefまたはPuppet、つまり)

Veritas Cluster Server(VCS)。しばらく前ですが、RHEL 3.0にいくつかのLinux VCSクラスターをデプロイしました。RHEL 5.0で利用できるといいのですが。あなたは、おなじみの領域として、これを設定することの難しさに精通している必要があります。ご存知かもしれませんが、VCSは高価です。事例として、VCSは構成管理によるセットアップにはあまり適していません。

RHELと言えば、Red Hat Cluster Suiteは、RHEL 2.1の最初のリリース以来、非常に成熟しています。セットアップ/構成フェーズは非常に単純であり、ドキュメントは非常に完全で有用です。VCSと同様に、ベンダーからサポートを購入できます。商用HA製品の場合、RHCSは手頃な価格です。私はパッケージをインストールするために構成管理を使用し、Webインターフェースを介して「手動」でそれらを維持します。また、Red Hat以外のプラットフォームでこれを使用している人もいると聞きましたが、直接の経験はありません。

Linux-HA(drbd / heartbeat)も同様に優れていますが、VCSからの構成は単純に見えるかもしれませんが、扱いにくいかもしれません。これは、構成管理ツールを使用して自動化するのがかなり簡単です。

概念実証として、IBMのHACMP(AIXクラスターソフトウェア)を使用してLinuxクラスターをインストールしました。VCSよりも高価であることを思い出すので、これはお勧めしません。IBMにはHACMPをインストールおよび保守するための特定の手順があります。ここでは構成管理を使用しません。


4

マイケルは、コミュニティが現在少し骨折していることは正解であり、ドキュメントは少しまばらです。

実際、それはすべてそこにあり、理解することは不可能です。あなたが本当に望んでいるのは、 "Pacemaker Configuration Explained" ebook ...(PDFへのリンク)です。あなたはそれを数十回読んだ後、それを実装しようとし、それからさらに数十回読んで実際にそれを見ることができるようにするでしょう。

この時点でサポートされているLinux用クラスターサービスの最適な実装は、おそらくNovellのSLES11であり、それは高可用性拡張(HAE)です。それはちょうど1、2か月前に出された、それはそれを設定して、物事を実行する方法を説明する素敵な厚い200ページのマニュアルが付属しています。Novellは、さまざまな形式のPacemaker構成のサポートについても優れています。

それ以外に、RHEL5の実装があります。これには同じパッケージと適切なドキュメントがありますが、SLESよりも高価だと思います。少なくとも、それは私たちのためです。

今はHeartbeatを避けて、Pacekmaker / OpenAISを使用します。なぜなら、将来的には、サポートがはるかによくサポートされるからです。しかし、コミュニティの現状は、専門家が少なく、本番環境で実行している人が少なく、完全に無知な人がたくさんいます。Pacemakerメーリングリストに参加して、Andrew Beekhofという名前の男性に注目してください。

編集して要求された詳細を提供します。

Pacemaker / OpenAISは、「プリミティブリソース」(たとえば、nfs-server)で「監視」操作を使用して、リソースの動作を追跡します。サンプルのNFSサーバーがX秒の間、残りのクラスターに応答しない場合、クラスターはSTONITH(ヘッド内の他のノードを撃つ)操作を実行してプライマリノードをシャットダウンし、セカンダリノードをアクティブにします。後で何を起動するか、および実行する関連アクションを構成で決定します。そこからの実装の詳細は、フェイルオーバーしようとしているサービス、特定の操作(プライマリノードをマスターに戻すなど)の実行ウィンドウ、および全体が可能な限り構成可能であることに依存します。


1

Linux HAコミュニティは、現時点では少し分割されています。

以前はLinux HAと呼ばれていたツールは現在PacemakerOpenAISであるため、これらはほとんどの場合、シェアードナッシングアーキテクチャが必要なときにDRBDと組み合わせて実行されます。

これは非常に包括的な領域であり、プロジェクトの状態は必ずしも一部のベンダーソリューションほどユーザーフレンドリーではないため、このトピックについて詳しく読む前に、この本に関する良い本を入手することをお勧めします。

一部のクラスターソフトウェアベンダーによるLinuxソリューションもありますが、私はそれらを自分で使用したことがないので、それらについて詳しく説明することはできません。


1
このテーマについて、良い本を1つか2つ提案していただけませんか。
Matt Simmons、

1

Linuxでは、ハートビートとdrbdを使用してクラスタリングを実装しました。ハートビートはサーバーのステータスをチェックします。DRBDは、サーバー間のデータ同期に使用されます。1つのサーバーでoracleサービスを実行し、別のサーバーでapacheを実行しています。Oracleを実行しているサーバーに障害が発生すると、ハートビートが同じことを感知し、Apacheを実行しているサーバーでOracleサービスを復元します。逆もまた同様です。このセットアップを他の多くの目的に使用しており、現在まで信頼性があります。


1

Red Hat Cluster Suiteは、ほぼすべての可能なアプリケーションに必要なことを実行します。GFSおよびクラスターLVMと組み合わせて、強固な共有ストレージを実現できます。

メンテナンスは、個々のボックスを稼働させたままにすることほど簡単です。アプリケーションの移行により、実際には個々のボックスにパッチを適用することが容易になります。

RHCSにはWebフロントエンド(Luci)とGTKフロントエンド(system-config-cluster)が付属しており、構成と移行をクリック可能にしています。アプリケーションごとのフェイルオーバードメイン、リカバリポリシー、フェンシングをすべて1つの中央のWebベースの管理コンソールから設定できます。

RHCSには実際にはかなり確かなサポートオプションがあるという事実を考慮して、RHCSを選びます。

どれくらいの費用がかかるかわかりませんが、数千ドルの範囲だと思います。


1

UltraMonkeyは、部分的にLinux-HAフレームワークの上に構築されています。私はこれを本当のクラスターよりも負荷分散ソリューションと考えていましたが、フェイルオーバーをうまく処理します。


それはまだ更新されていますか?ウェブサイトは言う:Copyright © 2000-2005, Horms Last Updated: Sat Mar 4 16:33:57 2006 +0900
NickW 2013年

0

Linux Virtual Serverを使用し、高可用性を維持しています。keepalivedは、ホスト自体でVRRPを実行するか(他のサーバーの停止に依存していると思います)、別のホストに設定してロードバランシングを実行し、サービスの可用性をチェックできます。最初の状況でサービスチェックを設定することは可能かもしれませんが、私はチェックしていません。2番目の状況は、両方のサーバーを同時に実行できる場合に特に有効です。そうでない場合は、手動で切り替えることができます。


0

別のマシンを必要としない、TCP用のソフトウェアベースのロードバランサーを作成しました。マルチキャストリンクレベルのアドレスでアナウンスし、2つのマシンが同じTCP接続を提供することを回避するためにマシン間でネゴシエートすることにより、単一のIPアドレスを共有します。

マイナス面は、それが本番環境に対応していないことです。しかし、テストネットワークでテストしたい場合は、喜んでいます。

ふわふわクラスターはこちら

私は必ずしも「生きているが病気」の状況を検出するわけではありませんが、メンバーサーバー間で負荷分散を行っています(ユーザースペースプロセスが停止した場合、他のノードが障害ノードを認識して削除します)。


0

無料ではありませんが、独自のHAソリューションをLinuxにインストールする時間や専門知識がない人は、www.rapidscaleclusters.comで答えを入手できます。ほんの数分で稼働し、簡単にインストールして実行できます。これもサポートされています。


なぜ誰かがこれをマークダウンしたのかわからない...これは実行可能な解決策のように見えます(ただし、常に技術的な問題があります...少なくともこれは私の第一印象である「サービス」のようではありません)。
ericslaw、2011

0

シェルスクリプトで記述されたオープンソースのフェールオーバークラスターマネージャーに取り組んでいます。必要な統合が失敗する可能性があっても、問題はありません。確認して、見たい機能や不足している機能があるかどうかをお知らせください:https : //github.com/nackstein/back-to-work/

シェルプログラミング(POSIXシェル)が得意な場合は、プロジェクト開発に参加できます。D

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.