Košík je prázdný

V dnešním světě, kde se rychlost a efektivita přenosu dat stávají stále důležitějšími, se InfiniBand a Remote Direct Memory Access (RDMA) ukazují jako klíčové technologie pro vysokorychlostní síťové přenosy. Tyto technologie umožňují extrémně rychlý přenos dat mezi počítači bez významného zatížení CPU, což je ideální pro náročné výpočetní úlohy a data-intenzivní aplikace. V tomto článku se podíváme na to, jak nakonfigurovat operační systém CentOS 7 pro podporu RDMA přes InfiniBand.

Příprava systému

Než začnete s konfigurací, ujistěte se, že váš systém je aktualizovaný a že máte nainstalované všechny potřebné balíčky. Spuštěním následujících příkazů můžete systém aktualizovat a nainstalovat potřebné závislosti:

sudo yum update
sudo yum groupinstall "Development Tools"
sudo yum install rdma-core libibverbs-utils perftest infiniband-diags

Instalace a konfigurace ovladačů InfiniBand

Pro plnou funkčnost RDMA přes InfiniBand je nutné nainstalovat a správně nakonfigurovat ovladače InfiniBand. CentOS 7 obvykle obsahuje ovladače InfiniBand v základním balíčku, ale je důležité ověřit, že jsou správně nainstalovány a načteny.

  1. Ověření načtení modulu InfiniBand:

    lsmod | grep ib_
    

    Pokud vidíte výstup, znamená to, že ovladače InfiniBand jsou načteny.

  2. Síťová rozhraní InfiniBand se obvykle označují jako ib0, ib1, atd. Konfiguraci těchto rozhraní lze provést v souborech nacházejících se v /etc/sysconfig/network-scripts/. Pro statickou IP konfiguraci vytvořte soubor s názvem ifcfg-ib0 s následujícím obsahem:
    TYPE=InfiniBand
    BOOTPROTO=none
    ONBOOT=yes
    IPADDR=192.168.1.1
    NETMASK=255.255.255.0
    ​
  3. Po dokončení konfigurace restartujte síťové služby pomocí příkazu:
    systemctl restart network
    ​

 

Konfigurace RDMA

RDMA komunikace vyžaduje, aby byly na obou koncích komunikačního kanálu správně nakonfigurovány. To zahrnuje nastavení Subnet Managera na InfiniBand síti, který může být spuštěn na jakémkoli uzlu v síti. Pro malé a střední nasazení je obvyklé použít OpenSM:

sudo yum install opensm
sudo systemctl enable opensm
sudo systemctl start opensm

Ujistěte se, že je Subnet Manager aktivní a běží, což můžete ověřit pomocí příkazu systemctl status opensm.

Testování RDMA přenosu

Po dokončení konfigurace je důležité ověřit, že RDMA přenos funguje správně. To lze provést pomocí nástroje ibv_devinfo k ověření stavu InfiniBand zařízení a ibping k testování konektivity:

  1. Ověření stavu InfiniBand zařízení:
    ibv_devinfo
    ​

    Tento příkaz by měl zobrazit informace o InfiniBand zařízení, včetně jeho stavu, což by mělo být PORT_ACTIVE pokud je vše správně nastaveno.

  2. Testování konektivity pomocí ibping: Na jednom uzlu spusťte ibping v serverovém módu:
    ibping -S
    ​

    Na druhém uzlu spusťte ibping v klientovém módu, přičemž jako argument použijte LID (Local Identifier) prvního uzlu:

    ibping -G <LID_prvního_uzlu>
    

    Úspěšný ping potvrdí, že RDMA komunikace mezi dvěma uzly funguje.

 

Konfigurace RDMA přes InfiniBand na systému CentOS 7 umožňuje využití vysokorychlostních síťových přenosů, které jsou klíčové pro náročné výpočetní úlohy a data-intenzivní aplikace. Díky RDMA mohou aplikace přistupovat k paměti vzdáleného počítače bez zásahu CPU, což vede k výraznému zvýšení výkonu a snížení latence. Postup, který byl popsán v tomto článku, by měl posloužit jako základní průvodce pro nastavení a testování RDMA přes InfiniBand na vašem systému CentOS 7. Je důležité si uvědomit, že každé prostředí může vyžadovat specifické úpravy konfigurace, proto je vždy doporučeno provádět další testování a optimalizaci pro vaše konkrétní potřeby.