Installing the SPDK on the Target Server

Getting Started with Napatech Link-Storage™ Software

Platform
Napatech IPU
Content Type
Getting Started
Capture Software Version
Link-Storage™ Software 1.0

Use this information to configure huge pages, assign IP addresses and install the SPDK on the target server.

About this task

Note: The following prompts are used to indicate which part of the system to run the provided commands on.
  • soc#: The SoC on the IPU.
  • host#: The server where the IPU is installed.
  • target#: The remote server with storage disks.

Procedure

  1. On the target server, allow traffic over specified ports or stop firewalld on the target server.
    To stop firewalld, run the following command.
    systemctl stop firewalld
  2. Configure huge pages.
    target# grubby --update-kernel=ALL --args=default_hugepagesz=2M
    target# grubby --update-kernel=ALL --args=hugepagesz=2M
    target# grubby --update-kernel=ALL --args=hugepages=10240
    target# grubby --info=ALL
    target# reboot
    This require a system restart to take effect, and the configuration is persistent across system restarts.

    For further information about configuring huge pages on Linux hosts, refer to the Linux hugetlbfs guide.

    For more information on DPDK huge pages, refer to the documentation at: https://dpdk-guide.gitlab.io/dpdk-guide/setup/hugepages.html

  3. Verify the allocated huge pages memory.
    /proc/meminfo provides information about huge pages usage in the system.
    target# cat /proc/meminfo |grep Huge
    An output example:
    AnonHugePages:    552960 kB
    ShmemHugePages:        0 kB
    FileHugePages:         0 kB
    HugePages_Total:   10240
    HugePages_Free:    10240
    HugePages_Rsvd:        0
    HugePages_Surp:        0
    Hugepagesize:       2048 kB
    Hugetlb:        20971520 kB
    In this output example, Hugepagesize indicates that each huge page size is 2048 kB (2 MB), and HugePages_Total indicates that there are a total of 10240 huge pages available.
  4. On the target server, assign IP addresses.
    For example:
    target# ip link set down dev enp13s0f0
    target# ip addr add 172.168.1.2/24 enp13s0f0
    target# ip link set up dev enp13s0f0
    
    target# ip link set down dev enp13s0f0
    target# ip addr add 172.168.2.2/24 enp13s0f1
    target# ip link set up dev enp13s0f1
  5. On the target server, build the SPDK.
    For example:
    target# git clone https://github.com/spdk/spdk
    target# cd spdk
    target# git submodule update --init
    target# scripts/pkgdep.sh
    target# ./configure
    target# make
    target# ./test/unit/unittest.sh