Preparing the Host and the Client

Getting Started with Napatech Link-Security™ Software

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

Use this information to install required tools on the host and the client.

Before you begin

Make sure that you have:
  • Disabled the firewall on the host and the client.
    systemctl disable --now firewalld

About this task

Note: The following prompts are used to indicate which part of the system to run the provided commands on.
  • host#: The server where the IPU is installed.
  • client#: The remote server where user traffic is generated.

Procedure

  1. On the host, install nginx.

    It is required to run two nginx instances on the host: one as a web server, the other as a proxy. When the test script is executed, the web server script http_obj_gen.py is copied using scp from the test server to the destination path /usr/share/nginx/ on the host. The test script ensures that the correct nginx configuration is applied. Various configuration files are stored in the nginx/ directory.

    Install nginx using the following command.
    host# dnf install nginx
  2. Check the installed nginx version.
    host# nginx -v
    nginx version: nginx/1.24.0
    To ensure compatibility with the nginx configuration, make sure you have nginx version 1.24 or newer.
    If the installed version is older than 1.24, install the latest version as follows.
    # Remove the existing version.
    host# dnf remove nginx
    
    # Install prerequisites.
    host# yum install yum-utils
    
    # Create a file.
    host# vim /etc/yum.repos.d/nginx.repo
    Copy and paste the following content into the file to set up the yum repository.
    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    
    [nginx-mainline]
    name=nginx mainline repo
    baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    Install nginx.
    host# yum install nginx
    For more information on installing nginx, see the official documentation at https://nginx.org/en/linux_packages.html#RHEL.
  3. On the host, install required tools.
    host# dnf install sysstat
    host# dnf install python3-pip
    host# pip3 install numpy
    host# dnf install net-tools
    The following tools are required.
    • sar : Used for logging. The tool is included in the sysstat package.
    • numpy: Installed using pip3.
    • nstat and netstat: Typically installed on most Linux systems.
  4. On the client, install required tools.
    client# dnf install lua-devel luajit-devel
    client# git clone https://github.com/wg/wrk.git
    client# cd wrk
    client# make
    client# cp wrk /usr/local/bin/
    client# dnf install sysstat
    The following tools are required.
    • sar: Used for logging. The tool is included in the sysstat package.
    • wrk: It is an HTTP benchmarking tool. The customized query.lua script is used with wrk. The test script copies the query.lua script to the <WRK_PATH>/scripts/ directory. The query.lua script can be found in the wrk/directory of the Link-Security™ Software package.
      Note: WRK_PATH is configured in constants.py. See Step 7 in Configuring the Test Server.
      Note: The setup is tested with wrk 4.2.
    • nstat and netstat: Typically installed on most Linux systems.