CLI Reference

The nf CLI is the primary interface for managing NodeFoundry from the command line. Install it on any machine with network access to the master node.


Installation

macOS / Linux
$ curl -fsSL https://get.nodefoundry.io/cli | bash
Homebrew
$ brew install nodefoundry/tap/nf

Authentication

Authenticate by running nf auth login. This stores a token in ~/.config/nf/credentials.

Shell
$ nf auth login --host https://api.nodefoundry.io
Enter API key: nf_sk_live_...
✓ Authenticated as ben@example.com

Commands

cluster
nf cluster list

List all clusters. Add --json for machine-readable output.

nf cluster create

Create a new Ceph cluster.

FlagDescription
--nameCluster name (required)
--nodesComma-separated node names or IDs (required)
--versionCeph version: reef, squid (required)
--failure-domainhost (default), rack, zone
--waitBlock until deployment completes
nf cluster health <name>

Show health summary for a cluster.

FlagDescription
--verboseShow per-OSD and per-PG detail
--watchRefresh every 2 seconds (like watch)
nf cluster upgrade <name>

Trigger a rolling upgrade.

FlagDescription
--ceph-versionTarget Ceph version
--os-packagesAlso update OS packages on all nodes
--max-concurrentNodes to upgrade at once (default: 1)
--dry-runPrint what would happen without executing
node
nf node list

List all registered nodes. Use --cluster <name> to filter.

nf node inspect <name>

Show full hardware inventory for a node: CPU, RAM, drives, NICs, SMART data, and IPMI status.

nf node reboot <name>

Reboot a node via IPMI after draining active OSDs.

FlagDescription
--hardForce power cycle (skips graceful shutdown)
--no-drainSkip OSD drain (use only in emergencies)
nf node maintenance <name>

Put a node in maintenance mode. Drains OSDs and suppresses alerts while hardware work is in progress.

pool
nf pool list <cluster>

List all pools in a cluster with capacity and PG counts.

nf pool create <cluster>
FlagDescription
--namePool name (required)
--typereplicated (default) or erasure
--replication-factorReplicated pool size (default: 3)
--erasure-profileNamed erasure code profile
--applicationrbd, cephfs, or rgw
log
nf log search

Search indexed OSD, monitor, and service logs across all nodes.

FlagDescription
--sinceStart time, e.g. 1h, 2026-03-01
--untilEnd time
--nodeFilter to a specific node
--leveldebug, info, warn, error
image
nf image list

List available OS images stored on the master node.

nf image upload <path>

Upload a new OS image to the master node for use with iPXE boot.

nf image set-default <name>

Set the image served to newly booting nodes.