Node Installation

Namada Installation for Pilot

Minimum System Requirements

  • Validator 16GB 1TB* 4 Core

  • Full Node 8GB 1TB 2 Core

  • Light Node TBD TBD TBD

For this node im using Hetzner AX-41 NVME Dedicated Server

Installation

Install Rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source "$HOME/.cargo/env"

Update Depencies

sudo apt update && sudo apt upgrade -y
sudo apt install make clang pkg-config libssl-dev build-essential git jq llvm libudev-dev protobuf-compiler

Install CometBFT

curl -sL https://github.com/cometbft/cometbft/releases/download/v0.37.2/cometbft_0.37.2_linux_amd64.tar.gz | tar -C /usr/local/bin -xzf- cometbft

Setup Variable

CHAIN_ID="shielded-expedition.88f17d1d14"
KEY_NAME="wallet"
VAL_NAME="<YOUR VALIDATOR NAME HERE>"
EMAIL="<YOUR EMAIL HERE>"

Don't change the CHAIN_ID!!

Add Variable to the machine

echo 'export CHAIN_ID='\"${CHAIN_ID}\" >> $HOME/.bash_profile
echo 'export KEY_NAME='\"${KEY_NAME}\" >> $HOME/.bash_profile
echo 'export VAL_NAME='\"${VAL_NAME}\" >> $HOME/.bash_profile
echo 'export EMAIL='\"${EMAIL}\" >> $HOME/.bash_profile

Download Pre-built Namada Binary

wget https://github.com/anoma/namada/releases/download/v0.31.4/namada-v0.31.4-Linux-x86_64.tar.gz
tar xf namada-*.tar.gz
sudo mv namada-v0.31.4-Linux-x86_64/namada* /usr/local/bin/
rm -rf namada*

Init Chain

namada client utils join-network --chain-id $CHAIN_ID

Add Service File

sudo tee /etc/systemd/system/namadad.service << EOF
[Unit]
Description=Namada Node
After=network.target
[Service]
User=$USER
WorkingDirectory=$HOME/.local/share/namada
Type=simple
ExecStart=/usr/local/bin/namada --base-dir=$HOME/.local/share/namada node ledger run
Environment=NAMADA_CMT_STDOUT=true
Environment=TM_LOG_LEVEL=p2p:none,pex:error
RemainAfterExit=no
Restart=on-failure
RestartSec=10s
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

Enable Namada Service

sudo systemctl enable namadad.service
sudo systemctl daemon-reload
sudo systemctl restart namadad.service

Check Namada Logs

sudo journalctl -u namadad.service 

Check Sync Status

curl -s localhost:26657/status | jq .result.sync_info.catching_up

If the result is false then your node already synced.

Note : that Syncing proccess usually takes some times, be patient.

Next Step

After your node is synced Create the wallet

Generate New Key

namadaw gen --alias "${KEY_NAME}"

Recover Existing key

namadaw derive --alias "${KEY_NAME}"

Check Alias Address

namadaw find --alias "${KEY_NAME}"

List Keys

namadaw  list

Check Balance

namadac balance --owner "${KEY_NAME}"

After you create or import your wallet next step is to Init your validator

Init Validator

namadac  init-validator \
 --alias "${VAL_NAME}" \
 --account-keys "${KEY_NAME}" \
 --signing-keys "${KEY_NAME}" \
 --commission-rate 0.1 \
 --max-commission-rate-change 0.1 \
 --email "${EMAIL}"

If the transaction is success , wait for 2 Epoch!

1 Epoch = 10 Hours

After 2 Epoch restart your node

Restart Node after 2 Epoch

sudo systemctl restart namadad.service

Bond Token Validator

namadac  bond \
 --source "${KEY_NAME}" \
 --validator "${VAL_NAME}" \
 --amount 1000

You can Change the --amount to whatever your have in your balance

Done.

Last updated