Lost Objects(LOST)アラームとObject lostアラートをトリガーした(失われた可能性があると特定した)オブジェクトを検索してリストアできる場合があります。
開始する前に
- 「損失オブジェクトの調査」で特定した損失オブジェクトのCBIDが必要です。
- Passwords.txtファイルが必要です。
タスク概要
次の手順に従って、グリッド内の他の場所で損失オブジェクトのレプリケート コピーを検索します。ほとんどの場合、損失オブジェクトは見つかりません。迅速に対処すれば、損失レプリケート オブジェクトを検索してリストアできる場合があります。
注意:この手順についてサポートが必要な場合は、テクニカル サポートに連絡してください。
手順
- 管理ノードの監査ログで、オブジェクトが存在する可能性のある場所を検索します。
- グリッド ノードにログインします。
- 次のコマンドを入力します:ssh admin@grid_node_IP
- Passwords.txtファイルに含まれているパスワードを入力します。
- 次のコマンドを入力してrootに切り替えます:su -
- Passwords.txtファイルに含まれているパスワードを入力します。
rootとしてログインすると、プロンプトが$から#に変わります。
- 監査ログが格納されているディレクトリに移動します。cd /var/local/audit/export/
- grepを使用して、失われた可能性があるオブジェクトに関連付けられている監査メッセージを抽出し、出力ファイルに送信します。次のように入力します。grep hexadecimal-cbid-value audit_file_name > output_file_name
次に例を示します。
Admin: # grep 0x2E2C7E93FD5E4ED4 audit.log > messages_about_lost_object.txt
- grepを使用して、損失オブジェクトのObject Rules Met(ORLM)監査メッセージを抽出します。次のように入力します。grep ORLM output_file_name
次に例を示します。
Admin: # grep ORLM messages_about_lost_objects.txt
以下は、ORLM監査メッセージの例です。
2019-09-15.txt.gz:2019-09-15T13:52:54.648789 [AUDT:[CBID(UI64):0x2E2C7E93FD5E4ED4][RULE(CSTR):"Make 2 Copies"][STAT(FC32):DONE][CSIZ(UI64):10][UUID(CSTR):"2A8F30F0-11D2-49E4-B649-7FA875AC018B"][LOCS(CSTR):"CLDI 12099341, CLDI 12018810"][RSLT(FC32):SUCS][AVER(UI32):10][ATIM(UI64):1568555574000][ATYP(FC32):ORLM][ANID(UI32):12099341][AMID(FC32):OBDI][ATID(UI64):15559490536956943145]]
- ORLMメッセージでLOCSフィールドを検索します。
このフィールドのCLDIの値は、オブジェクトのコピーが配置されている可能性のあるLDRのノードIDおよびボリュームIDです。
オブジェクトの場所がわかれば、そのオブジェクトをリストアできる場合があります。
- このLDRノードIDのストレージ ノードを見つけます。
ノードIDを使用してストレージ ノードを見つける方法は2つあります。
- Grid Managerで、を選択します。 次に、を選択します。LDRのノードIDは、[Node Information]テーブルにあります。このLDRをホストしているストレージ ノードが見つかるまで、各ストレージ ノードの情報を確認します。
- グリッドのリカバリ パッケージをダウンロードして解凍します。SAIDパッケージの\docsディレクトリにある index.htmlファイルの「Servers Summary」には、すべてのグリッド ノードのすべてのノードIDが記載されています。
- 監査メッセージに配置先として示されているストレージ ノードでオブジェクトを検索します。
- グリッド ノードにログインします。
- 次のコマンドを入力します:ssh admin@grid_node_IP
- Passwords.txtファイルに含まれているパスワードを入力します。
- 次のコマンドを入力してrootに切り替えます:su -
- Passwords.txtファイルに含まれているパスワードを入力します。
rootとしてログインすると、プロンプトが$から#に変わります。
- ディレクトリを変更します。cd /var/local/rangedb
- オブジェクトのコピーを検索します。次のように入力します。find . -name "hexadecimal-cbid-value"
たとえば、次のように入力します。
DC-SN1: # find . -name “0x2E2C7E93FD5E4ED4”
注:このfindコマンドの完了には時間がかかる(数日)ことがあります。
ノードのストレージ ボリュームのいずれかにオブジェクトが存在する場合、findコマンドは現在の場所からオブジェクトへのファイル パスを返します。このファイル パスを使用してオブジェクトをリストアできます。
- 損失オブジェクトをリストアします。
- Telnetでlocalhost 1402に接続して、LDRコンソールにアクセスします。
- 次のように入力します。cd /proc/CMSI
- 次のように入力します。Object_Found file_path_of_object
オブジェクトの完全なファイル パスには
/var/local/rangedbが含まれますが、前の手順で見つかった部分的なファイル パスを使用してください。たとえば、次のように入力します。
Object_Found 1/p/12/0E/0x2E2C7E93FD5E4ED4p
Object_Foundコマンドを実行すると、グリッドにオブジェクトの場所が通知されます。また、アクティブなILMポリシーがトリガーされ、ポリシーの指定に従って追加のコピーが作成されます。
注:オブジェクトが見つかったストレージ ノードがオフラインの場合は、オンラインの任意のストレージ ノードにオブジェクトをコピーできます。オブジェクトは、オンラインのストレージ ノードのいずれかの/var/local/rangedbで最も下位のサブディレクトリに配置してください。次に、オブジェクトの部分的なファイル パスを使用して、Object_Foundコマンドを実行します。
- Grid Managerで損失オブジェクトの数をリセットします。