LUMERA VALIDATOR

Lumera Node Setup

Complete guide to deploying and managing a high-performance Lumera validator node with enterprise-grade reliability

NETWORK STATUS: ACTIVE

System Requirements

Component Minimum Recommended
OS Ubuntu 20.04 Ubuntu 22.04 LTS
CPU 4 Cores 8+ Cores
RAM 8GB 16GB+
Storage 500GB SSD/NVMe 1TB SSD/NVMe
Network 10Mbps 100Mbps+

Manual Installation

Step 1: Install Dependencies

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

Step 2: Install Go

ver="1.22.5"
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash_profile
source ~/.bash_profile
go version

Step 3: Install Lumera Binary

cd $HOME
curl -LO https://github.com/LumeraProtocol/lumera/releases/download/v1.0.1/lumera_v1.0.1_linux_amd64.tar.gz
tar -xvf lumera_v1.0.1_linux_amd64.tar.gz
rm lumera_v1.0.1_linux_amd64.tar.gz
rm install.sh
mv libwasmvm.x86_64.so /usr/lib/
chmod +x lumerad
mv lumerad $HOME/go/bin/

Advanced Configuration

Custom Port Configuration

Change default ports to custom ports (e.g., 176xx series):

# Change all default ports (266xx/6060/9090/1317) to custom ports (176xx/170xx)
sed -i.bak -e "s%^node = \"tcp://localhost:26657\"%node = \"tcp://localhost:17657\"%" $HOME/.lumera/config/client.toml

sed -i.bak -e \
"s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:17658\"%; \
s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:17657\"%; \
s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:17060\"%; \
s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:17656\"%; \
s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":17660\"%" \
$HOME/.lumera/config/config.toml

sed -i.bak -e \
"s%^address = \"tcp://localhost:1317\"%address = \"tcp://localhost:17317\"%; \
s%^address = \"localhost:9090\"%address = \"localhost:17090\"%" \
$HOME/.lumera/config/app.toml

# Restart node after port changes
sudo systemctl restart lumerad

Configure Gas & Indexer

# Set minimum gas price
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.025ulume\"/" $HOME/.lumera/config/app.toml

# Disable indexer for better performance
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.lumera/config/config.toml

# Apply changes
sudo systemctl restart lumerad

Note: 0.025ulume is the recommended minimum gas price. Adjust according to network conditions.

Step 4: Verify Installation

lumerad version --long | grep -e version -e commit

Validator Configuration

Step 1: Initialize Node

lumerad init YOUR_NODE_NAME --chain-id lumera-testnet-1

Step 2: Download Genesis & Addrbook

curl -L https://snapshot-t.vinjan.xyz/lumera/genesis.json > $HOME/.lumera/config/genesis.json
curl -L https://snapshot-t.vinjan.xyz/lumera/addrbook.json > $HOME/.lumera/config/addrbook.json

Step 4: Create Service File

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

[Service]
User=$USER
ExecStart=$(which lumerad) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

# Reload and enable service
sudo systemctl daemon-reload
sudo systemctl enable lumerad
sudo systemctl start lumerad

Step 3: Create Wallet

lumerad keys add wallet

⚠️ Securely backup your mnemonic phrase!

Step 4: Create Validator

lumerad tx staking create-validator \
--amount=1000000ulume \
--pubkey=$(lumerad tendermint show-validator) \
--moniker="YOUR_VALIDATOR_NAME" \
--chain-id=lumera-testnet-1 \
--commission-rate=0.05 \
--commission-max-rate=0.20 \
--commission-max-change-rate=0.01 \
--min-self-delegation="1" \
--from=wallet \
--fees=500ulume \
-y

Essential Commands

Check Sync Status

lumerad status 2>&1 | jq

Check Validator Status

lumerad query staking validator $(lumerad keys show wallet --bech val -a)

Monitor Logs

journalctl -fu lumerad -o cat

Upgrade Binary

Download and Install New Binary

cd $HOME
curl -LO https://github.com/LumeraProtocol/lumera/releases/download/v1.1.0/lumera_v1.1.0_linux_amd64.tar.gz
tar -xvf lumera_v1.1.0_linux_amd64.tar.gz
rm lumera_v1.1.0_linux_amd64.tar.gz
rm install.sh
mv libwasmvm.x86_64.so /usr/lib/
chmod +x lumerad
mv lumerad $HOME/go/bin/

Restart Service

sudo systemctl restart lumerad && sudo journalctl -u lumerad -f

Verify Version

lumerad version --long | grep -e version -e commit

Should return: v1.1.0

Sync Using Snapshot

Fast Sync with Snapshot

sudo systemctl stop lumerad
cp $HOME/.lumera/data/priv_validator_state.json $HOME/.lumera/priv_validator_state.json.backup
rm -rf $HOME/.lumera/data
curl -L https://snapshot-t.vinjan.xyz/lumera/latest.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.lumera
mv $HOME/.lumera/priv_validator_state.json.backup $HOME/.lumera/data/priv_validator_state.json
sudo systemctl restart lumerad
sudo journalctl -u lumerad -f -o cat

Check Sync Status

lumerad status 2>&1 | jq

Public API/RPC Endpoints

RPC Endpoint

https://rpc-lumera.onenov.xyz

API Endpoint

https://api-lumera.onenov.xyz

CLI Cheatsheet

Wallet Management

# List all wallets
lumerad keys list

# Recover wallet
lumerad keys add wallet --recover

# Check balance
lumerad q bank balances $(lumerad keys show wallet -a)

# Send tokens
lumerad tx bank send wallet DESTINATION_ADDRESS 1000000ulume --chain-id lumera-testnet-1 --fees=500ulume -y

Validator Management

# Edit validator details
lumerad tx staking edit-validator \
--moniker="NEW_NAME" \
--identity="KEYBASE_ID" \
--website="https://yourwebsite.com" \
--details="Description" \
--from wallet \
--chain-id lumera-testnet-1 \
--fees=500ulume \
-y

# Unjail validator
lumerad tx slashing unjail --from wallet --chain-id lumera-testnet-1 --fees=500ulume -y

# Delegate to self
lumerad tx staking delegate $(lumerad keys show wallet --bech val -a) 1000000ulume --from wallet --chain-id lumera-testnet-1 --fees=500ulume -y

Token Management

# Withdraw rewards
lumerad tx distribution withdraw-all-rewards --from wallet --chain-id lumera-testnet-1 --fees=500ulume -y

# Withdraw rewards to specific wallet
lumerad tx distribution withdraw-rewards VALOPER_ADDRESS --from wallet --chain-id lumera-testnet-1 --fees=500ulume --commission -y

# Check staking rewards
lumerad query distribution rewards $(lumerad keys show wallet -a)

Node Management

# Start node
sudo systemctl start lumerad

# Stop node
sudo systemctl stop lumerad

# Restart node
sudo systemctl restart lumerad

# Check logs
journalctl -fu lumerad -o cat

# Check sync status
lumerad status 2>&1 | jq