Install and enroll a Fleet Node

View as Markdown

Install Fleet Node on a Linux host that can reach both Proto Fleet and the miners it will manage. Enrollment confirms the host’s identity before Fleet gives it access.

Before you begin

Confirm that you have:

  • A supported Linux host
  • curl, tar, and sha256sum on the host
  • Network access from the host to Fleet and the miners
  • A Proto Fleet account with permission to manage Fleet Nodes
  • The exact release tag used by your Fleet deployment

Open Proto Fleet releases and confirm that the release includes install-fleet-node.sh plus a Fleet Node archive for your host architecture.

1

Install the release

Set VERSION to your Fleet release tag. This example uses v0.3.1-rc.6:

VERSION=v0.3.1-rc.6
bash <(curl -fsSL "https://github.com/block/proto-fleet/releases/download/${VERSION}/install-fleet-node.sh") "${VERSION}"

The installer detects amd64 or arm64, downloads the matching archive, and verifies its SHA-256 checksum. A new installation remains stopped until enrollment finishes.

2

Start enrollment in Fleet

In Fleet, open Settings → Nodes and select Enroll node.

Fleet displays a command for this deployment and a one-time enrollment code. Keep the enrollment window open.

3

Run the enrollment command

On the Fleet Node host, run the command shown in Fleet. It will look like:

sudo fleetnode-enroll --server-url=https://fleet.example.com/api-proxy

Paste the one-time enrollment code when prompted. The command registers the host and prints its node name and identity fingerprint.

For HTTPS, the Fleet Node host must trust the certificate presented by Fleet. If you use Proto Fleet high availability with its local service certificate, install the verified public service CA on the Fleet Node host first.

4

Confirm the node identity

Fleet advances to Confirm the node after registration.

Compare the identity fingerprint in Fleet with the fingerprint printed on the Fleet Node host. Select Confirm node only when they match.

A different fingerprint means another host used the enrollment code. Reject the node and start again with a new code.

5

Finish enrollment

Fleet displays the API key once. Copy it into the waiting prompt on the Fleet Node host.

The enrollment helper saves the credentials, turns on start at boot, and starts fleet-node.service.

6

Verify the connection

On the Fleet Node host, run:

cat /opt/fleetnode/version.txt
sudo systemctl status fleet-node.service --no-pager

In Settings → Nodes, confirm that the node shows Online. You can now discover and pair miners through this node.

The copied command may include --allow-insecure-transport when you opened Fleet over HTTP on a local network. Use HTTP enrollment only on a trusted network. Use HTTPS for a Fleet server reached through an untrusted network.

If enrollment stops before completion, keep the Fleet window open and see resume an interrupted enrollment.