Axoflow provides Axoflow agent for Linux (a customized OpenTelemetry Collector distribution) to collect data from Linux-based edge hosts.
Axoflow agent for Linux can collect data from files and systemd journals.
What the installer does
When you deploy axolet, you run a command that installs the required software packages, configures them and sets up the connection with Axoflow.
The installer script performs the following main steps:
- Executes prerequisite checks:
- Tests the network connection with the console endpoints.
- Checks if the operating system is supported.
- Downloads the installers (
.rpmor.deb) of the Axolet agent and the Axoflow agent for Linux. - The installer script installs the packages. If the packages are already installed, the installer will update them to the latest version.
The installer installs:
- The collector agent (by default) to
/usr/bin/axoflow-otel-collector. - A default configuration file to
/etc/axoflow-otel-collector/config.yaml. - The
axoletmanagement agent (by default) to/usr/local/bin/axolet.
axolet performs the following main steps on its first execution:
- Generates and persists a unique identifier (GUID).
- Initiates a cryptographic handshake process to AxoConsole.
- AxoConsole issues a client certificate to axolet, which will be stored in the above mentioned
config.jsonfile. - The service waits for an approval on AxoConsole. Once you approve the host registration request, axolet starts to manage the local services and send telemetry data to AxoConsole. It keeps doing so as long as the agent is registered.
To install Axoflow agent on a Linux host, complete the following steps. For other platforms, see Provision pipeline elements.
Prerequisites
- Axoflow agent should work on most Red Hat and Debian compatible Linux distributions. Both x86_64 and arm64 architectures are supported. For production environments, we recommend using Red Hat Enterprise Linux 9.
- When using Axoflow agent with an on-premises AxoConsole deployment, you must prepare the Axoflow agent host
Network access
The hosts must be able to access the following domains related to the AxoConsole:
-
When using AxoConsole SaaS:
<your-tenant-id>.cloud.axoflow.io: HTTPS traffic on TCP port 443, needed to download the binaries for Axoflow software (like Axolet and AxoRouter).kcp.<your-tenant-id>.cloud.axoflow.io: HTTPS (mutual TLS) traffic on TCP port 443 for management traffic.telemetry.<your-tenant-id>.cloud.axoflow.io: HTTPS (mutual TLS) traffic on TCP port 443, where Axolet sends the metrics of the host.us-docker.pkg.dev: HTTPS traffic on TCP port 443, for pulling container images (AxoRouter only).
-
When using an on-premise AxoConsole:
-
The following domains should point to AxoConsole IP address to access Axoflow from your desktop and AxoRouter hosts:
your-host.your-domain: The main domain of your AxoConsole deployment.authenticate.your-host.your-domain: A subdomain used for authentication.idp.your-host.your-domain: A subdomain for the identity provider.
-
The AxoConsole host must have the following Open Ports:
- Port 80 (HTTP)
- Port 443 (HTTPS)
-
-
When installing Axoflow agent for Windows or Linux:
github.com: HTTPS traffic on TCP port 443, for downloading installer packages.
Install Axoflow agent for Linux
-
Select Provisioning > Select type and platform.

-
Select the type (Edge) and platform (Linux). The one-liner installation command is displayed.
If needed, set the Advanced options (for example, proxy settings) to modify the installation parameters. Usually, you don’t have to use advanced options unless the Axoflow support team instructs you to do so.
-
Select Advanced options > Install Collector agent.
-
Open a terminal on the host where you want to install Axoflow agent.
-
Run the one-liner, then follow the on-screen instructions.
Example output:
curl -fLsH 'X-AXO-TOKEN:random-generated' 'https://<your-tenant-id>.cloud.axoflow.io/setup.sh?type=AXOEDGE&platform=LINUX&install_agent=true' | sh Do you want to install Axoflow agents now? [Y] Y Verifying packages... Preparing packages... axolet-0.69.0.x86_64 The unique identifier of this installation: 9hrtcd8bz6u61aihd2zd Verifying packages... Preparing packages... axoflow-otel-collector-0.129.0~axoflow.5-1.x86_64 Created symlink /etc/systemd/system/multi-user.target.wants/axoflow-otel-collector.service → /usr/lib/systemd/system/axoflow-otel-collector.service. Axolet service is running. Now continue with onboarding the host on the Axoflow web UI. -
Verify that the
axoletandaxoflow-otel-collectorservices are running by runningsudo systemctl list-units | grep axoExample output:
axoflow-otel-collector.service loaded active running Axoflow Otel Collector axolet.service loaded activating start start Axoflow agent -
On the AxoConsole, reload the Provisioning page. A registration request for the new host should be displayed. Accept it.
-
The host now appears on the Topology page. To collect data from the host, the host must match the edge selector of an Edge collection rule.
Metadata fields
The AxoRouter connector that receives data from Axoflow agent adds the following fields to the meta variable:
| field | value |
|---|---|
| meta.connector.type | otlp |
| meta.connector.name | <name of the connector> |
| meta.product | opentelemetry |
| meta.edge.connector.name | |
| meta.edge.connector.type | otelJournald |
| meta.edge.connector.labels.product | otel-journald |
| meta.edge.connector.labels.vendor | opentelemetry |
| meta.edge.connector.rule_id | <name of the collection rule> |