PowerScale、Isilon、OneFS:クラスターの電源を正しく切る方法
Resumo: PowerScale Clusterを適切にシャットダウンするためのベスト プラクティスと、不適切なクラスターのシャットダウンに関連するリスクに関する情報を提供します。また、クラスターを適切にシャットダウンするための詳細な手順を提供します。一部の手順は、スケジュールされたアップグレードの4~8週間前に実行する必要があります。
Instruções
概要
この記事では、Dell Isilon Clusterを適切にシャットダウンする手順と、クラスターの不適切なシャットダウンに関連するリスクについて説明します。
クラスター内で不適切にシャットダウンされたノードは、NVRAMバッテリーの寿命を超えてシステムの電力が供給されないようにする必要があります。
これは、ノードのタイプに応じて、約3日から5日です。
NVRAMバッテリーの寿命を超えてノードの電源が入っていない間に、ノード ジャーナルにデータが保存されている場合、データは失われます
これが複数のノードで発生すると、クラスターを再構築する必要が生じます
この記事の手順や情報について質問がある場合は、Dell Isilonテクニカル サポートにお問い合わせください。
手順
クラスターのシャットダウン手順では、root認証情報と、クラスター内のノードへのシリアル コンソール アクセスが必要です。手順は、次のフェーズに分かれています。
- フェーズ1:予防メンテナンスを実行する
- フェーズ2:クラスター内の各ノードをシャットダウンする
- フェーズ3:ノードが正常にシャットダウンしたことを確認する
- フェーズ4:電源を切断する
- フェーズ5:クラスター内の各ノードの電源を入れる
- フェーズ6:クラスターでヘルス チェックを実行する
シャットダウン プロセスを開始する前に、手順全体を読んでください。そうすることで、各手順を完了するためのコンテキストと順序を確実に理解できます。
フェーズ1:予防メンテナンスを実行する
これらの手順は、スケジュールされたシャットダウンの約4〜8週間前に実行します。このフェーズの目的は、シャットダウン手順を妨げる可能性のある不明または潜在的なハードウェアまたはファームウェアの問題を特定することです。
クラスター全体を直ちにシャットダウンする必要がある場合は、OneFSコマンドライン インターフェイスまたはOneFS Web管理インターフェイスを使用して、すべてのノードを同時にシャットダウンできます。
デル・テクノロジーズでは、緊急シャットダウン手順が発生した場合にデータの整合性を保つために、フェーズ3のすべての手順に従うことを強くお勧めします。
- 必要に応じて、履歴参照用のログをアップロードします。
# isi diagnostics gather start --gather-mode full
- Isilonヘルス チェックを実行またはリクエストします。
- これにより、クラスターの正常性を評価し、クラスターが良好でサポート可能かつ動作可能な状態であることを確認します。
- お客様は、次の記事に従ってこれを実行できます:「PowerScale:Isilon On-Cluster Analysisツールを実行する方法」
- また、リモート リアクティブ(カスタマー サポート)チームが実行できます。これは、サポートされているコード バージョンのクラスターに対して有効な保守契約を結んでいるすべてのお客様が利用できます。これらの要件を満たしている場合は、Dellオンライン サポート サイトで「Isilonヘルス チェック」をリクエストするサービス リクエスト(SR)を開きます。次のコマンドを実行して、ヘルス チェックの完全なログを提供します。
# isi diagnostics gather start --gather-mode full
*ヘルス チェックは、クラスターの問題を修正したり、クラスターの構成、パフォーマンス、ワークフローを評価したりすることを目的としていません。
- 次の手順を実行して、各ノードの「コールド リブート」を実行します。このアクティビティーには、メンテナンス ウィンドウをスケジュールする必要があります。
注:このプロセスにより、ノードの電源が再びオンになったときにのみ検出されるメモリー エラーまたはドライブ障害モードを特定できます。
- クラスター内の各ノードを一度に1つずつシャットダウンします。各ノードをシャットダウンするには、次の手順を実行します。
- 任意のノードへのSSH接続を開きます。次のコマンドを実行して、各ノードをシャットダウンします。
isi config shutdown <node_lnn>
- ノードの背面にある緑色の電源インジケーターLEDが点灯していないことを確認して、各ノードの電源がオフになっていることを確認します。
- 電源ボタンを押して、ノードの電源を再びオンにします。
- 次のコマンド:
isi status -qを実行して、出力の「Health DASR」列が「OK」であることを確認し、ノードがクラスターに再参加し、正常であることを確認します。 - 「Health DASR」列にノードの問題が示されている場合、またはクラスターへの再参加に失敗した場合は、次のノードをシャットダウンする前にこれらの問題を解決します。
問題の例を以下に示します。ノード1はクラスターに正常に再参加しましたが、「Health DASR」列は注意が必要であることを示しています。
mycluster-1# isi status -q Cluster Name: mycluster Cluster Health: [ ATTN] Cluster Storage: HDD SSD Size: 11G (23G Raw) 0 (0 Raw) VHS Size: 11G Used: 7.9G (69%) 0 (n/a) Avail: 3.5G (31%) 0 (n/a) Health Throughput (bps) HDD Storage SSD Storage ID |IP Address |DASR | In Out Total| Used / Size |Used / Size -------------------+-----+-----+-----+-----+-----------------+----------------- 1|10.1.16.141 |-A-- | 0| 150K| 150K| 2.0G/ 2.8G( 69%)| (No SSDs) 2|10.1.16.142 |-OK- | 98K| 13K| 112K| 2.0G/ 2.8G( 69%)| (No SSDs) 3|10.1.16.143 |-OK- | 0| 44K| 44K| 2.0G/ 2.8G( 69%)| (No SSDs) 4|10.1.16.144 |-OK- | 0| 512| 512| 2.0G/ 2.8G( 69%)| (No SSDs) -------------------+-----+-----+-----+-----+-----------------+----------------- Cluster Totals: | 98K| 208K| 306K| 7.9G/ 11G( 69%)| (No SSDs) Health Fields: D = Down, A = Attention, S = Smartfailed, R = Read-Only
- 各ノードを再起動した後、クラスター全体の正常性を再確認します。任意のノードへのSSH接続を開き、次のコマンドを実行します。
isi status -q
isi config reboot <node_lnn>
ただし、潜在的なハードウェアの問題をより効果的に特定するには、コールド リブート アプローチを使用することを強くお勧めします。
フェーズ2:クラスター内の各ノードをシャットダウンする
これらの手順は、Isilonクラスターをシャットダウンした日に実行する必要があります。クラスター全体のシャットダウン中に、いくつかの要因によりシャットダウン プロセスに影響を与えたり、プロセスが遅延したりする場合があります。例えば、ノードへの未処理のデータ書き込みがシャットダウンに影響する場合があります。手順1と2の目的は、シャットダウン コマンドを実行する前に、すべてのクライアントがクラスターから切断され、ノード ジャーナルからファイル システムにデータが適切に保存されていることを確認することです。iSCSIクライアントを使用している場合は、iSCSIサービスを無効にする前に必ずクライアントをシャットダウンしてください。
手順3では、シリアル コンソールを使用してクラスター内の各ノードを順番にシャットダウンする方法について説明します。この方法が推奨される理由は、次のノードに進む前に各ノードが適切にシャットダウンされていることを確認し、必要に応じて調整や問題の修正をしてクラスターを適切にシャットダウンするためです。ただし、この方法では、シャットダウン コマンドを実行するために各ノードにシリアル コンソールを接続する必要があるため、時間がかかる場合があります。クラスター内のすべてのノードを同時にシャットダウンするセクションでは、OneFSコマンド ライン インターフェイスまたはOneFS Web管理インターフェイスを使用してクラスターをシャットダウンする方法について説明します。この方法は、手順3よりも時間はかかりませんが、シャットダウン プロセス中に問題が発生したノードを特定するのが難しくなります。
- Isilonでは、書き込み負荷の高いクライアントがシャットダウン手順を妨げないように、クライアントからクラスターを分離することを推奨しています。これを行うには、クラスターで実行されているクライアント向けサービスを無効にします。クライアント向けサービスを無効化するには、次の手順を実行します。
- クライアント向けサービスごとに次のコマンドを実行して、クラスターで実行されているクライアント向けサービスまたはプロトコルを特定します。
isi services apache2 isi services isi_hdfs_d isi services isi_iscsi_d isi services ndmpd isi services nfs isi services smb isi services vsftpd
- B. 各コマンドの出力に基づいて、クラスターで「有効」になっているサービスをメモします。次の例では、SMBサービスは有効ですが、NFSサービスは無効になっています。
mycluster-4# isi services smb Service 'smb' is enabled. mycluster-4# isi services nfs Service 'nfs' is disabled. mycluster-4#
- クライアント向けサービスを無効にします。この手順の後、すべてのクライアントはただちにクラスターへの接続を失います。サービスを無効にするには、有効にしたサービスに関連する次のコマンドを実行します。
isi services apache2 disable isi services isi_hdfs_d disable isi services isi_iscsi_d disable isi services ndmpd disable isi services nfs disable isi services smb disable isi services vsftpd disable
iSCSIクライアントを使用している場合は、手順2を実行する前に、iSCSIクライアントのLUNがアンマウントされていることを確認します。次のコマンド: isi iscsi list を実行して、すべてのiSCSIクライアントがクラスターから切断されていることを確認します。
注:iSCSIサービスを無効にする場合は、
isi_iscsi_d disable に指定します。マウントされたiSCSI LUNが停止すると、クライアントが損傷を受けることがあり、通常はバックアップからのリカバリーが必要になります。
- 次のコマンド:
isi_for_array isi_flushに指定します。次のような出力が各ノードに表示されます。
メモ: isi_flushを実行している場合は、ノードでフラッシュが完了するか、ノードの電源がオフになるかパニック状態になるまで、フラッシュは停止しません。問題がある場合は、フラッシュからctrl+cを押すことはできません。
mycluster-4# isi_for_array isi_flush mycluster-1: Flushing cache... mycluster-1: Cache flushing complete.
mycluster-4# isi_for_array isi_flush mycluster-1: Flushing cache... vinvalbuf: flush failed, 1 clean and 0 dirty bufs remaining mycluster-2: Flushing cache... fsync: giving up on dirty
次のコマンド: isi_for_array isi_flush を再度実行します。フラッシュに失敗したノードがある場合は、Dell Isilonテクニカル サポートにお問い合わせください。次の手順に進む前に、すべてのノードで正常にフラッシュが完了している必要があります。
- クラスター内の各ノードを順番にシャットダウンし、出力を監視します。この方法をお勧めするのは、クラスター内の次のノードをシャットダウンする前に問題を特定して解決できるためです。次の手順を実行して、各ノードをシャットダウンします。
注意:クラスターをシャットダウンするために、次のコマンドを実行しないでください:
isi_for_array shutdown -p コマンドを実行してクラスターをシャットダウンします。
- 各ノードにシリアル コンソールを接続します。
- 次のコマンドを実行します。
isi config shutdown
Powering the system off using ACPI
- C. コンソールを監視して、ハードウェア関連の障害イベントを探します。以下の出力は、ノード ジャーナルが正常に保存されたことを示す一例です。
2014-03-22T00:35:19Z <1.5> mycluster-3(id11) isi_save_journal[44868]: Attempting to save journal to default location 2014-03-22T00:35:19Z <1.5> mycluster-3(id11) isi_save_journal[44868]: Saving journal to /var/journal/journal.gz 2014-03-22T00:35:19Z <1.5> mycluster-3(id11) isi_save_journal[44868]: All data saved successfully 2014-03-22T00:37:29Z <1.5> mycluster-3(id11) isi_save_journal[45074]: Attempting to save journal to default location 2014-03-22T00:37:29Z <1.5> mycluster-3(id11) isi_save_journal[45074]: A valid backup journal already exists. Not saving. An example of a node journal save failure is highlighted in the output below: 2014-03-21T23:39:09Z <1.4> mycluster-3(id11) /sbin/shutdown: ERROR: Validation failed for backup journal. Shutdown aborted 2014-03-21T23:39:09Z <1.4> mycluster-3(id11) /sbin/shutdown: Failed command output:
ノード ジャーナルが保存されなかったというエラーが表示された場合は、フェーズ3の手順を実行してジャーナルを手動で保存できます。
緊急時は、クラスター内のすべてのノードを同時にシャットダウンできます。ただし、この方法では問題が発生した場合に各ノードのステータスと出力を監視できないため、推奨されません。これらの手順に従う場合は、以下の手順を実行した後に、フェーズ3のすべての手順に従って、すべてのノードが適切にシャットダウンしたことを確認することを強くお勧めします。
Warning: ジャーナルからファイル システムにデータをフラッシュしていないノードの電源を切ると、データ ロスのリスクが大幅に高まります。シャットダウン手順に関するサポートが必要な場合は、Dell Isilonテクニカル サポートにお問い合わせください。
# isi config shutdown all
isi_for_array shutdown -p (OneFS 8.0以降のOneFS Web管理インターフェイスからコマンドを実行してクラスターをシャットダウンしないでください)。
フェーズ3:ノードが正常にシャットダウンしたことを確認する
ノードの背面にある電源インジケーターLEDを見て、ノードが正しくシャットダウンしていることを確認します。すべての電源インジケーターLEDが暗いか、消灯している必要があります。これは、ノードが正常にシャットダウンしたことを示します。
ノードの背面にある電源インジケーター ライトがまだ点灯している場合、ノードはシャットダウンされていません。ノードがシャットダウンしていない場合、または(フェーズ2の手順3Cから)ノード ジャーナルが正しく保存されなかったことがコンソール出力に表示される場合は、ノードをシャットダウンする前に、ジャーナルを手動で保存して、そのデータがディスクにコミットされていることを確認する必要があります。
- ジャーナルを手動で保存し、ノードをシャットダウンするには、次の手順を実行します。
- ノードがコマンドライン インターフェイスに応答している場合は、次のコマンドを実行してノードを再起動します。
# isi config reboot
- ノードがコマンドライン インターフェイスに応答しない場合は、ノードの背面にある電源ボタンを押したままにして、ノードを手動で再起動します。これにより、ノードの電源がオフになります。30秒待ってから、電源ボタンを1回押して、ノードを再度起動します。次のステップに進みます。
- ノードを再起動した後、再度ログインし、次の手順に従ってジャーナルを保存します。
- 次のコマンドを実行して、ノードの正常なシャットダウンを再試行します。
# isi config shutdown
- それでも出力にジャーナルが保存されなかったと表示される場合は、次のコマンドを実行してジャーナルを手動で保存します。
# isi_save_journal
- それでもジャーナルが保存されない場合は、ファイル システム/ifsをアンマウントし、次のコマンドを実行してジャーナルを強制保存します。
# isi_kill_busy && umount /ifs
- isi_checkjournalコマンドを実行して、ジャーナルが保存されていることを確認します。
# isi_checkjournal
- ジャーナルが正常に保存されたと出力に表示されるまで、次の手順に進まないでください。
必要に応じてDellテクニカル サポートにお問い合わせください。
フェーズ4:電源を切断する
クラスターが正常にシャットダウンされ、ノードの電源がオフになって初めて、電源をクラスターから切断できます。
NVRAMバッテリー
クライアントがノードにファイルを書き込むと、その書き込みはまずノードのジャーナル カードでホストされている不揮発性RAM (NVRAM)に格納されます。しばらくすると、OneFSはそれらの書き込みをディスクにコミットします。予期しない停電が発生した場合にNVRAMに格納されているデータを保護するために、各ノードにはNVRAMバッテリーが装備されています(冗長性のために2個)。電源がオフになっていても電源に接続されたままのノードは、NVRAMバッテリーをリフレッシュし続けます。電源がノードから切断されると、NVRAMバッテリーの消耗が始まります。現行世代のノード(X200、S200、X400、NL400)のバッテリー持続時間は約5日間です。旧世代のノードでは、NVRAMバッテリーの持続時間は約3日間でした。
デル・テクノロジーズでは、停電時に長時間NVRAMバッテリーに依存しないように、ノードを適切にシャットダウンすることを推奨します。
ノード上のNVRAMバッテリーが完全に消耗した場合、ノードは読み取り専用モードで起動し、NVRAMバッテリーが完全に充電されるまで約30分間読み取り専用モードのままになります。バッテリーが充電されると、ノードは自動的に通常の読み取り/書き込みモードに戻ります。
フェーズ5:クラスター内の各ノードの電源をオンにする
これらの手順は、Isilonクラスターを再起動する準備ができたときに実行する必要があります。
- 各ノードの電源をリストアします。
- 各ノードの前面パネルまたは背面にある電源ボタンを押して起動します。
- すべてのノードの電源がオンになったら、
isi status -qコマンドを実行してクラスターの正常性を確認します。続行する前に、「Health DASR」列ですべてのノードが「OK」であり、読み取り専用(R)モードでないことを確認します。正常なクラスターの場合は、次のような出力が表示されます。
Cluster Name: mycluster Cluster Health: [ OK ] Cluster Storage: HDD SSD Size: 11G (23G Raw) 0 (0 Raw) VHS Size: 11G Used: 7.9G (69%) 0 (n/a) Avail: 3.5G (31%) 0 (n/a) Health Throughput (bps) HDD Storage SSD Storage ID |IP Address |DASR | In Out Total| Used / Size |Used / Size -------------------+-----+-----+-----+-----+-----------------+----------------- 1|10.1.16.141 |-OK- | 0| 150K| 150K| 2.0G/ 2.8G( 69%)| (No SSDs) 2|10.1.16.142 |-OK- | 98K| 13K| 112K| 2.0G/ 2.8G( 69%)| (No SSDs) 3|10.1.16.143 |-OK- | 0| 44K| 44K| 2.0G/ 2.8G( 69%)| (No SSDs) 4|10.1.16.144 |-OK- | 0| 512| 512| 2.0G/ 2.8G( 69%)| (No SSDs) -------------------+-----+-----+-----+-----+-----------------+----------------- Cluster Totals: | 98K| 208K| 306K| 7.9G/ 11G( 69%)| (No SSDs) Health Fields: D = Down, A = Attention, S = Smartfailed, R = Read-Only
- フェーズ2の手順1bで作成した有効なサービスのリストを確認し、次のコマンドを1つまたは複数実行して無効にしたサービスを有効にします。
isi services apache2 enable isi services isi_hdfs_d enable isi services isi_iscsi_d enable isi services ndmpd enable isi services nfs enable isi services smb enable isi services vsftpd enable
- クライアントがクラスターに接続し、通常のワークフローを実行できることを確認します。クラスターは正常に機能している必要があります。
- 次の完全なログを収集します。
# isi_gather_info --esrs
- リモート リアクティブ(カスタマー サポート)チームが、Isilonヘルス チェックを実行またはリクエストします。
ヘルス チェックを実行する手順:
PowerScale:Isilon On-Cluster Analysisツールを実行する方法
- リモート リアクティブ サポート チームを介してヘルス チェックをリクエストします。
これは、サポートされているコード バージョンのクラスターに対して有効な保守契約を結んでいるすべてのお客様が利用できます。
これらの要件を満たしている場合は、Dellオンライン サポート サイトでサービス リクエスト(SR)を開き、「Isilonヘルス チェック」をリクエストします。
*ヘルス チェックは、クラスターの問題を修正したり、クラスターの構成、パフォーマンス、ワークフローを評価したりすることを目的としていません。