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

ONTAP を使用した Oracle Linux 7.7 の NVMe/FC ホスト構成

共同作成者

サポート性

ONTAP 9.6 以降では、次のバージョンの Oracle Linux で NVMe/FC がサポートされます

  • OL 7.7

    OL 7.7 ホストは、同じファイバチャネルイニシエータアダプタポートを介して NVMe と SCSI の両方のトラフィックを実行できます。を参照してください "Hardware Universe" サポートされる FC アダプタおよびコントローラの一覧を表示するには、を参照してください。

    サポートされる構成の最新のリストについては、を参照してください "NetApp Interoperability Matrix を参照してください"

メモ このドキュメントの設定を使用して、に接続するクラウドクライアントを設定できます "Cloud Volumes ONTAP" および "ONTAP 対応の Amazon FSX"

既知の制限

  • NVMe/FC 標準の自動接続スクリプトは、 nvme-CLI パッケージでは使用できません。HBA ベンダーが提供する外部自動接続スクリプトを使用できます。

  • デフォルトでは、ラウンドロビンによるロードバランシングは有効になっていません。この機能を有効にするには、 udev ルールを記述する必要があります。ステップは、 OL 7.7 での NVMe/FC の有効化のセクションに記載されています。

  • NVMe-oFプロトコルを使用したSANブートは現在サポートされていません。

OL 7.7 で NVMe を有効にする

  1. デフォルトの Oracle Linux 7.7 カーネルがインストールされていることを確認します。

  2. ホストを再起動し、指定した OL 7.7 カーネルで起動することを確認します。

    # uname -r
    4.14.35-1902.9.2.el7uek
  3. nvme-cli-1.8.1-3.el7 パッケージにアップグレードします。

    # rpm -qa|grep nvme-cli
    nvme-cli-1.8.1-3.el7.x86_64
  4. 以下の文字列を個別の udev ルールとして '/lib/udev/rules.d/ 71-nvme-iopolicy-netapp-ONTAP.rules` に追加しますこれにより、 NVMe マルチパスでラウンドロビンによるロードバランシングが有効になります。

    # Enable round-robin for NetApp ONTAP
    ACTION==”add”, SUBSYSTEM==”nvme-subsystem”, ATTR{model}==”NetApp ONTAP Controller”, ATTR{iopolicy}=”round-robin
  5. OL 7.7 ホストで、 /etc/nvme/hostnqn' でホスト NQN 文字列を確認し、 ONTAP アレイの対応するサブシステムのホスト NQN 文字列に一致することを確認します。

    # cat /etc/nvme/hostnqn
    nqn.2014-08.org.nvmexpress:uuid:75953f3b-77fe-4e03-bf3c-09d5a156fbcd
    *> vserver nvme subsystem host show -vserver vs_nvme_10
    Vserver Subsystem Host NQN
    ------- --------- -------------------------------------- -----------
    ol_157_nvme_ss_10_0
    nqn.2014-08.org.nvmexpress:uuid:75953f3b-77fe-4e03-bf3c-09d5a156fbcd
メモ ホストの NQN 文字列が一致しない場合は、 vserver modify コマンドを使用して、対応する ONTAP アレイサブシステム上のホストの NQN 文字列を、ホストの /etc/nvme/hostnqn のホスト NQN 文字列に一致するように更新します。
  1. ホストをリブートします。

Broadcom FC アダプタを NVMe/FC 用に設定します

  1. サポートされているアダプタを使用していることを確認します。サポートされているアダプタの最新のリストについては、を参照してください "NetApp Interoperability Matrix を参照してください"

    # cat /sys/class/scsi_host/host*/modelname
    LPe32002-M2
    LPe32002-M2
    # cat /sys/class/scsi_host/host*/modeldesc
    Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
    Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
  2. Broadcom outbox 自動接続スクリプトパッケージをコピーしてインストールします。

    # rpm -ivh nvmefc-connect-12.4.65.0-1.noarch.rpm
  3. ホストをリブートします。

  4. 推奨される Broadcom lpfc ファームウェア、ネイティブインボックスドライバ、および outbox 自動接続パッケージバージョンを使用していることを確認します。サポートされているバージョンの一覧については、を参照してください "NetApp Interoperability Matrix を参照してください"

    # cat /sys/class/scsi_host/host*/fwrev
    12.4.243.17, sil-4.2.c
    12.4.243.17, sil-4.2.c
    
    # cat /sys/module/lpfc/version
    0:12.0.0.10
    
    # rpm -qa | grep nvmefc
    nvmefc-connect-12.4.65.0-1.noarch
  5. lpfc_enable_fc4_type が 3 に設定されていることを確認します

    # cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type
    3
  6. イニシエータポートが動作していることを確認します。

    # cat /sys/class/fc_host/host*/port_name
    0x10000090fae0ec61
    0x10000090fae0ec62
    # cat /sys/class/fc_host/host*/port_state
    Online
    Online
  7. NVMe/FC イニシエータポートが有効になっており、実行中で、ターゲット LIF を認識できることを確認します。

    # cat /sys/class/scsi_host/host*/nvme_info
    NVME Initiator Enabled
    XRI Dist lpfc0 Total 6144 NVME 2947 SCSI 2977 ELS 250
    NVME LPORT lpfc0 WWPN x10000090fae0ec61 WWNN x20000090fae0ec61 DID x012000 ONLINE
    NVME RPORT WWPN x202d00a098c80f09 WWNN x202c00a098c80f09 DID x010201 TARGET DISCSRVC ONLINE
    NVME RPORT WWPN x203100a098c80f09 WWNN x202c00a098c80f09 DID x010601 TARGET DISCSRVC ONLINE
    NVME Statistics
    …

NVMe/FC を検証しています

  1. 以下の NVMe/FC 設定を確認してください。

    # cat /sys/module/nvme_core/parameters/multipath
    Y
    
    # cat /sys/class/nvme-subsystem/nvme-subsys*/model
    NetApp ONTAP Controller
    NetApp ONTAP Controller
    
    # cat /sys/class/nvme-subsystem/nvme-subsys*/iopolicy
    round-robin
    round-robin
  2. ネームスペースが作成されたことを確認します。

    # nvme list
    Node SN Model Namespace Usage Format FW Rev
    ---------------- -------------------- -----------------------
    /dev/nvme0n1 80BADBKnB/JvAAAAAAAC NetApp ONTAP Controller 1 53.69 GB / 53.69 GB 4 KiB + 0 B FFFFFFFF
  3. ANA パスのステータスを確認します。

    # nvme list-subsys/dev/nvme0n1
    Nvme-subsysf0 – NQN=nqn.1992-08.com.netapp:sn.341541339b9511e8a9b500a098c80f09:subsystem.ol_157_nvme_ss_10_0
    \
    +- nvme0 fc traddr=nn-0x202c00a098c80f09:pn-0x202d00a098c80f09 host_traddr=nn-0x20000090fae0ec61:pn-0x10000090fae0ec61 live optimized
    +- nvme1 fc traddr=nn-0x207300a098dfdd91:pn-0x207600a098dfdd91 host_traddr=nn-0x200000109b1c1204:pn-0x100000109b1c1204 live inaccessible
    +- nvme2 fc traddr=nn-0x207300a098dfdd91:pn-0x207500a098dfdd91 host_traddr=nn-0x200000109b1c1205:pn-0x100000109b1c1205 live optimized
    +- nvme3 fc traddr=nn-0x207300a098dfdd91:pn-0x207700a098dfdd91 host traddr=nn-0x200000109b1c1205:pn-0x100000109b1c1205 live inaccessible
  4. ONTAP デバイス用ネットアッププラグインを確認します。

    # nvme netapp ontapdevices -o column
    Device   Vserver  Namespace Path             NSID   UUID   Size
    -------  -------- -------------------------  ------ ----- -----
    /dev/nvme0n1   vs_nvme_10       /vol/rhel_141_vol_10_0/ol_157_ns_10_0    1        55baf453-f629-4a18-9364-b6aee3f50dad   53.69GB
    
    # nvme netapp ontapdevices -o json
    {
       "ONTAPdevices" : [
       {
            Device" : "/dev/nvme0n1",
            "Vserver" : "vs_nvme_10",
            "Namespace_Path" : "/vol/rhel_141_vol_10_0/ol_157_ns_10_0",
             "NSID" : 1,
             "UUID" : "55baf453-f629-4a18-9364-b6aee3f50dad",
             "Size" : "53.69GB",
             "LBA_Data_Size" : 4096,
             "Namespace_Size" : 13107200
        }
    ]

Broadcom NVMe/FCテノ1MBノI/Oサイスノユウコウカ

ONTAPは、Identify ControllerデータでMDT(MAX Data転送サイズ)を8と報告します。つまり、I/O要求の最大サイズは1MBまでです。ただし、Broadcom NVMe/FCホストに対する1MBの問題I/O要求には、を増やす必要があります lpfc の値 lpfc_sg_seg_cnt パラメータを256に設定します(デフォルト値の64から)。

手順
  1. lpfc_sg_seg_cnt パラメータを 256 に設定します

    # cat /etc/modprobe.d/lpfc.conf
    options lpfc lpfc_sg_seg_cnt=256
  2. 「 racut-f 」コマンドを実行し、ホストを再起動します。

  3. lpfc_sg_seg_cnt' が 256 であることを確認します

    # cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt
    256
メモ これはQlogic NVMe/FCホストには該当しません。

lpfc詳細ログ

NVMe/FC用のLPFCドライバを設定します。

手順
  1. を設定します lpfc_log_verbose NVMe/FCイベントをログに記録するためのドライバ設定は次のいずれかです。

    #define LOG_NVME 0x00100000 /* NVME general events. */
    #define LOG_NVME_DISC 0x00200000 /* NVME Discovery/Connect events. */
    #define LOG_NVME_ABTS 0x00400000 /* NVME ABTS events. */
    #define LOG_NVME_IOERR 0x00800000 /* NVME IO Error events. */
  2. 値を設定したら、を実行します dracut-f コマンドを実行し、ホストをリブートします。

  3. 設定を確認します。

    # cat /etc/modprobe.d/lpfc.conf options lpfc lpfc_log_verbose=0xf00083
    
    # cat /sys/module/lpfc/parameters/lpfc_log_verbose 15728771