Skip to main content

Nodes

An edge node is the runtime that executes data pipelines on your infrastructure.

What is a Node?

A node is:

  • A lightweight daemon (~50MB binary)
  • Runs on your infrastructure
  • Executes one or more pipelines
  • Reports metrics to Expanso Cloud

Node Lifecycle

1. Bootstrap

Register with Expanso Cloud using a bootstrap token:

expanso-edge bootstrap --token YOUR_TOKEN

The node receives credentials and network assignment.

2. Connect

Establish secure TLS connection to control plane:

  • Registers with assigned network
  • Receives initial configuration
  • Begins health reporting

3. Execute

Run assigned pipelines:

  • Download pipeline configs
  • Execute data processing
  • Report metrics and status

4. Update

Receive configuration updates:

  • New pipelines deployed
  • Existing pipelines updated
  • Configuration changes applied

Deployment Options

Nodes can run anywhere:

Bare metal / VMs:

curl -sL https://get.expanso.io/edge/install.sh | bash
expanso-edge bootstrap --token TOKEN

Docker:

docker run -d \
-e EXPANSO_EDGE_BOOTSTRAP_TOKEN=TOKEN \
ghcr.io/expanso-io/expanso-edge:nightly

Kubernetes:

apiVersion: apps/v1
kind: Deployment
metadata:
name: expanso-edge
spec:
template:
spec:
containers:
- name: expanso-edge
image: ghcr.io/expanso-io/expanso-edge:latest
env:
- name: EXPANSO_EDGE_BOOTSTRAP_TOKEN
value: YOUR_TOKEN

Edge devices:

  • Raspberry Pi
  • IoT gateways
  • Industrial PLCs

Resource Requirements

Minimal footprint:

  • CPU: 0.5 cores
  • RAM: 64 MB base
  • Disk: 150 MB

Actual usage depends on:

  • Number of pipelines
  • Data volume
  • Buffering configuration
  • Transformation complexity

Node Labels

Add labels during bootstrap or via configuration:

labels:
env: production
region: us-east-1
datacenter: dc-1
role: log-processor

Use labels to:

  • Organize nodes
  • Target deployments
  • Filter in monitoring

Health & Monitoring

Nodes report health every 10 seconds:

  • Connection status: Connected/disconnected
  • Pipeline status: Running/stopped/failed
  • Resource usage: CPU, memory, disk
  • Error conditions: Recent errors and warnings

What's Next?

👉 Pipelines - Learn about data flow definitions

👉 Deploy a Node - Get hands-on