Hitachi

インメモリデータグリッド Hitachi Elastic Application Data Store ユーザーズガイド


12.2.2 クラスタ動作不能(NOT_AVAILABLE)またはクラスタ一部稼働中(PARTIALLY_AVAILABLE)の場合

クラスタ動作不能(NOT_AVAILABLE)またはクラスタ一部稼働中(PARTIALLY_AVAILABLE)の場合の復旧までの流れについて説明します。

注意事項

EADSの合意処理では,クラスタ内で過半数の合意を得る必要があるため,クラスタ動作不能(NOT_AVAILABLE)またはクラスタ一部稼働中(PARTIALLY_AVAILABLE)になると,一部の機能が停止します。一部の機能が停止することに伴って,クラスタ動作不能またはクラスタ一部稼働中になった直後に,次のような現象が起きることがあります。

  • 予期しない例外のメッセージがログファイルに出力される。

  • 実行していたコマンドが実行中のままになる。

ただし,これらの現象が起きても,データが破壊されることはありません。

後述する手順で,データを復旧できます。

〈この項の構成〉

(1) メモリ上のキャッシュだけを使用しているとき

メモリキャッシュを使用している場合に,クラスタ動作不能(NOT_AVAILABLE)またはクラスタ一部稼働中(PARTIALLY_AVAILABLE)となったときの復旧までの流れを次の図に示します。

図12‒2 クラスタ動作不能(NOT_AVAILABLE)またはクラスタ一部稼働中(PARTIALLY_AVAILABLE)となったときの復旧までの流れ(メモリ上のキャッシュだけを使用している場合)

[図データ]

システム運用管理者が行う各作業について説明します。

(a) 縮退状態または停止状態のEADSサーバを確認する

縮退状態または停止状態のEADSサーバを確認します。

手順については,「12.2.1(1) 縮退状態または停止状態のEADSサーバを確認する」を参照してください。

(b) メモリ上のデータをファイルに書き出す

eztool export -sコマンドで,メモリ上のデータを個別に書き出します。このコマンドはEADSサーバごとに実行する必要があります。

eztool export -s
注意事項

レンジが動作不能になる直前に受信したリクエストについては,合意できている保証がありません。そのため,書き出したデータが不整合になっているおそれがありますので,注意してください。

(c) 稼働中および縮退状態のEADSサーバを強制終了する

eztool forcestopコマンドで,稼働中および縮退状態のEADSサーバを強制終了します。

すべてのEADSサーバが停止状態の場合は,実行する必要はありません。

eztool forcestopコマンドは,稼働中および縮退状態のEADSサーバで実行してください。

eztool forcestop

(d) エラーメッセージを確認する

(a)で確認したEADSサーバのメッセージログに出力されているエラーメッセージを確認します。

(e) 障害情報を取得する

全EADSサーバで障害情報を取得します。

手順については,「12.2.1(4) 障害情報を取得する」を参照してください。

(f) クラスタ内の全EADSサーバを開始する(ファイルからデータを読み込む)

障害対策後,クラスタ内の全EADSサーバを起動して,(a)でファイルに書き出したデータを再度メモリ上に読み込ませます。

手順については,「10.3 EADSサーバを開始する(ファイルからデータを読み込んでキャッシュを作成する場合)」を参照してください。

(2) ディスク上のキャッシュを使用しているとき

ディスク上のキャッシュを使用している場合に,クラスタ動作不能(NOT_AVAILABLE)またはクラスタ一部稼働中(PARTIALLY_AVAILABLE)となったときの復旧までの流れを次の図に示します。

図12‒3 クラスタ動作不能(NOT_AVAILABLE)またはクラスタ一部稼働中(PARTIALLY_AVAILABLE)となったときの復旧までの流れ(ディスク上のキャッシュを使用している場合)

[図データ]

システム運用管理者が行う各作業について説明します。

(a) 縮退状態または停止状態のEADSサーバを確認する

縮退状態または停止状態のEADSサーバを確認します。

手順については,「12.2.1(1) 縮退状態または停止状態のEADSサーバを確認する」を参照してください。

(b) キャッシュデータファイルをコンパクションする

eztool compactionコマンドで,キャッシュデータファイルをコンパクションします。このコマンドはEADSサーバごとに実行する必要があります。

eztool compaction

(c) 稼働中および縮退状態のEADSサーバを強制終了する

eztool forcestopコマンドで,稼働中および縮退状態のEADSサーバを強制終了します。

すべてのEADSサーバが停止状態の場合は,実行する必要はありません。

eztool forcestopコマンドは,稼働中および縮退状態のEADSサーバで実行してください。

eztool forcestop

(d) エラーメッセージを確認する

(a)で確認したEADSサーバのメッセージログに出力されているエラーメッセージを確認します。

(e) 障害情報を取得する

全EADSサーバで障害情報を取得します。

手順については,「12.2.1(4) 障害情報を取得する」を参照してください。

(f) クラスタ内の全EADSサーバを開始する(ディスク上のキャッシュを再開する)

障害対策後,クラスタ内の全EADSサーバを起動して,ディスク上のキャッシュを再開します。

手順については,「10.3.2 EADSサーバを開始する手順(ディスク上のキャッシュを再開する)」を参照してください。

参考

キャッシュファイルの破損が原因でキャッシュの再開に失敗する場合は,キャッシュファイルが破損しているEADSサーバの数を確認してください。

  • キャッシュファイルが破損しているEADSサーバの数が,データの多重度より少ないとき

    ファイルが破損したEADSサーバに対してeztool deleteecf -lコマンドを実行し,破損したファイルが存在するキャッシュのキャッシュファイルをすべて削除してください。そのあとで,再度eztool resumeコマンドを実行してください。

  • キャッシュファイルが破損しているEADSサーバの数が,データの多重度以上のとき

    EADSサーバを復旧できません。