Quickstart: Linux and other platforms
Overview Copied
The data collected by the Netprobe depends on the plug-ins you choose to run. For most cases, the Netprobe needs to be installed onto the machine or server to be monitored.
This guide walks you through the full installation and setup of a Netprobe on the following platforms:
- Linux
- Linux on IBM POWER8
- IBM AIX
To install and set up Netprobes in orchestrated environment, see Data collection in an orchestrated environment.
Note
Beginning Geneos 5.1, the Collection Agent is included in the Netprobe binaries for Windows and generic Linux platforms.
Prerequisites Copied
Beginning Geneos version 5.0.0, this component is only compatible with other Geneos components that are version 3.6.0 or higher. For more information, see the Geneos Compatibility Matrix.
System requirements Copied
The following table lays out the minimum requirements for machines running the Netprobe:
Specification | Minimum requirement |
---|---|
CPU | Multi-core |
Memory | 4 GB |
NIC | 100 Mbps |
Disk | 200 MB |
Port |
A port must be open on any system running a Netprobe. The default Netprobe port is |
For more information on supported Linux and other platforms, see the Geneos 5.x Compatibility Matrix.
Java requirements Copied
Java may be required in order to run certain plug-ins. For more information, see Application and plugin specific information in Geneos Compatibility Matrix.
Download the Netprobe files Copied
Note
You can download the Netprobe package either as a standard or minimal package.
- The standard package includes the Collection Agent plugins and all the other plugins for use in most scenarios. For example,
geneos-netprobe-standard-<version>-linux-x64.tar.gz
.- The minimal package is smaller in size and does not include the Collection Agent and all its plugins. For example,
geneos-netprobe-minimal-<version>-linux-x64.tar.gz
.
On Linux platforms, you can install the Netprobe through the following:
- Through an RPM package (
geneos-netprobe-standard-<version>-linux-x64.rpm
), which you can deploy using YUM. - Through a tarball:
geneos-netprobe-standard-<version>-linux-x64.tar.gz
for Linuxgeneos-netprobe-<version>.linux-ppc64le.tar.gz
for Linux on IBM POWER8
On IBM AIX, you can install the Netprobe through a tarball:
geneos-netprobe-minimal-<version>-aix-ppc64.tar.gz
You can get the latest binaries from ITRS Downloads.
Note
Beginning Geneos 5.6.x, thelibcrypto.so
andlibcrypto.so.1.1
library files are no longer included in thelib64
directory in the Netprobe package (geneos-netprobe-<version>-el8-linux-x64.tar.gz
) for RHEL 8 and CentOS 8.
Note
Beginning Geneos 5.9.x, the
libssl.so.1.1
andlibcrypto.so.1.1
libraries are renamed tolibsslgeneos.so.1.1
andlibcryptogeneos.so.1.1
respectively for generic Linux and Linux on IBM POWER8 platforms to eliminate the dependency of libcurl to these libraries to reduce compatibility issues such as the following scenarios:
- When the Netprobe runs under elevated privileges in Linux, the runtime loader of Linux (
ld.so
) ignores theRPATH
andLD_LIBRARY_PATH
, so the Netprobe is unable to load the libraries from the<netprobe directory>/lib64
. For the libraries to be loaded, the path to<netprobe directory>/lib64
has to be added to the trusted paths ofld.so
. This can cause compatibility issues for other applications that run on the same machine. For more information, see Run Netprobe under elevated privileges in Linux in Quickstart: and other platforms.- Files are loaded alphabetically in
/etc/ld.so.conf.d/*
when/usr/lib64
or any library folder that has OpenSSL libraries is loaded before thenetprobe conf
. These libraries are not packaged with Netprobe but are in the/usr/lib64
directory. Therefore, they might not be compatible.
Install a new Netprobe Copied
You can install a Netprobe in two ways:
Deploy the RPM package Copied
Ubuntu Copied
Below are the steps to deploy the Netprobe RPM package in Ubuntu.
- Generate .deb file.
sudo alien <np rpm package name>.rpm
- Install the Netprobe.
sudo dpkg -i <geneos-netprobe_5.10.0-2_amd64>.deb
This installs the Netprobe on /opt/itrs/geneos.
- Run the Netprobe executable in the background.
./netprobe.linux_64 &
This runs the Netprobe on its default port (7036
) and prints its log entries on stdout
.
Other Linux operating systems Copied
Below are the steps to deploy the Netprobe RPM package in other Linux operating systems. You can opt to use YUM or a similar package manager to deploy the RPM package:
- Create or update the local YUM repository.
[root@server1 ~]# mv <rpm-dir>/* <repo-dir>/
[root@server1 ~]# chown -R root.root <repo-dir>/
[root@server1 ~]# createrepo <repo-dir>/
[root@server1 ~]# chmod -R o-w+r <repo-dir>/
The <rpm-dir>
contains the RPM package to be added to the local YUM repository.
- Create or update the
/etc/yum.repos.d/local/repo
folder.
[local]
name=<repo-name>
baseurl=file://<repo-dir>
enabled=1
gpgcheck=0
- Install or upgrade the Netprobe.
yum install geneos-netprobe
- Run the Netprobe executable in the background:
./netprobe.linux_64 &
This runs the Netprobe on its default port (7036
) and prints its log entries on stdout
.
Note
If you want to run the Netprobe on a different port, customise its target Netprobe directory, as well as change other variables, see Netprobe variables.
You can also create and configure a start script to set Netprobe variables when you start the Netprobe. For guidance, see Start the Netprobe.
Success
The Netprobe is now running as a process. You may stop or start the Netprobe at any time.
If needed, you can uninstall the Netprobe using the following command:
yum remove geneos-netprobe
Unpack the tarball Copied
- Download the tarball:
geneos-netprobe-standard-<version>-linux-x64.tar.gz
for Linux platformsgeneos-netprobe-<version>.linux-ppc64le.tar.gz
for Linux on IBM POWER8geneos-netprobe-minimal-<version>-aix-ppc64.tar.gz
for IBM AIX
- Using the Linux console, unpack the tarball into your desired Netprobe working directory. For example:
gunzip geneos-netprobe-5.0.x.linux-x64.tar.gz
tar -C /netprobe-directory -xvf geneos-netprobe-5.0.x.linux-x64.tar
Note
Once the tarball is unpacked, it is no longer needed and can be deleted.
- Run the Netprobe executable in the background:
./netprobe.linux_64 &
This runs the Netprobe on its default port (7036
) and prints its log entries on stdout
.
Note
If you want to run the Netprobe on a different port, customise its target Netprobe directory, as well as change other variables, see Netprobe variables.
You can also create and configure a start script to set Netprobe variables when you start the Netprobe. For guidance, see Start the Netprobe.
Success
The Netprobe is now running as a process. You may stop or start the Netprobe at any time.
Upgrade an existing Netprobe Copied
Stop the Netprobe process Copied
Before you upgrade a Netprobe, make sure to stop the Netprobe first:
- On the terminal, run
ps
to find thepid
for the Netprobe process. By default, the process name isnetprobe.linux_64
. - Stop the Netprobe process using the
kill
command. In the following example, replace<pid
> with the process number of the Netprobe process you want to terminate:
kill <pid>
You can upgrade the Netprobe using either the RPM package or the tarball.
Upgrade the Netprobe using the RPM package Copied
When you upgrade the Netprobe using the RPM package, do the following:
- Check that the Netprobe process is stopped. For guidance, see Stop the Netprobe process.
- Follow the steps in Deploy the RPM package, and make sure to provide the same
<repo-dir>
from when you first installed the Netprobe.
Success
The Netprobe is upgraded and is once more running as a process. You may stop or start the Netprobe at any time.
Upgrade the Netprobe using the tarball Copied
When you upgrade the Netprobe using the tarball, do the following:
-
Check that the Netprobe process is stopped. For guidance, see Stop the Netprobe process.
-
Follow the steps in Unpack the tarball. However, it is recommended to unpack the tarball in a different directory from where you first unpacked the Netprobe tarball.
-
Copy over the configuration files, scripts, and other local resources that the Netprobe uses from the old working directory to the new working directory.
Note
Upgrading via tarball in the same directory does not remove old files from the previous version. This step ensures that you get a clean upgrade and allows you to rollback to the old directory if you encounter any issue while upgrading. -
Run the Netprobe executable in the background once more:
./netprobe.linux_64 &
Success
The Netprobe is upgraded and is once more running as a process. You may stop or start the Netprobe at any time.
Start the Netprobe Copied
On Linux and similar platforms, you have to start the Netprobe on the machine after installing it. There are two ways that you can do this:
Command line Copied
In a shell, navigate to the Netprobe working directory and run netprobe.linux_64
. For example:
./netprobe.linux_64 -setup <full path or URL to the file> &
The Netprobe process is run in the background as a best practice.
Startup script Copied
A startup script enables you to pre-set any Netprobe settings into a script before running the Netprobe. You can find a template for it in templates/start_netprobe.tmpl
.
Once you have set the startup script to your preferences, you can run it to start the Netprobe. For example:
./start_netprobe
Start options Copied
- For guidance in starting a Self-Announcing Netprobe, see Manage Self-Announcing Netprobes.
- For guidance in starting a floating Netprobe, see Manage floating Netprobes.
- For more information on options you can set on the Netprobe, see the following:
Considerations for Linux Copied
Library dependencies Copied
The Linux version of the Netprobe depends on certain libraries to run. Not all libraries are packaged with the Netprobe. Therefore, you may need to install these libraries independently. The Netprobe should be able to use the package versions that are officially supported for a given Linux distribution and available in their respective package managers.
The following tables list the library dependencies for common Linux distributions:
RHEL 9 Copied
Library Name | Package Name |
---|---|
libcrypto.so.3 | openssl-libs |
libnsl.so.3 | libnsl2 |
libcrypt.so.2 | libxcrypt |
libresolv.so.2 | glibc |
libz.so.1 | zlib |
libstdc+.so.6 | libstdc+ |
libm.so.6 | glibc |
libgcc_s.so.1 | libgcc |
libc.so.6 | glibc |
libtirpc.so.3 | libtirpc |
libgssapi_krb5.so.2 | krb5-libs |
libkrb5.so.3 | krb5-libs |
libk5crypto.so.3 | krb5-libs |
libcom_err.so.2 | libcom_err |
libkrb5support.so.0 | krb5-libs |
libkeyutils.so.1 | keyutils-libs |
libselinux.so.1 | libselinux |
libpcre2 | pcre2 |
libcurl | libcurl |
RHEL 8 Copied
Library Name | Package Name |
---|---|
libcrypto.so.1.1 | openssl-libs |
libutil.so.1 | glibc |
libnsl.so.2 | libnsl2 |
libpthread.so.0 | glibc |
libdl.so.2 | glibc |
libcrypt.so.1 | libxcrypt |
libresolv.so.2 | glibc |
libz.so.1 | zlib |
librt.so.1 | glibc |
libstdc+.so.6 | libstdc+ |
libm.so.6 | glibc |
libgcc_s.so.1 | libgcc |
libc.so.6 | glibc |
libtirpc.so.3 | libtirpc |
libgssapi_krb5.so.2 | krb5-libs |
libkrb5.so.3 | krb5-libs |
libk5crypto.so.3 | krb5-libs |
libcom_err.so.2 | libcom_err |
libkrb5support.so.0 | krb5-libs |
libkeyutils.so.1 | keyutils-libs |
libselinux.so.1 | libselinux |
libpcre2 | pcre2 |
libcurl | libcurl |
AIX Copied
Note
Thebos.<fileset>
filesets are part of the Base Operating System while xlC and libc++ filesets are part of the XL C/C++ Runtime package.
Library name | Fileset |
---|---|
libc.a | bos.rte.libc |
libpthread.a | bos.rte.libpthreads |
libC.a | xlC.rte |
libc++.a | libc++.rte |
libperfstat.a | bos.perf.libperfstat |
libcrypt.a | bos.rte.security |
libpthreads.a | bos.rte.libpthreads |
libcfg.a | bos.rte.libcfg |
libodm.a | bos.rte.odm |
liblvm.a | bos.rte.lvm |
libcorcfg.a | bos.wpars |
libsrc.a | bos.rte.SRC |
Security-Enhanced Linux Copied
When Security-Enhanced Linux (SELinux) is running in Enforcing mode
, it may deny certain functions of Geneos depending on the implemented configurations and policies. To see which functions SELinux denies, check the audit log. The log is typically located in /var/log/audit.log
, where the log type entry is AVC
. The audit log provides the details of any denied access.
For example, denied connection to the TCP port. If you experience issues related to this mode, you may opt to disable SELinux, or create policy modules to grant the required access. Please contact your administrator or security team for assistance.
Run Netprobe under elevated privileges in Linux Copied
Note
The instructions outlined below do not apply to RHEL 8 and RHEL 9 as the Netprobe on these packages uses native libraries.
When the privileges of Netprobe is raised (e.g. via setcap/setuid), the runtime loader of Linux (ld.so
) will not be able to load the libraries from the <netprobe directory>/lib64
, as it will ignore RPATH
and LD_LIBRARY_PATH
. This is the way ld.so
has been designed.
In order for the libraries to be loaded, the path to the lib64/startup
folder has to be added to the trusted paths of ld.so
. This can be done by doing the steps below, as root user.
- Create a conf file in
/etc/ld.so.conf.d/
. The conf file should contain the path to thelib64/startup
folder inside your netprobe directory.
[root@localhost netprobe]# echo /home/inbound/binaries/netprobe/geneos-netprobe-5.9.0.linux-x64/netprobe/lib64/startup > /etc/ld.so.conf.d/netprobe.linux_64.conf
- Rebuild the ld runtime cache by executing ldconfig.
[root@localhost netprobe]# ldconfig
After these steps, the Netprobe can be run using the desired user and can load the runtime libraries without issues.