ホーム フォールトトレランス コモディティハードウェア上のあらゆるアプリケーションのための瞬時のフォールトトレランスの実現Q&A

コモディティハードウェア上のあらゆるアプリケーションのための瞬時のフォールトトレランスの実現Q&A

by Ali Kafel

数週間前、Stratus は Light Reading と共同で、通信事業者および通信アプリケーションプロバイダを対象とした「Achieving Instantaneous Fault Tolerance for Any Application on Commodity Hardware」と題したウェビナーを開催しました。イベントは大盛況で、150名の参加者がライブでダイアルインし、さらに200名の参加者が登録していましたが、特定の時間に参加できなかったため、参加できませんでした。セッション中には多くの質問がありましたが、その中にはその時点で回答が得られたものもあれば、時間の都合で回答が得られなかったものもありました。このブログ記事では、質問された質問とその回答をまとめています。

Q&Aに入る前に、まずeverRun を簡単に定義してみましょう。

everRunはSoftware Defined可用性 (SDA)インフラストラクチャで、障害管理と自動フェイルオーバーをアプリケーションからソフトウェア・インフラストラクチャに移行します。これは、すべてのアプリケーションに対して、完全に自動化された完全な瞬時フォールトトレランスを提供します。これには、障害検出、ローカライズ、隔離、サービス復旧、冗長性復旧、および必要に応じて状態の複製が含まれます。 つまり、どのようなアプリケーションでも、あらゆるネットワークの商用オフザシェルフ(COTS)ハードウェア上で、高い回復力、複数レベルの状態保護、超高速のサービス復旧速度で即座に導入することができ、すべてのアプリケーションの修正やテストに伴う複雑さ、時間のかかる労力、リスクはありません。このため、everRun は、ビデオ監視、ネットワーク管理、シグナリングゲートウェイ、ファイアウォール、ネットワークコントローラーなどの通信アプリケーションに最適です!

では、Q&Aに入ります。

  • を実行するためには、別のLinux ディストリビューションが必要ですか? everRun?
    • everRun は、Windows 、CentOSLinux 、RHELLinux を含む複数のゲスト OS をサポートしています。everRun には、ベアメタルのコモディティサーバにインストールする独自の CentOS ディストリビューションが付属していますが、すべての VM に OS (ゲスト OS として) をインストールする必要があります。
  • Windows とLinux のアプリが混在している場合は?
    • 問題ありません。先に述べたように、複数のゲスト OS をインストールすることができます。なぜならeverRun は Stratus のフォールトトレラントコードが存在する KVM ハイパーバイザを利用しているため、ゲスト OS に関係なくすべての VM がアプリケーションコードの変更を必要とせずにシームレスに保護されるからです。同じeverRun の構成で、ある VM はLinux 、他のWindows とすることができます。
  • TCPの上にレイヤリングされたBGPのようなもののためのソリューションはありますか?(一般的にノンストップルーティングと呼ばれています)
    • 私たちはアプリケーションを提供しているのではなく、これらのアプリケーションを実行するソフトウェアプラットフォームを提供しています。基本的に、ゲストOS上でTCP/IP上で動作するプロトコルを使用するアプリケーションは、everRun.
  • フォールトトレラントにする必要があるMMEエンティティがあると仮定した場合、可用性 EngineはMMEのアプリケーションの内部状態をどのように維持するのでしょうか?このエンティティによって維持される内部状態は、複数のストリームに対して複数存在する可能性があります。
    • アプリケーションコードの変更を必要とするアプリケーションベースの HA ソリューションとは異なり、 このソリューションは、反アフィニティ構成のホスト間で VM ペアを自動的に作成する。これは、ステートフルなフォールトトレラントモードでデプロイされたすべてのアプリケーションのグローバルに一貫した状態を保証する、高度に洗練されたStratus StatePointアルゴリズムに基づいて、VM(およびそのすべてのアプリケーション)の状態が定期的かつ非同期的に取得されることを意味します。状態が「n」であるプライマリサーバに障害が発生した場合、システムは自動的にセカンダリサーバに切り替わり、最新の状態ポイント「n」から自動的に再開され、アプリケーションの中断や劣化は発生しません。
  • ソフトウェアにフォールト・トレラント機能や保護機能を追加した場合、レイテンシーやステートロック、リアルタイム処理への影響など、サービスレベルの低下はどのような傾向にあるのでしょうか?
    • everRun が提供する保護機能には、大きく分けて2つのタイプがあります。アプリケーションやアプリケーションコンポーネントは、フォールトトレラント(FT)モードで展開することができます。このモードでは、状態の完全な複製と高速なサービスの復元時間という点で、最高レベルの保護が実現されます。このシナリオでは、I/Oバリアによるチェックポインティングを含むプロセス全体の平均的な「追加レイテンシー」は、1ミリ秒(約750マイクロ秒)未満となります。
  • アクティブとスタンバイの距離は?
    • それは、プライマリサーバとセカンダリサーバ間のリンクの帯域幅と、遅延に対する感度に依存します….しかし、距離が長ければ伝搬遅延も長くなるため、一般的には数マイル以下となります。
  • ストラタスのフォールト・トレラント・システムは、すべての製品に使用できるのか?ソフトウェアに多くのステートを使用している製品の場合、このソリューションを統合する際に直面する課題はありますか?
    • Ubuntu、SUSE、CentOS、Red Hat EnterpriseLinux (RHEL)、またはWindows で動作する限り、どのようなアプリケーションでもeverRun で動作させることができます。すべてのアプリケーションは障害管理を必要としますが、すべてのアプリケーションが状態保護を必要としたり、同じ速 度のサービス復旧を必要とするわけではありません。everRun は複数のレベルの冗長性をサポートしています。同じアプリケーション内であっても、アプリケーションの異なるコンポーネントは、異なるレベルの冗長性を必要とする場合があります。例えば、データプレーン転送要素(vFirewalls や vRouters など)を持つアプリケーションで、制御要素(CE)とデータプレーン転送要素(FE)を別々の VM に分解した場合、CE は FT モード(状態保護)で動作し、FE は HA モードで動作し、障害が発生した場合には迅速かつ自動的に再起動されることになります。これは、CE が保護されている限り、新しい FE がサービスの中断や劣化なしに再起動されることを意味します。
  • everRun を使用するには、アプリケーションにどのような変更を加える必要がありますか?
    • アプリケーションの変更は必要ありません。当社がサポートしている OS (Red Hat EnterpriseLinux, Ubuntu, SUSE, CentOS,Windows) で実行されるアプリケーションは、everRun (ゲスト OS で) で問題なく実行され、everRun は、アプリケーションを意識することなく、状態のレプリケーションを含めて、これらの VM をシームレスに保護します。
  • 2台の物理サーバーが必要になることは理解していますが、1台が故障した場合、どうやって確認し、どうすればいいのでしょうか?
    • 一方が故障した場合、システムは自動的にセカンダリサーバーにフェイルオーバーします。FTモードで動作しているアプリケーションは自動的に非常に速く(数ミリ秒以内)再開され、HAモードのアプリケーションは自動的に再起動されます。システムの障害を警告する複数の方法(SNMP、everRun Manager、電子メール)があり、障害のあるコンポーネントを修理することができます。
  • VMwareのFTソリューションと比較してどうですか?
    • ストラタスは回復力におけるマーケットリーダーであり、何千もの実際の導入ワークロードに基づき、システムパフォーマンスとリソース利用率を最大化するためにFTアルゴリズムをチューニングしてきた35年にわたる専門知識を活用しています。一般的に、顧客がVMwareを検討するのは統合時です。しかし、可用性 と弾力性が必要な場合は、everRun を購入します。

関連記事