第25章 オンラインストレージ管理

オペレーティングシステムを稼動させたまま再起動せずにストレージデバイスの追加や削除やサイズ変更などを行いたい場合がよくあります。本章では、 Red Hat Enterprise Linux 6 のホストシステムを稼動させたままでシステム上のストレージデバイスを再設定する手順について簡単に説明しています。さらに、本章では iSCSI およびファイバーチャネルのストレージ相互接続について扱います。他のタイプについての詳細は今後追加していく予定です。
本章では、ストレージデバイスの追加、削除、変更、モニターを中心に説明します。ファイバーチャネルおよび iSCSI プロトコルについては詳細に説明しません。プロトコルについては他のドキュメントを参照してください。
さまざまな sysfs オブジェクトを参照しますが、このオブジェクトの名前やディレクトリー構成は Red Hat Enterprise Linux の主要なリリースごとに変更されます。これは、アップストリームとなる Linux カーネルで安定した内部 API が提供されていないためです。移行が可能な方法で sysfs オブジェクトを参照する方法についてのガイドラインは、カーネルソースツリーにある /usr/share/doc/kernel-doc-version/Documentation/sysfs-rules.txt を参照してください。

警告

オンラインでのストレージの再設定は慎重に行ってください。プロセス中のシステム障害や中断は予期しない結果を招く恐れがあります。変更の操作を行っている間は、エクステントが最大となるようシステム負荷をできるだけ軽減させることをお勧めします。これにより、設定変更の途中で入出力エラーやメモリー不足によるエラーなどが発生する可能性が低減します。次のセクションでは、これに関してさらに詳しく説明します。
また、オンラインストレージの再設定を行う前にすべてのデータのバックアップを取ることを推奨します。

25.1. ファイバーチャネル

このセクションでは、ファイバーチャネル API、ネイティブの Red Hat Enterprise Linux 6 ファイバーチャネルドライバー、およびこれらのドライバーのファイバーチャネル機能について説明します。

25.1.1. ファイバーチャネル API

以下は、ユーザースペース API の提供に使用されるファイルを含む /sys/class/ ディレクトリーの一覧です。それぞれの項目で、ホスト番号は H、バス番号は B、ターゲットは T、論理ユニット番号 (LUN) は L、およびリモートポート番号は R で表示されています。

重要

マルチパスソフトウェアを使用されている場合は、このセクションで記載する値のいずれかを変更する前に、ご使用のハードウェアのベンダーにお問い合わせになることをお勧めします。
トランスポート: /sys/class/fc_transport/targetH:B:T/
  • port_id — 24-bit ポート ID/アドレス
  • node_name — 64-bit ノード名
  • port_name — 64-bit ポート名
リモートポート: /sys/class/fc_remote_ports/rport-H:B-R/
  • port_id
  • node_name
  • port_name
  • dev_loss_tmo — リンクが「不良」とマークされるまでの待ち時間を示す秒数です。リンクが「不良」とマークされると、該当するパスで実行している I/O (およびそのパス上のすべての新規 I/O) は失敗します。
    デフォルトの dev_loss_tmo 値は使用されるドライバー/デバイスによって異なります。Qlogic アダプターが使用される場合は 35 秒で、Emulex アダプターが使用されると、30 秒となります。dev_loss_tmo の値は、scsi_transport_fc モジュールパラメーターの dev_loss_tmo で変更できますが、ドライバーはこのタイムアウト値を上書きできます。
    dev_loss_tmo の最大値は 600 です。dev_loss_tmo がゼロか、または 600 より大きな値に設定されている場合は、ドライバーの内部タイムアウトが代わりに使用されます。
  • fast_io_fail_tmo — リンク問題が検出された時に実行された I/O が失敗するまでの待ち時間の長さです。ドライバーに達する I/O は失敗します。I/O がブロックされたキューにある場合は、dev_loss_tmo が期限切れになり、キューがブロック解除になるまでは失敗しません。
ホスト: /sys/class/fc_host/hostH/
  • port_id
  • issue_lip — ドライバーがリモートポートを再検出するように指示します。

25.1.2. ネイティブファイバーチャネルのドライバーと機能

Red Hat Enterprise Linux 6 は以下のネイティブファイバーチャネルドライバーと共に提供されます。
  • lpfc
  • qla2xxx
  • zfcp
  • mptfc
  • bfa
表25.1「ファイバーチャネルの API 機能」 では、Red Hat Enterprise Linux 6 の各ネイティブドライバーの異なるファイバーチャネル API 機能を説明しています。X は該当する機能のサポートがあることを示します。

表25.1 ファイバーチャネルの API 機能

lpfc qla2xxx zfcp mptfc bfa
トランスポート port_id X X X X X
トランスポート node_name X X X X X
トランスポート port_name X X X X X
リモートポート dev_loss_tmo X X X X X
リモートポート fast_io_fail_tmo X X [a] X [b] X
ホスト port_id X X X X X
ホスト issue_lip X X X
[a] Red Hat Enterprise Linux 5.4 時点でサポート
[b] Red Hat Enterprise Linux 6.0 時点でサポート