Skip to main content

expanso-cli node

expanso-cli node​

Manage nodes

Synopsis​

View and manage edge nodes in your Expanso deployment.

What Is A Node?​

A node is an edge agent (expanso-edge) running on your infrastructure that connects to the control plane. Each node: • Connects securely to the control plane via NATS transport • Reports its identity, labels, and resource capabilities • Executes jobs assigned by the control plane based on selectors • Sends execution status, logs, and metrics • Maintains connection and automatically reconnects if disconnected

Node Lifecycle:​

  1. Bootstrap: Node obtains credentials from bootstrap service (one-time)
  2. Connect: Node establishes secure connection to control plane
  3. Register: Node reports identity, labels, capabilities, and resources
  4. Ready: Node is available to receive job assignments
  5. Execute: Node runs assigned jobs
  6. Disconnect: Connection lost (node shown as "disconnected" until reconnected)

Node Labels:​

Nodes are tagged with labels for targeting: • System labels: region, zone, os, arch • Custom labels: env=production, datacenter=us-west-1 • Used in job selectors to control where jobs run

Node Capabilities:​

Nodes report their capabilities: • Available resources (CPU, memory, disk) • Supported job types • Network connectivity • Storage capabilities

Common Tasks:​

List all connected nodes​

expanso-cli node list

Filter by label​

expanso-cli node list --label env=production

View detailed node information​

expanso-cli node describe node-id-123

See what's running on a node​

expanso-cli node executions node-id-123

Check node health and resource usage​

expanso-cli node stats

Options​

-h, --help help for node

Options inherited from parent commands​

--api-key string API key for authentication (e.g., exp_ak_...). Env: EXPANSO_CLI_AUTH_API_KEY (preferred; flag values show in ps output)
-e, --endpoint string API endpoint URL
-k, --insecure Skip TLS certificate verification
-p, --profile string Profile to use for configuration
--timeout string Request timeout duration
-v, --verbose Enable verbose logging

SEE ALSO​