Quickstart

August 26, 2026 · View on GitHub

Solo Weaver is a Kubernetes-native deployment automation platform for Hedera network components. It enables node operators to migrate from traditional deployment models to modern, containerized infrastructure with automated lifecycle management.

The binary is called solo-provisioner.

Below is a quickstart guide to get you up and running with Solo Provisioner. Everything else is linked at the bottom.


1. Prerequisites

  • A Unix host. Tested on Debian 13.1.0 and Ubuntu 22.04.
  • curl installed.
  • Root access (sudo).

You do not need to create any users first:

  • weaver:2500 is created during solo-provisioner install.
  • hedera:2000 (which owns node storage) is created the first time you run a node install command.

2. Install the provisioner

curl -sSL https://raw.githubusercontent.com/hashgraph/solo-weaver/main/install.sh | bash

Check it worked:

solo-provisioner --help
solo-provisioner version

3. Check the machine

Read-only. Run it before installing anything so you find hardware or connectivity problems early.

sudo solo-provisioner block node check --profile=mainnet

--profile picks the target network — local, perfnet, testnet, previewnet or mainnet. It decides the hardware floor and sizing defaults. See Deployment profiles.

4. Install the block node

This one command installs the Kubernetes cluster and the block node on top of it.

# Local development
sudo solo-provisioner block node install --profile=local

For production you will normally pass a config file and Helm values:

sudo solo-provisioner block node install \
  --profile=mainnet \
  --config=/etc/solo-provisioner/config.yaml \
  --values=/etc/solo-provisioner/block-node-values.yaml

5. Verify

kubectl get pods -n block-node

The install also writes a report file. Its path is printed on the report_path=… line — keep it if you need to raise an issue.


Useful flags on day one

FlagWhy you would use it
--verbose, -VShow expanded step-by-step output
--log-level=debugTurn on debug logs
--non-interactiveTurn off the TUI and print raw logs. Use this in CI
-o jsonMachine-readable output for automation
--rollback-on-errorUndo completed steps if a later one fails

Full list: Global flags.

Optional extras

Each of these is a separate command you can run after the block node is up:

You wantRun
Metrics and logs shipped outalloy cluster install
Secure SSH / kubectl accessteleport … install
A host firewall and traffic shapingSwitches on block node install

Changing things later

SituationCommand
New chart versionblock node upgrade
New settings, same versionblock node reconfigure
Empty the storageblock node reset
Remove the block nodeblock node uninstall

See Block node commands for what each one keeps and what it wipes.

Uninstalling everything

Tear down workloads first — every teardown command lives inside the binary you remove last.

sudo solo-provisioner block node uninstall --profile=mainnet
sudo solo-provisioner kube cluster uninstall
sudo solo-provisioner uninstall --yes

--yes is required; the command refuses to run without it. It irreversibly removes:

  • The solo-provisioner CLI and its /usr/local/bin symlink
  • The solo-provisioner-daemon binary and its systemd service
  • The solo-provisioner-network-nft and solo-provisioner-bandwidth-shaper boot units
  • The configuration tree under /etc/solo-provisioner — rendered .nft files, the policy registry, tc device and class configs

solo-provisioner uninstall fails while a Kubernetes cluster is still provisioned, so the middle step is not optional.

Loaded nft tables and tc qdiscs are left in place. They do not survive a reboot once the boot-replay units and their inputs are gone.


Where to go next

Command referenceEvery command, by stack. Includes the quick reference card
Block nodeInstall, upgrade, reconfigure, reset, uninstall
NetworkHost firewall, workload policy, bandwidth shaping
Alloy & secretsMetrics, logs, External Secrets Operator
WorkflowsEnd-to-end deploy, upgrade and teardown recipes
TroubleshootingCommon problems and how to get more detail
Global flagsFlags that work on every command
ConfigurationConfig file, environment variables, proxy
Deployment profilesWhat --profile selects