Install the Agent
The KVM Fleet agent is a single static Go binary (~5 MB) that runs on any Linux-based KVM device.
One-line install
Options
| Flag | Description |
|---|---|
--token <token> |
Enrollment token from the dashboard (required) |
--name <name> |
Device name (optional, defaults to hostname) |
--tags <t1,t2> |
Comma-separated tags (optional) |
--api <url> |
Platform URL (default: https://app.kvmfleet.io) |
Environment variables
You can also pass configuration via environment variables:
What the install script does
- Detects architecture —
armv7l(ARMv7),aarch64(ARM64), orx86_64 - Detects device type — checks for known KVM software (kvmd, JetKVM config)
- Downloads the binary — from
https://app.kvmfleet.io/downloads/ - Sets up the service — systemd unit or BusyBox init script
- Starts the agent — enrolls and connects to the platform
Install paths
| Device type | Binary location | State file | Persists across firmware updates |
|---|---|---|---|
| JetKVM | /userdata/kvmfleet/agent |
/userdata/kvmfleet/state.json |
Yes |
| PiKVM | /usr/local/bin/kvmfleet-agent |
/var/lib/kvmfleet/state.json |
Depends on OS update method |
| Generic Linux | /usr/local/bin/kvmfleet-agent |
/var/lib/kvmfleet/state.json |
Yes |
Manual install
If you prefer not to use the install script:
# Download the binary for your architecture
wget https://app.kvmfleet.io/downloads/kvmfleet-agent.linux-arm64
chmod +x kvmfleet-agent.linux-arm64
mv kvmfleet-agent.linux-arm64 /usr/local/bin/kvmfleet-agent
# Write the enrollment token
mkdir -p /var/lib/kvmfleet
echo 'ekvent_your_token_here' > /var/lib/kvmfleet/enrollment.token
# Run
KVMFLEET_API=https://app.kvmfleet.io \
KVMFLEET_TOKEN_FILE=/var/lib/kvmfleet/enrollment.token \
EUROKVM_STATE=/var/lib/kvmfleet/state.json \
/usr/local/bin/kvmfleet-agent run
Build from source
Cross-compile:
# ARM64 (PiKVM, Raspberry Pi)
GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build -trimpath -o kvmfleet-agent.linux-arm64 ./
# ARMv7 (JetKVM)
GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=0 go build -trimpath -o kvmfleet-agent.linux-arm ./
Verify enrollment
After install, the agent creates a state file containing the device ID and auth token. Check it's enrolled:
The device should appear in the dashboard within seconds.