Skip to main content

Installation

Official docs

https://docs.namada.net/operators

Hardware Requirements

Node TypeRAMStorageCPU Cores
Validator16 GB1 TB*4
Full Node8 GB1 TB2
Light NodeTBDTBDTBD

Install dependencies

sudo apt-get update -y
sudo apt-get install curl tar wget clang pkg-config libssl-dev libclang-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool libudev-dev -y

Install rust

sudo curl https://sh.rustup.rs -sSf | sh -s -- -y
source $HOME/.cargo/env

Install binaries

NAMADA_TAG=v1.1.5
cd && git clone https://github.com/anoma/namada && cd namada && git pull &&git checkout $NAMADA_TAG
make install

Init node

export NAMADA_NETWORK_CONFIGS_SERVER="https://github.com/anoma/namada-mainnet-genesis/releases/download/mainnet-genesis"
namadac utils join-network --chain-id namada.5f5de2dd1b88cba30586420

Set peers

peers=$(curl -sS https://rpc.namada.silentvalidator.com/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}' | paste -sd, -)
sed -i -e "s|^persistent_peers *=.*|persistent_peers = \"$peers\"|" $HOME/.local/share/namada/namada.5f5de2dd1b88cba30586420/config.toml
echo $peers

Set up custom ports (Optional)

export CUSTOM_PORT=200
sed -i \
-e "s|^proxy_app = \"tcp://127.0.0.1:26658\"|proxy_app = \"tcp://127.0.0.1:${CUSTOM_PORT}58\"|" \
-e "s|^laddr = \"tcp://127.0.0.1:26657\"|laddr = \"tcp://127.0.0.1:${CUSTOM_PORT}57\"|" \
-e "s|^laddr = \"tcp://0.0.0.0:26656\"|laddr = \"tcp://0.0.0.0:${CUSTOM_PORT}56\"|" \
-e "s|^prometheus_listen_addr = \":26660\"|prometheus_listen_addr = \":${CUSTOM_PORT}60\"|" \
$HOME/.local/share/namada/namada.5f5de2dd1b88cba30586420/config.toml

Set up services

sudo tee /etc/systemd/system/namadad.service > /dev/null << EOF
[Unit]
Description=Namadad
After=network-online.target

[Service]
User=$USER
ExecStart=$(which namada) ledger run
Environment="CMT_LOG_LEVEL=p2p:none,pex:error"
Environment="NAMADA_CMT_STDOUT=true"
Environment="NAMADA_LOG=info"
Restart=always
RestartSec=10
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

Download snapshot

cd
wget -O namada_db_latest.tar.lz4 https://snapshot.silentvalidator.com/namada/snapshot/namada_db_latest.tar.lz4
wget -O namada_data_latest.tar.lz4 https://snapshot.silentvalidator.com/namada/snapshot/namada_data_latest.tar.lz4

Decompress snapshot

lz4 -c -d namada_db_latest.tar.lz4  | tar -xv -C $HOME/.local/share/namada/namada.5f5de2dd1b88cba30586420/
lz4 -c -d namada_data_latest.tar.lz4 | tar -xv -C $HOME/.local/share/namada/namada.5f5de2dd1b88cba30586420/cometbft

Start the node

sudo systemctl daemon-reload && \
sudo systemctl enable namadad && \
sudo systemctl restart namadad && \
sudo journalctl -u namadad -fn 100

Check sync status

curl -s http://localhost:${CUSTOM_PORT}57/status | jq .result.sync_info

if "catching_up": false then the node is synced