Before you begin
The following library is needed to run the
ntservice daemon:
- glibc version 2.5 or later
Root privileges are required to reconfigure, start and stop the
ntservice daemon.
If the system group napatech exists, user access to
ntservice (in effect, any use of SmartNICs with Napatech Link-Capture™ Software) requires root privileges or
membership of the napatech system group.
To add the system group
napatech, execute this command:
# groupadd -r napatech
To add a user to the
napatech
system group, execute this
command:
# usermod -a -G napatech <user>
For each NUMA node it must be possible to allocate 8 Mbytes of memory to be used for
performance measurements. Otherwise ntservice cannot be started.
Steps
To load the driver and start the ntservice daemon:
Procedure
-
To load the driver, execute this command:
# /opt/napatech3/bin/ntload.sh
Note: This step can be omitted, since Step
2 will start by loading the driver, if this has not been done.
-
To start ntservice, execute this command:
# /opt/napatech3/bin/ntstart.sh
To get information about ntstart.sh options, run
/opt/napatech3/bin/ntstart.sh --help.
The --ntpl <file> option applies the NTPL
script in the specified file at start-up.
The <configuration file> parameter allows you to select a
user-defined configuration file instead of
/opt/napatech3/config/ntservice.ini.
The
--option allows you to override and supplement configuration file
settings. The syntax is:
{--option [<section_name>].<setting_name>=<setting_value>}
If omitted, the
<section_name> will be inferred from the
<setting_name> or defaults to
[Adapter0].
Repeat
--option to specify more settings.
Note: If SELinux is enabled on the system,
loading the driver may fail with the following error messages.
# fgrep -i 3gd /var/log/audit/audit.log
type=AVC msg=audit(1697038741.725:131): avc: denied { module_load } for pid=10162 comm="insmod" path="/opt/napatech3/driver/nt3gd.ko" dev="dm-6" ino=131397 scontext=system_u:system_r:unconfined_service_t:s0 tcontext=system_u:object_r:usr_t:s0 tclass=system permissive=1
type=KERN_MODULE msg=audit(1697038741.725:131): name="nt3gd"
type=AVC msg=audit(1697038741.774:132): avc: denied { module_load } for pid=10182 comm="insmod" path="/opt/napatech3/driver/nt3gd_netdev.ko" dev="dm-6" ino=131385 scontext=system_u:system_r:unconfined_service_t:s0 tcontext=system_u:object_r:usr_t:s0 tclass=system permissive=1
type=KERN_MODULE msg=audit(1697038741.774:132): name="nt3gd_netdev"
This
is caused because SELinux resets the context of driver modules ensuring that they comply
with the security policies of SELinux. This can potentially prevent the driver from
being loaded by systemd during system boot. To resolve this issue, you must configure
the correct policies by running the following
command:
chcon -t modules_object_t /opt/napatech3/driver/*.ko
This
command is an example on a Red Hat Enterprise Linux-based operating system. It sets the
SELinux security context for the specified driver modules to
modules_object_t, aligning them with the necessary policies for
the driver modules to function as expected.
-
Optionally, to verify that ntservice is running and to list
installed SmartNICs, run the adapterinfo tool:
$ /opt/napatech3/bin/adapterinfo
adapterinfo (v. 3.7.1.87-23646)
==============================================================================
System: 3.7.1.87
------------------------------------------------------------------------------
Adapters: 2
Ports: 6
==============================================================================
Adapter: 0 -
NT20E3-2-PTP-NEBS-ANL NEBS Analysis Network Adapter PCIe Gen3 2x10Gb SFP+
------------------------------------------------------------------------------
Bus ID: 0000:00:09.0
PCI ID: 18F4:0175
FPGA ID: 200-9501-09-08-00
Feature level: N-ANL10
Profile: Capture
Supported profiles: Capture
. . .
Please refer to
DN-0449 for more information
about the
adapterinfo tool.