Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

EシリーズのLinuxホストでNVMe over FCのフェイルオーバーを設定する

共同作成者 netapp-driley netapp-jsnyder netapp-jolieg NetAppZacharyWambold Jack-Patters

ストレージアレイへのパスを冗長化するには、フェイルオーバーを実行するようにホストを設定します。

作業を開始する前に

必要なパッケージをシステムにインストールする必要があります。

  • Red Hat ( RHEL )ホストの場合、パッケージがインストールされていることを確認するには、「 rpm -q device-mapper-multipath 」を実行します

  • SLES ホストの場合 'rpm -q multipath-tools' を実行してパッケージがインストールされていることを確認します

    SLES 12 use Device Mapper Multipath (DMMP) for multipathing when using NVMe over Fibre Channel. RHEL 8, RHEL 9, RHEL 10, SLES 15 and SLES 16 use a built-in Native NVMe Failover. Depending on which OS you are running, some additional configuration of multipath is required to get it running properly.

SLES12のデバイスマッパーマルチパス(DMMP)の有効化

デフォルトでは、SLESのDM-MPは無効になっています。以下の手順で、ホスト上でDM-MPコンポーネントを有効にします。

手順
  1. /etc/multipath.conf ファイルの devices セクションに、 NVMe E シリーズデバイスのエントリを次のように追加します。

    devices {
            device {
                    vendor "NVME"
                    product "NetApp E-Series*"
                    path_grouping_policy group_by_prio
                    failback immediate
                    no_path_retry 30
            }
    }
  2. システム起動時に起動するように「マルチパス」を設定します。

    # systemctl enable multipathd
  3. 現在実行されていない場合は、「マルチパス」を開始します。

    # systemctl start multipathd
  4. 「マルチパス」のステータスを確認して、アクティブで実行中であることを確認します。

    # systemctl status multipathd

RHEL 8用のネイティブのNVMeマルチパスを設定します

このタスクについて

ネイティブの NVMe マルチパスは、 RHEL 8 ではデフォルトで無効になっており、以下の手順で有効にする必要があります。

手順
  1. ネイティブの NVMe マルチパスをオンにする「 m odprobe 」ルールを設定します。

    # echo "options nvme_core multipath=y" >> /etc/modprobe.d/50-nvme_core.conf
  2. 新しい modprobe パラメータを使用して 'initramfs' を再作成します

    # dracut -f
  3. サーバをリブートして、ネイティブの NVMe マルチパスを有効にします

    # reboot
  4. ホストのブート後にネイティブの NVMe マルチパスが有効になっていることを確認します。

    # cat /sys/module/nvme_core/parameters/multipath
    1. コマンド出力が「 N 」の場合、ネイティブ NVMe マルチパスは無効のままです。

    2. コマンド出力が「 Y 」の場合は、ネイティブ NVMe マルチパスが有効になり、検出した NVMe デバイスでこのコマンドが使用されます。

メモ RHEL 9およびSLES 15では、ネイティブNVMeマルチパスはデフォルトで有効になっており、追加の設定は不要です。

NVMe I/O ポリシーを設定する

このタスクについて

Linux NVMe ネイティブマルチパスはデフォルトで numa I/O ポリシーに設定される場合があります。Eシリーズ/EFシリーズの NVMe-over-Fabrics 構成では、推奨される I/O ポリシーは `round-robin`であり、これにより利用可能なすべてのパスに I/O が均等に分散されます。

手順
  1. 現在のNVMe I/Oポリシーを確認します:

    # cat /sys/module/nvme_core/parameters/iopolicy
    numa
  2. 次のいずれかの方法を使用して、 round-robin I/O ポリシーを設定します:

    • 永続的(推奨) — udevルールファイルを作成します:

      <code>/etc/udev/rules.d/71-nvme-io-policy.rules</code>
      ACTION=="add|change", SUBSYSTEM=="nvme-subsystem", ATTR{iopolicy}="round-robin"

      次に、ルールを再読み込みして適用します。

    udevadm control --reload
    udevadm trigger --subsystem-match=nvme-subsystem
    • 起動時のグローバル設定 — 以下のカーネル パラメータをブートローダーの設定に追加してください:

      nvme_core.iopolicy=round-robin
    • 非永続的(オンライン、I/Oの中断なし) — 再起動せずにすぐに適用します:

      echo "round-robin" > /sys/class/nvme-subsystem/nvme-subsys0/iopolicy
      メモ この設定は再起動後も保持されません。