Skip to main content
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Richten Sie NVMe over InfiniBand auf der Host-Seite ein

Beitragende

Die Konfiguration eines NVMe-Initiators in einer InfiniBand-Umgebung umfasst die Installation und Konfiguration der infiniband-, nvme-cli- und rdma-Pakete, die Konfiguration von Initiator-IP-Adressen und das Einrichten der NVMe-of-Ebene auf dem Host.

Bevor Sie beginnen

Sie müssen das neueste kompatible Betriebssystem RHEL 7, RHEL 8, RHEL 9, SUSE Linux Enterprise Server 12 oder 15 Service Pack ausführen. Siehe "NetApp Interoperabilitäts-Matrix-Tool" Für eine vollständige Liste der aktuellen Anforderungen.

Schritte
  1. installation der rdma-, nvme-cli- und infiniband-Pakete:

    SLES 12 oder SLES 15

    # zypper install infiniband-diags
    # zypper install rdma-core
    # zypper install nvme-cli

    RHEL 7, RHEL 8 ODER RHEL 9

    # yum install infiniband-diags
    # yum install rdma-core
    # yum install nvme-cli
  2. Installieren Sie für RHEL 8 oder RHEL 9 Netzwerkskripte:

    RHEL 8

    # yum install network-scripts

    RHEL 9

    # yum install NetworkManager-initscripts-updown
  3. Aktivieren Sie für RHEL 7 ipoib. Bearbeiten Sie die Datei /etc/rdma/rdma.conf und ändern Sie den Eintrag zum Laden ipoib:

    IPOIB_LOAD=yes
  4. Holen Sie den Host-NQN ab, mit dem der Host für ein Array konfiguriert werden kann.

    # cat /etc/nvme/hostnqn
  5. Überprüfen Sie, ob die IB-Port-Links aktiviert sind und der Status = aktiv:

    # ibstat
    CA 'mlx4_0'
            CA type: MT4099
            Number of ports: 2
            Firmware version: 2.40.7000
            Hardware version: 1
            Node GUID: 0x0002c90300317850
            System image GUID: 0x0002c90300317853
            Port 1:
                    State: Active
                    Physical state: LinkUp
                    Rate: 40
                    Base lid: 4
                    LMC: 0
                    SM lid: 4
                    Capability mask: 0x0259486a
                    Port GUID: 0x0002c90300317851
                    Link layer: InfiniBand
            Port 2:
                    State: Active
                    Physical state: LinkUp
                    Rate: 56
                    Base lid: 5
                    LMC: 0
                    SM lid: 4
                    Capability mask: 0x0259486a
                    Port GUID: 0x0002c90300317852
                    Link layer: InfiniBand
  6. Richten Sie IPv4-IP-Adressen an den ib-Ports ein.

    SLES 12 oder SLES 15

    Erstellen Sie die Datei /etc/sysconfig/Network/ifcfg-ib0 mit folgendem Inhalt.

    BOOTPROTO='static'
    BROADCAST=
    ETHTOOL_OPTIONS=
    IPADDR='10.10.10.100/24'
    IPOIB_MODE='connected'
    MTU='65520'
    NAME=
    NETWORK=
    REMOTE_IPADDR=
    STARTMODE='auto'

    Erstellen Sie dann die Datei /etc/sysconfig/Network/ifcfg-ib1:

    BOOTPROTO='static'
    BROADCAST=
    ETHTOOL_OPTIONS=
    IPADDR='11.11.11.100/24'
    IPOIB_MODE='connected'
    MTU='65520'
    NAME=
    NETWORK=
    REMOTE_IPADDR=
    STARTMODE='auto'

    RHEL 7 oder RHEL 8

    Erstellen Sie die Datei /etc/sysconfig/Network-scripts/ifcfg-ib0 mit folgendem Inhalt.

    CONNECTED_MODE=no
    TYPE=InfiniBand
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=static
    IPADDR='10.10.10.100/24'
    DEFROUTE=no
    IPV4=FAILURE_FATAL=yes
    IPV6INIT=no
    NAME=ib0
    ONBOOT=yes

    Erstellen Sie dann die Datei /etc/sysconfig/Network-scripts/ifcfg-ib1:

    CONNECTED_MODE=no
    TYPE=InfiniBand
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=static
    IPADDR='11.11.11.100/24'
    DEFROUTE=no
    IPV4=FAILURE_FATAL=yes
    IPV6INIT=no
    NAME=ib1
    ONBOOT=yes

    RHEL 9

    Verwenden Sie die nmtui Werkzeug zum Aktivieren und Bearbeiten einer Verbindung. Unten sehen Sie eine Beispieldatei /etc/NetworkManager/system-connections/ib0.nmconnection Das Tool generiert Folgendes:

    [connection]
    id=ib0
    uuid=<unique uuid>
    type=infiniband
    interface-name=ib0
    
    [infiniband]
    mtu=4200
    
    [ipv4]
    address1=10.10.10.100/24
    method=manual
    
    [ipv6]
    addr-gen-mode=default
    method=auto
    
    [proxy]

    Unten sehen Sie eine Beispieldatei /etc/NetworkManager/system-connections/ib1.nmconnection Das Tool generiert Folgendes:

    [connection]
    id=ib1
    uuid=<unique uuid>
    type=infiniband
    interface-name=ib1
    
    [infiniband]
    mtu=4200
    
    [ipv4]
    address1=11.11.11.100/24'
    method=manual
    
    [ipv6]
    addr-gen-mode=default
    method=auto
    
    [proxy]
  7. Aktivieren Sie die ib Schnittstelle:

    # ifup ib0
    # ifup ib1
  8. Überprüfen Sie die IP-Adressen, die Sie für die Verbindung mit dem Array verwenden werden. Führen Sie diesen Befehl für beide aus ib0 Und ib1:

    # ip addr show ib0
    # ip addr show ib1

    Wie im Beispiel unten gezeigt, die IP-Adresse für ib0 Ist 10.10.10.255.

    10: ib0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65520 qdisc pfifo_fast state UP group default qlen 256
        link/infiniband 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:c9:03:00:31:78:51 brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
        inet 10.10.10.255 brd 10.10.10.255 scope global ib0
           valid_lft forever preferred_lft forever
        inet6 fe80::202:c903:31:7851/64 scope link
           valid_lft forever preferred_lft forever

    Wie im Beispiel unten gezeigt, die IP-Adresse für ib1 Ist 11.11.11.255.

    10: ib1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65520 qdisc pfifo_fast state UP group default qlen 256
        link/infiniband 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:c9:03:00:31:78:51 brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff
        inet 11.11.11.255 brd 11.11.11.255 scope global ib0
           valid_lft forever preferred_lft forever
        inet6 fe80::202:c903:31:7851/64 scope link
           valid_lft forever preferred_lft forever
  9. Legen Sie auf dem Host den NVMe-of-Layer fest. Erstellen Sie die folgenden Dateien unter /etc/modules-load.d/, um die zu laden nvme_rdma Kernel-Modul und stellen Sie sicher, dass das Kernel-Modul immer eingeschaltet ist, auch nach einem Neustart:

    # cat /etc/modules-load.d/nvme_rdma.conf
      nvme_rdma
  10. Starten Sie den Host neu.

    Um die zu überprüfen nvme_rdma Kernel-Modul ist geladen, führen Sie diesen Befehl aus:

    # lsmod | grep nvme
    nvme_rdma              36864  0
    nvme_fabrics           24576  1 nvme_rdma
    nvme_core             114688  5 nvme_rdma,nvme_fabrics
    rdma_cm               114688  7 rpcrdma,ib_srpt,ib_srp,nvme_rdma,ib_iser,ib_isert,rdma_ucm
    ib_core               393216  15 rdma_cm,ib_ipoib,rpcrdma,ib_srpt,ib_srp,nvme_rdma,iw_cm,ib_iser,ib_umad,ib_isert,rdma_ucm,ib_uverbs,mlx5_ib,qedr,ib_cm
    t10_pi                 16384  2 sd_mod,nvme_core