Running a full node

Running a Full Node

This section of the guide covers running a full (non-consensus) node. For information on running a validator node, see Validator setup.

A step-by-step guide to setting up and running a full node can be found here.

The Namada ledger

By starting the ledger process, your node will attempt to connect with network peers and sync to the latest block:

namada node ledger run

Note: You must have joined a network before you start the ledger. It throws an error if no network has been configured.

MASP parameters

When the ledger is run for the first time, the MASP-parameters will be downloaded. This is essential for producing the zero knowledge proofs required to make shielded transactions.

The default location of the MASP params is $HOME/.masp-params.

The ledger wasm files

When running the join-network command, the ledger will also download the genesis files, which contain the initial state of the blockchain. The ledger also needs access to the built WASM files that are used in the genesis block. These files are included in release and shouldn't be modified, otherwise your node will fail with a consensus error on the genesis block. By default, these are expected to be in the wasm directory inside the chain directory that's in the base directory, i.e $BASE_DIR/$CHAIN_ID/wasm. The wasm directory can also be set with the --wasm-dir CLI global argument, NAMADA_WASM_DIR environment variable or the configuration file.

Ledger configuration

The ledger configuration is stored in $BASE_DIR/$CHAIN_ID/config.toml (with default --base-dir). It is created when you join the network. You can modify that file to change the configuration of your node. All values can also be set via environment variables.