17.8. 高可用性
17.8.1. HornetQ Shared の共有ストア リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
共有ストアを使用する場合、ライブサーバーとバックアップサーバーの両方が共有のファイルシステムを使用して同じデータディレクトリー全体を共有します。これには、ページングディレクトリー、ジャーナルディレクトリー、大型のメッセージ、およびバインディングジャーナルが含まれます。フェイルオーバーが発生し、バックアップサーバーが引き継ぐと、共有ファイルシステムより永続ストレージをロードします。その後、クライアントの接続が可能になります。
重要
HornetQ は、共有ストアに対する 2 つの設定をサポートします。
- SAN 上の GFS2、ASYNCIO ジャーナルタイプを使用。
- NFSv4、ASYNCIO または NIO ジャーナルタイプを使用。
重要
HornetQ は、以下に示す厳格な設定ガイドライン下で NFS をサポートします。
このような形式の高可用性はデータレプリケーションとは異なります。これは、ライブおよびバックアップノードの両方が共有ファイルシステムにアクセスできなければならないためです。通常は、高性能なストレージエリアネットワーク (SAN) になります。
Red Hat Enterprise Linux の NFS 実装は、ダイレクト I/O (O_DIRECT フラグセットでファイルを開く) およびカーネルベースの非同期 I/O の両方をサポートします。これらの機能が両方あるため、厳格な設定ルール下で NFS を共有ストレージオプションとして使用可能です。
- HornetQ は、ASYNCIO/AIO または NIO のいずれかを使用するよう設定する必要があります。
- Red Hat Enterprise Linux NFS クライアントのキャッシュは無効にする必要があります。
重要
サーバーログは、JBoss EAP 6 が起動された後にチェックし、ネイティブライブラリーが正常にロードされ、ASYNCIO ジャーナルタイプが使用されることを確認する必要があります。ネイティブライブラリーのロードに失敗した場合は、HornetQ が失敗して NIO ジャーナルタイプを使用し、これはサーバーログに示されます。
重要
非同期 I/O を実装するネイティブライブラリーを使用するには、JBoss EAP 6 が実行されている Red Hat Enterprise Linux システムに
libaio がインストールされている必要があります。
注記
上記の規定下で NFS を使用する場合、高可用性の NFS 設定を使用することが推奨されます。
共有ストアの高可用性の利点は、ライブノードとバックアップノードの間でレプリケーションが発生しないことです。そのため、通常の操作中にレプリケーションのオーバーヘッドによってパフォーマンスが劣化しません。
共有ストアのレプリケーションの難点は、共有ファイルシステムが必要となり、バックアップサーバーが有効になると共有ストアからジャーナルをロードする必要があることです。ストアに格納されているデータの量によってはロードに時間がかかることがあります。
通常の操作中に最良のパフォーマンスが必要で、高速の SAN にアクセスでき、若干速度が遅いフェイルオーバーを許可する (データの量に応じて) 場合は、共有ストアの高可用性が推奨されます。