ミラークラスター:バイトレベル フェイルオーバーのファイル レプリケーション
Evidian SafeKit
重要なデータベース アプリケーションの高可用性
バイトレベル のファイル レプリケーション機能を備えた SafeKit ミラー クラスターは、重要なデータベース アプリケーションに対するシンプルな高可用性ソリューションを提供します。ミラー クラスターを実装する SafeKit ソフトウェアは、Windows、または Linux 上で動作し、ファイル内のリアルタイム バイトレベル レプリケーションを実行します。その結果、このソリューションは複製されたミラー SAN と同様に機能します。ただし、ハードウェア フェイルオーバー クラスターほどコストはかからず、複雑でもありません。
ソフトウェア データ レプリケーションは、複製するファイル ディレクトリの名前を使用してファイル レベルで構成されます。このディレクトリには、データベース ファイルやフラット ファイルを格納できます。ファイル内の同期バイトレベル ファイル レプリケーションにより、このアーキテクチャーは障害から保護する必要がある重要なデータを持つバックエンド アプリケーションに高可用性を提供するのに特に適しています。
SafeKit HA ソフトウェアは、このタイプの HA クラスター アーキテクチャーを構築するために、ソフトウェア データ レプリケーション機能を備えた汎用ミラー モジュールを提供します。SafeKit 汎用ミラー モジュール(英語)を基盤に独自のミラー モジュールを作成できます。ミラー モジュールの例として、Microsoft SQL Server、MySQL、Oracle、PostgreSQL、Firebird、Hyper-V が挙げられます。
ステップ 1. ミラー クラスターでのファイル レプリケーション バイトレベル
アプリケーションはサーバー 1 (プライマリ) で実行されます。ユーザーはミラー クラスターの仮想 IP アドレスに接続されます。SafeKit はアプリケーションが開いたファイルをリアルタイムで複製します。アプリケーションによって加えられたファイル内の変更のみがネットワーク全体に複製されるため、トラフィックが限定されます (バイトレベル ファイル レプリケーション)。
ファイル レベルでのソフトウェア データ レプリケーションでは、SafeKit で構成するのはファイル ディレクトリの名前のみです。2 台のサーバーのディスク編成に関する前提条件はありません。システム ディスク上にあるディレクトリを複製することもできます。
ステップ 2. フェイルオーバー
サーバー 1 で障害が発生すると、サーバー 2 が引き継ぎます。SafeKit はクラスターの仮想 IP アドレスを切り替え、自動的にサーバー 2 でアプリケーションを再起動します。アプリケーションは、サーバー 1 とサーバー 2 間の同期レプリケーションのおかげで、SafeKit によって複製された最新のファイルをサーバー 2 上で見つけることができます。アプリケーションはそのファイルをローカルに変更してサーバー 2 上で動作し続けます。これらのファイルはもうサーバー 1 に複製されません。
フェイルオーバー時間は障害検出時間 (デフォルトでは 30 秒に設定されています) とアプリケーションの起動時間の合計です。ディスク レプリケーション ソリューションとは異なり、ファイル システムの再マウントとファイル システム リカバリー手順の実行による遅延がありません。
ステップ 3. フェイルバックと再統合
フェイルバックでは、サーバー 1 の障害を引き起こした問題を修正した後にサーバー 1 の再起動が行われます。SafeKit は自動的にファイルを再同期し、サーバー 1 が停止していたときにサーバー 2 で変更されたファイルのみを更新します。
この再統合は、アプリケーションを妨害することなく行われます。そのため、アプリケーションはサーバー 2 上で動作し続けることができます。自動フェイルバックは SafeKit の大きな特徴で、サーバー 1 を再同期するためにサーバー 2 上のアプリケーションを手動で停止する必要がある他のソリューションと差別化するものです。
N 台のサーバーにファーム モジュールを展開し、ネットワーク負荷分散クラスターを実装します |
|
Windows farm |
Linux farm |
Generic Windows farm > | Generic Linux farm > |
Microsoft IIS > | - |
NGINX > | |
Apache > | |
Amazon AWS farm > | |
Microsoft Azure farm > | |
Google GCP farm > | |
Other cloud > |
ソフトウェア クラスターの種類
SafeKit では、基本的なソフトウェア クラスターとしてミラー クラスターとファーム クラスターの 2 種類が提供されます。同じソフトウェア クラスターに複数のSafeKitアプリケーション モジュールを展開できます。したがって、ファーム/ミラーの混合、アクティブ/アクティブ、N-1 など、高度なクラスタリング アーキテクチャを実装できます。
2 台のサーバーにミラー モジュールを展開し、フェイルオーバーのバイトレベルでのファイル レプリケーションを実装します |
|
Windows mirror |
Linux mirror |
Generic Windows mirror > | Generic Linux mirror > |
Microsoft SQL Server > | - |
Oracle > | |
MariaDB > | |
MySQL > | |
PostgreSQL > | |
Firebird > | |
Windows Hyper-V > | Linux KVM > |
- | Docker > Podman > Kubernetes K3S > |
Milestone XProtect > | - |
Genetec SQL Server > | - |
Hanwha Wisenet Wave > Hanwha Wisenet SSM > |
- |
Nedap AEOS > | - |
Siemens Desigo CC > Siemens SiPass > Siemens SIPORT > Siemens Siveillance > |
- |
Bosch AMS > Bosch BIS > Bosch BVMS > |
- |
Amazon AWS mirror > | |
Microsoft Azure mirror > | |
Google GCP mirror > | |
Other cloud > |
正しい選択
市場には様々な種類の高可用性ソリューションがありますが、SafeKit の特徴は、以下に示すようなシンプルさにあります。
ソフトウェア クラスタリング vs ハードウェア クラスタリング
サーバー クラスターを構築するときには2つの選択肢があります。SafeKit のようなソフトウェア クラスタリングと、ハードウェア クラスタリングです。SafeKit の方がはるかに実装が簡単です。
シェアード ナッシング クラスター vs 共有ディスク クラスター
SafeKit は、共有ディスク クラスターではなくシェアード ナッシング クラスターです。共有ディスクを構成する必要がないため、サーバーを簡単に遠隔地のコンピューター ルームに配置できます。 SAN や複製ディスクは必要ありません。
VM HA とアプリケーション HA
VM HA では高可用性が仮想マシン レベルで実装され、アプリケーション HA では高可用性がアプリケーション レベルで実装されます。VM HA とアプリケーション HA のどちらかを選択するには、この記事を参照してください。
バイトレベル ファイル レプリケーション vs ブロックレベル ディスク レプリケーション
バイトレベル ファイル レプリケーションでは、ブロックレベルディスク レプリケーションとは違って、リアルタイムで複製するファイルのディレクトリを定義するだけで済みます。SafeKit はファイル ベースのレプリケーション ソリューションであるため、完全に複製される特別なディスクを構成する必要はありません。
同期レプリケーション vs 非同期レプリケーション
非同期レプリケーションではなく同期レプリケーションの SafeKit を選択すれば、フェールオーバー時にデータが失われることがありません。
ネットワークの前提条件のないネットワーク負荷バランス
SafeKit は、特別なネットワーク構成を必要としないマイクロソフトの NLB マルチキャストまたはVMware でのユニキャストに代わるものです。そして、それは、Windows および Linux 上で実行可能です。
SafeKit の高可用性アーキテクチャ
- 2 台のサーバーにミラー モジュールを展開し、フェイルオーバーのバイトレベルでのファイル レプリケーションを実装します。
- N 台のサーバーにファーム モジュールを展開し、ネットワーク負荷分散クラスターを実装します。
- ファーム モジュールとミラー モジュールを展開し、負荷分散とミラーラングを含むクラスタリング ソリューションを実装します。
- 2 つのミラー モジュールを展開し、クロス データ レプリケーションを含むアクティブ/アクティブ クラスターを実装します。