対象製品: BLAZE
概要
BLAZEは、最大50台のサーバーを1つの統合システムとして運用できるマルチサーバークラスタリング(Multi-server clustering)をサポートしています。本書では、クラスターアーキテクチャの仕組み、サーバー間での設定データの同期方法、およびサーバーの追加・削除によるスケールアウト(拡張)時の注意事項について説明します。
クラスタアーキテクチャ
BLAZEクラスタリングは複数のサーバーを単一の統合システムとして動作させ、接続されたカメラやデバイスの冗長性と負荷分散を提供します。
BLAZEクラスタはマスター/スタンバイアーキテクチャを使用します:
- マスターサーバー — クラスタの指定されたコーディネーター。このサーバーはフェイルオーバーの決定を管理し、システム全体の設定を維持します。
- スタンバイサーバー — クラスタに参加し、デバイス管理の責任を共有するサーバー。各スタンバイサーバーはクラスタデータベースのローカルコピーを保持します。
現在のマスターが利用できなくなると、システムは自動的に別のスタンバイサーバーを新しいマスターとして昇格させます。選択される候補はクラスタ内で最も古い登録時間を持つスタンバイサーバーです。
- クラスタ内のすべてのサーバーは同一のClass Cサブネット内にある必要があります(IPアドレスの最初の3オクテットが一致する必要があります。例:192.168.1.x)。
- すべてのサーバーはネットワーク上で相互に通信可能でなければなりません。
- すべてのサーバーは同じバージョンを実行している必要があります。
サーバーは同じClass Cサブネット(例:192.168.1.x)を共有しなければなりません。新しいサーバーが参加する前に、システムは各サーバーのIPアドレスの最初の3オクテットを比較します。
サーバーが接続を維持する方法
各サーバーは1秒ごとにハートビート信号をクラスタ内の他のすべてのサーバーに送信します。このハートビートにはサーバーの現在の状態が含まれます。
他のサーバーはこれらのハートビートを監視し、ピアが正常かどうかを判断します。サーバーから10秒間ハートビートが受信されず、接続が切断されたと確認された場合、クラスタはそのサーバーをダウンと見なし、フェイルオーバーを開始します。
10秒の起動猶予期間はサーバーが初めて接続する際に適用されます。最初のハートビートが受信されるまでタイムアウトのカウントは開始されず、初期化中の誤ったフェイルオーバー警告を防ぎます。サーバーは接続が回復すると自動的に再接続し、通常の動作を再開します。再接続には手動操作は不要です。
クラスタ内のサーバーステータス:
| ステータス | 説明 |
| オンライン | サーバーは接続され、正常に動作しています。 |
| フェイルオーバー | サーバーはダウンと見なされています。 |
| アイソレート | サーバーは到達可能ですが、互換性のないバージョンを実行しています。設定同期は一時停止されています。 |
| オフライン | サーバーはシャットダウンされるか、クラスタから削除されています。 |
データ同期
クラスタ内のいずれかのサーバーで設定変更が行われると(例:カメラの追加やチャンネル設定の更新)、その変更は自動的に他のすべてのクラスタメンバーに伝播されます。
設定変更
- 同期される項目:ライセンス、チャンネルおよびアラームの状態(例:チャンネル追加、チャンネル/アラーム設定の変更)。
- 同期されない項目:イベントおよび監査ログ、録画ファイル(ビデオ、オーディオ、メタデータ、ベストショット画像など)。
- サーバーがオフラインになると、そのサーバー向けの保留中の同期変更は破棄されます。サーバーが再びオンラインになり再接続すると、完全なデータベース同期が行われて追いつきます。
- サーバーが異なるバージョンを実行している場合、そのサーバーへの設定同期はバージョン不一致が解消されるまで自動的に一時停止されます。
フェイルオーバー
フェイルオーバーは以下のいずれかの条件でサーバーが故障と検出された場合にトリガーされます:
- ネットワーク障害 — 10秒間ハートビートが受信されず、接続が切断されたことが確認される。ネットワーク障害の場合、接続が回復するとクラスタは自動的にフェイルバックを開始します。
- ストレージ障害 — サーバーがストレージ(HDD/SSD)障害を検出し、ハートビートで報告します。他のサーバーはこの通知を受け取り、ネットワーク接続がまだ有効であっても影響を受けたサーバーのカメラのフェイルオーバーを即座に開始します。ストレージ障害の場合、フェイルバックは自動的には行われず、管理者がストレージ問題の解決を確認した後、デスクトップクライアントから手動でフェイルバックをトリガーする必要があります。
カメラを引き継ぐのに十分なチャンネル容量を持つサーバーがない場合、そのカメラは容量が利用可能になるまで保留中の状態のままになります。
フェイルバック
故障したサーバーが再びオンラインになった場合:
- 復旧中のサーバーがカメラの再取得準備ができたことを通知します。
- 現在そのサーバーのカメラをホストしている各サーバーがカメラを解放します。
- カメラは元のサーバーに戻され、通常の動作を再開します。
- 復旧サーバーへのデータ同期が自動的に再開されます。
ストレージ障害とフェイルバック
サーバーがストレージ障害を経験すると、その障害をハートビートで報告し、他のサーバーはそのサーバーのカメラのフェイルオーバーを開始します。ストレージ問題が解決された後、影響を受けたサーバーは手動で復旧を確認する必要があり、その後クラスタはフェイルバックを開始しカメラを戻します。これにより、サーバーが完全に動作可能であることを確認してからカメラが戻されます。
クラスタのスケーリング
1つのクラスタは最大50台のサーバーをサポートし、各サーバーは最大256チャンネルのカメラを管理できるため、クラスタ全体で最大12,800チャンネルを扱うことが可能です。
サーバーの追加
- 新しいサーバーは既存のクラスタと同じClass Cサブネット上にあり、同じバージョンを実行している必要があります。
- サーバー追加時、システムは自動的にデータベースのバックアップを作成し、ライセンスを統合し、新しいサーバーに完全なクラスタデータベースをプッシュします。開始前に十分なディスク容量があることを確認してください。
- 既存のクラスタの動作はこの過程で中断されません。新しいサーバーの初期化中もカメラと録画は通常通り継続されます。
処理がどの段階で失敗しても、操作はキャンセルされ変更はロールバックされます。
重要: 以前に使用されていたサーバーをクラスタに追加する場合、 同期中にターゲットサーバーのデータベースはマスターのデータベースで上書きされます。 ライセンスはこの手順の前に統合されますが、ターゲットサーバーの他のローカル設定(例:デバイス、チャンネル、録画設定)
はマスターの設定に置き換えられます。
サーバーの削除
- サーバーを削除する前に、そのサーバーに割り当てられたカメラが手動で再割り当てされているか、残りのサーバーに十分なチャンネル容量があることを確認してください。
- サーバーが稼働中に削除されると、自動的にクラスタからの所属を検出し、他のサーバーとの通信を停止します。
バージョン互換性
クラスタ内のすべてのサーバーは同じバージョンを実行している必要があります。メジャー、マイナー、パッチの各バージョン番号がすべて一致しなければなりません。
バージョンの不一致が検出されると、不一致のサーバーはアイソレート状態に移行し、設定同期は一時停止されます。すべてのサーバーが同じバージョンになれば、そのサーバーは自動的に通常の運用に復帰します。
クラスタに異なるバージョンのサーバーを混在させることは推奨されません。アップグレード手順の一環としてすべてのサーバーを同じバージョンに更新してください。
既知の注意点
- 同一Class Cサブネットが必要です。各サーバーのIPアドレスの最初の3オクテットが一致しなければなりません(例:192.168.1.x)。異なるサブネット間でのクラスタリングはサポートされていません。
- 負荷が高い場合の同期遅延。設定変更はサーバーごとに1つずつ同期されます。短時間に大量の変更があると、すべてのクラスタメンバーへの伝播に時間がかかる場合があります。
- アイソレート状態のサーバーは更新を受け取れません。バージョン不一致は速やかに解消してください。
- マスターの手動選択はできません。マスターサーバーは登録順に基づいて自動的に昇格されます。手動でマスターを指定するオプションはありません。
コメント
0件のコメント
記事コメントは受け付けていません。