Skip to main content

Fleet Management

Overview

Fleet Management is the central control plane for all distributed edge gateways. Instead of SSH-ing into each device individually, Fleet Management provides a single dashboard to register, monitor, and manage all devices remotely.

Key Features

Device Dashboard

The dashboard provides a real-time overview of all registered edge devices:

  • KPI Cards — Total devices, online, warnings, offline, updating (auto-refreshing)
  • Device Table — Sortable, filterable, paginated list of all devices with status, site, health score, and last heartbeat
  • Device Detail Drawer — Click any device to view CPU/RAM/disk usage, running connectors, and event history
  • Configurable Auto-Refresh — Choose update interval (5s, 10s, 30s, 60s, or off)

Device Registration

  1. Click Register Device in the dashboard
  2. Enter a Device Name and Site (select existing or create a new one)
  3. After registration you receive:
    • A registration token (valid for 24 hours)
    • A ready-to-use install command

Run the install command on the target device to set up the agent automatically:

curl -sSL http://<management-host>/api/fleet/agent/install.sh | \
REGISTRATION_TOKEN=<token> \
DEVICE_ID=<uuid> \
MANAGEMENT_URL=http://<management-host> bash

The device appears in the dashboard within seconds.

Monitoring

Each device sends a heartbeat at a regular interval (default: every 30 seconds) containing:

  • System Metrics — CPU, RAM, and disk usage
  • Device Information — OS, kernel, architecture, uptime
  • Connector Status — List of all running ALP-CONNEX connectors with name, type, and status

Health Score

Each device receives a Health Score (0–100) calculated from its system metrics:

FactorHealthyWarningCritical
CPU Usage< 70%70–90% (−15)> 90% (−30)
RAM Usage< 75%75–90% (−10)> 90% (−25)
Disk Usage< 80%80–90% (−10)> 90% (−25)
Connector StatusAll runningProportional penalty up to −20

The health score determines the device status:

StatusMeaning
OnlineHealth score ≥ 80
WarningHealth score < 80
OfflineNo heartbeat for 2× the heartbeat interval (default: ~60 seconds)
UpdatingUpdate command in progress

Remote Commands

Commands can be sent to devices from the dashboard and are executed on the next heartbeat:

CommandDescription
Restart ConnectorsRestarts all connector containers on the device
UpdatePulls a specified image and restarts the target container
ConfigurePushes a configuration payload to the device

Command status is tracked in the device's event log.

Site Management

Devices can be assigned to sites. Sites are created during device registration and allow filtering and grouping in the dashboard.

Agent Installation

Prerequisites

  • Docker must be installed on the target device
  • Root access for installation
  • Network connectivity to the management server

Automated Installation

The easiest way: copy the install command from the UI and run it on the device. The script will:

  1. Check prerequisites (Docker, architecture)
  2. Download the agent Docker image from the management server (~8 MB)
  3. Create the configuration under /opt/connex-agent/
  4. Start the agent as a Docker container

Agent Configuration

SettingRequiredDefaultDescription
MANAGEMENT_URLYesManagement server URL
REGISTRATION_TOKENFirst startOne-time token from the UI
HEARTBEAT_INTERVALNo30Seconds between heartbeats (10–300)
STACK_VERSIONNodevReported software version

Persistent Data

The agent stores its data under /opt/connex-agent/data/:

FilePurpose
device-idUnique device identifier
device-secretAuthentication key (assigned during initial registration)
device-config.jsonConfiguration pushed from the server

Troubleshooting

Device not appearing in dashboard

  1. Check agent logs: docker logs connex-agent
  2. Management URL reachable? curl http://<host>/api/fleet/devices/stats
  3. Registration token expired? (24h validity)

Device shows "Offline"

A device is marked offline if no heartbeat has been received for over 2 minutes:

  • Is the agent container running? docker ps -f name=connex-agent
  • Check network connectivity to the management server

No connectors reported

The agent discovers connectors by inspecting running Docker containers. Requirements:

  • Docker socket must be mounted
  • Connector containers must use the ALP-CONNEX naming scheme