第17章 ストレージ

LVM の RAID レベルテークオーバーのサポートが追加される

LVM はテクノロジープレビューで利用できた RAID テークオーバーの完全なサポートを提供します。これにより、ユーザーは RAID 論理ボリュームを 1 つの RAID レベルから別のレベルに変換することができます。今回のリリースにより、RAID テークオーバーの組み合わせの数が増加します。一部の移行のサポートには中間のステップが必要になる場合があります。RAID テークオーバーによって追加される新規の RAID タイプはリリースされるカーネルバージョンの順にサポートされる訳ではありません。これらの RAID タイプは raid0、raid0_meta、raid5_n、および raid6_{ls,rs,la,ra,n}_6 です。これらの RAID タイプを作成し、Red Hat Enterprise Linux 7.4 のそれらの RAID タイプに変換するユーザーは以前のリリースを実行しているシステムで論理ボリュームをアクティブ化できません。RAID テークオーバーは、単一マシンモードのトップレベルの論理ボリュームでのみ利用可能です (つまり、テークオーバーはクラスターボリュームグループでは利用できず、RAID がスナップショットの下、またはシンプールの一部である場合には利用できません)(BZ#1366296)。

LVM が RAID の再成形 (reshaping) に対応

LVM が RAID 再成形 (reshaping) のサポートを提供するようになりました。テークオーバーによってユーザーは 1 つの RAID タイプから別のタイプに変更でき、再成形によってユーザーは RAID アルゴリズム、ストライプサイズ、リージョンサイズ、またはイメージ数などのプロパティーを変更できるようになりました。たとえば、ユーザーは 2 つのデバイスを追加して 3-way ストライプを 5-way ストライプに変更できます。再成形は単一マシンモードのトップレベルの論理ボリュームでのみ利用でき、論理ボリュームが使用されていない場合 (ファイルシステムでマウントされる場合など) にのみ利用できます (BZ#1191935、BZ#834579、BZ#1191978、BZ#1392947)。

デバイスマッパーのリニアデバイスが DAX に対応

Direct Access (DAX) サポートが dm-linear および dm-stripe ターゲットに追加されました。複数の Non-Volatile Dual In-line Memory Module (NVDIMM) デバイスを組み合わせて大規模な Persistent Memory (PMEM) ブロックデバイスを提供できます (BZ#1384648)。

libstoragemgmt がバージョン 1.4.0 にリベース

libstoragemgmt パッケージがアップストリームバージョン 1.4.0 にアップグレードされ、以前のバージョンに対してバグ修正および拡張機能が数多く追加されています。とくに、以下のライブラリーが追加されています。
  • ローカルディスクのシリアル番号のクエリー: lsm_local_disk_serial_num_get()/lsm.LocalDisk.serial_num_get()
  • ローカルディスクの LED ステータのスクエリー: lsm_local_disk_led_status_get()/lsm.LocalDisk.led_status_get()
  • ローカルディスクのリンク速度のクエリー: lsm_local_disk_link_speed_get()/lsm.LocalDisk.link_speed_get()
主なバグ修正は以下の通りです。
  • Dell PowerEdge RAID Controller (PERC) の megaraid プラグインが修正されました。
  • NVM Express (NVMe) ディスクのローカルディスクの回転速度のクエリーが修正されました。
  • ローカルディスククエリーでの lsmcli の正しくないエラー処理が修正されました。
  • すべての gcc コンパイルの警告が修正されました。
  • autoconf AC_OUTPUT マクロの旧式の使用法が修正されました (BZ#1403142)。

mpt3sas がバージョン 15.100.00.00 に更新

mpt3sas ストレージドライバーがバージョン 15.100.00.00 に更新され、以下の PCI ID を持つ新規デバイスのサポートが追加されました。
  • 0x1000:0x00AA
  • 0x1000:0x00AB
  • 0x1000:0x00AC
  • 0x1000:0x00AD
  • 0x1000:0x00AE
  • 0x1000:0x00AF (BZ#1306453)

lpfc ドライバーの lpfc_no_hba_reset モジュールパラメーターが利用可能に

今回の更新により、Emulex Fibre Channel Host Bus Adapter (HBA) の特定モデルの lpfc ドライバーが lpfc_no_hba_reset モジュールパラメーターを追加することにより強化されています。このパラメーターは SCSI エラー処理時にリセットされない HBA の 1 つ以上の 16 進の world-wide port number (WWPN) の一覧を受け入れます。
lpfc により、SCSI エラー処理時に HBA のポートで再設定されるポートを制御できるようになりました。また lpfc により、SCSI エラー処理時間の上限を表す eh_deadline パラメーターを設定できるようになりました (BZ#1366564)。

LVM が Veritas Dynamic Multi-Pathing システムを検出し、基になるデバイスパスに直接アクセスしなくなる

LVM を Veritas Dynamic Multi-Pathing と正常に連動させるには、設定ファイル/etc/lvm/lvm.conf のデバイスセクションで obtain_device_list_from_udev を 0 に設定する必要があります。これらの multi-pathed デバイスは標準の udev インターフェースで公開されないため、この設定がないと LVM はその存在を認識しません (BZ#1346280)。

libnvdimm カーネルサブシステムが PMEM の細分化に対応

Intel の Non-Volatile Dual In-line Memory Module (NVDIMM) ラベル仕様が複数の Persistent Memory (PMEM) Namespace をリージョンごとに設定できるように拡張されました (インターリーブ設定)。Red Hat Enterprise Linux 7.4 に同梱されるカーネルはこれらの新たな設定をサポートするよう変更されています。
細分化のサポートがない時点では、単一リージョンが単一のモードでのみ使用されていました ( pmemdevice dax、または sector)。今回の更新により、単一リージョンを細分化し、それぞれ独立して設定できるようになりました (BZ#1383827)。

multipathd が実行されていない場合の警告メッセージ

multipathd が実行されていない場合にマルチパスデバイスを作成したり、一覧表示する multipath コマンドを実行するとユーザーは警告メッセージを受信します。
multipathd が実行されていない場合、デバイスは失敗したパスを復元したり、デバイスのセットアップの変更に対応したりできません。multipathd デーモンにより、マルチパスデバイスがあり、multipathd が実行されていない場合に警告メッセージが出力されます (BZ#1359510)。

c ライブラリーインターフェースが multipathd に追加され、構造化された出力が可能になる

ユーザーは libdmmp ライブラリーを使用して multipathd から構造化情報を取得できるようになりました。multipathd から情報を取得する他のプログラムは、コマンドを実行したり結果を解析することなくこの情報を取得できます (BZ#1430097)。

新規の remove retries multipath 設定値

multipath が削除しようとしているマルチパスデバイスが一時的に使用中の場合、削除は失敗します。remove_retries 設定値を設定することにより、multipath コマンドが使用中のマルチパスデバイスの削除を試行する回数を制御することができます。デフォルト値は 0 であり、この場合 multipath は失敗した削除を再試行することはありません (BZ#1368211)。

新規の multipathd reset multipaths stats コマンド

multipath は 2 つの新規 multipathd コマンド、multipathd reset multipaths stats および multipathd reset multipath dev stats をサポートします。これらのコマンドは、すべてのデバイスまたは指定されたデバイスについて multipathd が追跡するデバイスの統計をリセットをそれぞれリセットします。これにより、ユーザーは、変更が加えた後にデバイス統計をリセットできます (BZ#1416569)。

新規の disable_changed_wwids mulitpath 設定パラメーター

multipath は新規の multipath.conf デフォルトのセクションパラメーター disable_changed_wwids をサポートします。これを設定することにより、multipathd に使用中のパスデバイスが wwid を変更する時を認識させ、その wwid が直前の値に戻るまでパスデバイスへのアクセスを無効にします。
scsi デバイスの wwid が変更される場合、これはデバイスが異なる LUN に再マップされたことを示している可能性があります。これが scsi デバイスの使用中に生じると、データが破損する可能性があります。disable_changed_wwids パラメーターを設定すると、scsi デバイスがその wwid を変更する際にユーザーに警告が送信されます。多くの場合、multipathd は、パスデバイスが元の LUN からマップ解除されるとすぐにそのパスデバイスへのアクセスを無効にするため、破損する可能性がなくなります。ただし、multipathd は scsi デバイスが再マップされる前に変更を常に認識する訳ではありません。つまり、これは破損の可能性がゼロではないことを意味します。現時点で、使用中の scsi デバイスの再マップはサポートされていません (BZ#1169168)。

HPE 3PAR アレイの組み込み設定が更新される

3PAR アレイの組み込み設定は no_path_retry を 12 に設定します (BZ#1279355)。

NFINIDAT InfiniBox.* デバイスの組み込み設定が追加される

multipath は NFINIDAT InfiniBox.* デバイスの自動設定を実行します (BZ#1362409)。

device-mapper-multipathmax_sectors_kb 設定パラメーターに対応

今回の更新で、device-mapper-multipathmax_sectors_kb パラメーターを multipath.conf ファイルのデフォルト、デバイス、およびマルチパスセクションでサポートするようになりました。max_sectors_kb パラメーターを使用すると、マルチパスデバイスの初回アクティベート前にマルチパスデバイスのすべての基本的なパスで max_sectors_kb デバイスキューパラメーターを特定の値に設定することができます。
マルチパスデバイスの作成時には、デバイスはパスデバイスから max_sectors_kb 値を継承します。手動でこの値をマルチパスデバイス向けに高めたり、パスデバイス向けにこの値を低くすると、マルチパスデバイスはパスデバイスが許可するよりも大きな I/O 操作を作成する場合があります。
max_sectors_kb multipath.conf パラメーターを使用すると、パスデバイス上にマルチパスデバイスを作成する前にこれらの値が容易に設定でき、無効なサイズの I/O 操作が渡されることを回避できます (BZ#1394059)。

新規のdetect_checker multipath 設定パラメーター

VNX2 などの一部のデバイスをオプションとして ALUA モードで設定できます。このモードでは、ALUA 以外のモードとは異なる path_checker および prioritizer を使用する必要があります。multipath は multipath.conf デフォルトおよびデバイスセクションで detect_checker パラメーターをサポートします。これが設定されている場合、multipath はデバイスが ALUA をサポートするかどうかを検知し、サポートする場合は設定された path_checker を上書きし、代わりに TUR チェッカーを使用します。detect_checker オプションは、オプションの ALUA モードが設定されたデバイスが、そのモードの種類を問わず正常に自動設定されるようにします (BZ#1372032)。

multipath で Nimble Storage デバイスの組み込みデフォルト設定が使用される

multipath のデフォルトハードウェアテーブルには Nimble Storage アレイのエントリーが含まれるようになりました (BZ#1406226)。

LVM が RAID 論理ボリュームのサイズの縮小に対応

Red Hat Enterprise Linux 7.4 の時点で、lvreduce または lvresize コマンドを使用して RAID 論理ボリュームのサイズを縮小することができます (BZ#1394048)。

iprutils がバージョン 2.4.14 にリベース

iprutils パッケージがアップストリームバージョン 2.4.14 にアップグレードされました。以前のバージョンに対してバグ修正および機能拡張が数多く追加されています。
  • Endian 変換 (endian swapped) device_id は以前のバージョンとの互換性を持つようになりました。
  • ベアメタルモードの VSET ライトキャッシュが許可されています。
  • デュアルアダプターセットアップでの RAIDS の作成が修正されました。
  • 単一アダプター設定の再ビルドの検証がデフォルトで無効にされます (BZ#1384382)。

mdadm がバージョン 4.0 にリベース

mdadm パッケージがアップストリームバージョン 4.0 にアップグレードされ、以前のバージョンに対するバグ修正や機能強化が数多く追加されています。とくに、今回の更新により Intel Matrix Storage Manager (IMSM) メタデータの不良ブロック管理サポートが追加されました。今回の更新に含まれる機能は外部のメタデータ形式でサポートされ、Red Hat は Intel Rapid Storage Technology enterprise (Intel RSTe) ソフトウェアスタックを引き続きサポートします (BZ#1380017)。

LVM が dm-cache メタデータバージョン 2 に対応

LVM/DM キャッシュが大幅に改善されました。大規模なキャッシュサイズがサポートされ、変更されるワークロードへの適応性が強化し、起動およびシャットダウン時間が大幅に改善され、全体のパフォーマンスが向上しました。dm-cache メタデータ形式のバージョン 2 が、LVM でキャッシュ論理ボリュームを作成する際のデフォルトになります。バージョン 1 は以前に作成された LVM キャッシュ論理ボリュームで引き続きサポートされます。バージョン 2 へのアップグレードには、古いキャッシュ層の削除や新規キャッシュ層の作成が必要になります (BZ#1436748)。

指定ハードウェアでの DIF/DIX (T10 PI) のサポート

SCSI T10 DIF/DIX は、ハードウェアベンダーがこれを認定し、特定の HBA およびストレージアレイの設定を完全にサポートしている場合に Red Hat Enterprise Linux 7.4 で完全にサポートされます。DIF/DIX は他の設定ではサポートされず、ブートデバイスでの使用もサポートされず、さらに仮想化ゲストでもサポートされません。
現時点では、以下のベンダーがこのサポートを提供しています。
FUJITSU は以下の組み合わせで DIF と DIX をサポート:
EMULEX 16G FC HBA:
  • EMULEX LPe16000/LPe16002、10.2.254.0 BIOS、10.4.255.23 FW と
  • FUJITSU ETERNUS DX100 S3、DX200 S3、DX500 S3、DX600 S3、DX8100 S3、DX8700 S3、DX8900 S3、DX200F、DX60 S3、AF250、AF650
QLOGIC 16G FC HBA:
  • QLOGIC QLE2670/QLE2672、3.28 BIOS、8.00.00 FW と
  • FUJITSU ETERNUS DX100 S3、DX200 S3、DX500 S3、DX600 S3、DX8100 S3、DX8700 S3、DX8900 S3、DX200F、DX60 S3
T10 DIX にはディスクブロックでのチェックサム生成と検証を行う他のソフトウェアまたはデータベースが必要になることに注意してください。現在対応している Linux ファイルシステムの中でこの機能が備わっているファイルシステムはありません。
EMC は以下の組み合わせで DIF をサポート:
EMULEX 8G FC HBA:
  • ファームウェア 2.01a10 以降の LPe12000-E および LPe12002-E と
  • EMC VMAX3 Series with Enginuity 5977、EMC Symmetrix VMAX Series with Enginuity 5876.82.57 以降
EMULEX 16G FC HBA:
  • ファームウェア 10.0.803.25 以降の LPe16000B-E および LPe16002B-E と
  • EMC VMAX3 Series with Enginuity 5977、EMC Symmetrix VMAX Series with Enginuity 5876.82.57 以降
QLOGIC 16G FC HBA:
  • QLE2670-E-SP および QLE2672-E-SP と
  • EMC VMAX3 Series with Enginuity 5977、EMC Symmetrix VMAX Series with Enginuity 5876.82.57 以降
最新の状況については、ハードウェアベンダーのサポート情報を確認してください。
他の HBA およびストレージアレイに関する DIF/DIX のサポートは引き続きテクノロジービューになります(BZ#1457907)。

dmstats ファシリティーで変更されるファイルの統計の追跡が可能になる

以前のバージョンでは、dmstats ファシリティーはサイズが変更されていないファイルの統計を報告できました。現時点では、ファイル (またはファイルにある可能性のあるファイルのホール) のサイズが変更された場合でも、ファイルの変更を確認したり、マッピングを更新してファイルの I/O を追跡できるようになりました (BZ#1378956)。