Mainnet
Aura Network
Stake With Us
Installation Guide
Tendermint CLI
Public Endpoint
State Sync
Snapshot
Custom Explorers
Stake With Us
Stake With Us
Installation Guide
Tendermint CLI
Public Endpoint
State Sync
Snapshot
Custom Explorers
How To Install Full Node Aura Network Mainnet
Setting up vars
Your Nodename (validator) that will shows in explorer
NODENAME=<Your_Nodename_Moniker>
Save variables to system
echo "export NODENAME=$NODENAME" >> $HOME/.bash_profile
if [ ! $WALLET ]; then
echo "export WALLET=wallet" >> $HOME/.bash_profile
fi
echo "export AURA_CHAIN_ID=xstaxy-1" >> $HOME/.bash_profile
source $HOME/.bash_profile
Update packages
sudo apt update && sudo apt upgrade -y
Install dependencies
sudo apt install curl build-essential git wget jq make gcc tmux net-tools ccze -y
Install go
if ! [ -x "$(command -v go)" ]; then
ver="1.19.4"
cd $HOME
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
fi
Download and build binaries
cd $HOME
git clone --branch aura_v0.4.4 https://github.com/aura-nw/aura
cd aura && make
Config app
aurad config chain-id $AURA_CHAIN_ID
Init app
aurad init $NODENAME --chain-id $AURA_CHAIN_ID
Download configuration
cd $HOME
curl -s https://raw.githubusercontent.com/aura-nw/mainnet-artifacts/main/xstaxy-1/genesis.json > $HOME/.aura/config/genesis.json
jq -S -c -M '' $HOME/.aura/config/genesis.json | sha256sum
# this should return
# 90b9404d38167e3b40f56ddc11a1565f0107b89008742425e44905871699febc -
Set seeds and peers
seeds="22a0ca5f64187bb477be1d82166b1e9e184afe50@18.143.52.13:26656,0b8bd8c1b956b441f036e71df3a4d96e85f843b8@13.250.159.219:26656"
peers="ced3a13f4f7200ce1a2392a5738c88532f794359@mainnet-aura.konsortech.xyz:25656"
sed -i -e 's|^seeds *=.*|seeds = "'$seeds'"|; s|^persistent_peers *=.*|persistent_peers = "'$peers'"|' $HOME/.bcna/config/config.toml
Disable indexing
indexer="null"
sed -i -e "s/^indexer *=.*/indexer = \"$indexer\"/" $HOME/.aura/config/config.toml
Config pruning
pruning="custom"
pruning_keep_recent="100"
pruning_keep_every="0"
pruning_interval="50"
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.aura/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.aura/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.aura/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.aura/config/app.toml
Set minimum gas price
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.001uaura\"|" $HOME_PATH/config/app.toml
Create service
sudo tee /etc/systemd/system/aurad.service > /dev/null <<EOF
[Unit]
Description=aura
After=network-online.target
[Service]
User=$USER
ExecStart=$(which aurad) start --home $HOME/.aura
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Register and start service
sudo systemctl daemon-reload
sudo systemctl enable aurad
sudo systemctl restart aurad && sudo journalctl -u aurad -f -o cat
Guidence for create validator
Create wallet
To create new wallet you can use command below. Don’t forget to save the mnemonic
aurad keys add $WALLET
To recover your wallet using seed phrase
aurad keys add $WALLET --recover
Show your wallet list
aurad keys list
Save wallet info
Add wallet and validator address into variables
AURA_WALLET_ADDRESS=$(aurad keys show $WALLET -a)
AURA_VALOPER_ADDRESS=$(aurad keys show $WALLET --bech val -a)
echo 'export AURA_WALLET_ADDRESS='${AURA_WALLET_ADDRESS} >> $HOME/.bash_profile
echo 'export AURA_VALOPER_ADDRESS='${AURA_VALOPER_ADDRESS} >> $HOME/.bash_profile
source $HOME/.bash_profile
Create validator
check your wallet balance:
aurad query bank balances $AURA_WALLET_ADDRESS
To create your validator run command below
aurad tx staking create-validator \
--amount 100000uaura \
--from $WALLET \
--commission-max-change-rate "0.01" \
--commission-max-rate "0.2" \
--commission-rate "0.07" \
--min-self-delegation "1" \
--pubkey $(aurad tendermint show-validator) \
--moniker $NODENAME \
--chain-id $AURA_CHAIN_ID
Check your validator key
[[ $(aurad q staking validator $AURA_VALOPER_ADDRESS -oj | jq -r .consensus_pubkey.key) = $(aurad status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "\n\e[1m\e[32mTrue\e[0m\n" || echo -e "\n\e[1m\e[31mFalse\e[0m\n"
Get list of validators
aurad q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
Usefull commands
Service management
Check logs
journalctl -fu aurad -o cat
Start service
sudo systemctl start aurad
Stop service
sudo systemctl stop aurad
Restart service
sudo systemctl restart aurad
Node info
Synchronization info
aurad status 2>&1 | jq .SyncInfo
Validator info
aurad status 2>&1 | jq .ValidatorInfo
Node info
aurad status 2>&1 | jq .NodeInfo
Show node id
aurad tendermint show-node-id
Wallet operations
List of wallets
aurad keys list
Recover wallet
aurad keys add $WALLET --recover
Delete wallet
aurad keys delete $WALLET
Get wallet balance
aurad query bank balances $AURA_WALLET_ADDRESS
Transfer funds
aurad tx bank send $AURA_WALLET_ADDRESS <TO_AURA_WALLET_ADDRESS> 100000uaura
Voting
aurad tx gov vote 1 yes --from $WALLET --chain-id=$AURA_CHAIN_ID
Staking, Delegation and Rewards
Delegate stake
aurad tx staking delegate $AURA_VALOPER_ADDRESS 100000uaura --from=$WALLET --chain-id=$AURA_CHAIN_ID --gas=auto
Redelegate stake from validator to another validator
aurad tx staking redelegate <srcValidatorAddress> <destValidatorAddress> 100000uaura --from=$WALLET --chain-id=$AURA_CHAIN_ID --gas=auto
Withdraw all rewards
aurad tx distribution withdraw-all-rewards --from=$WALLET --chain-id=$AURA_CHAIN_ID --gas=auto
Withdraw rewards with commision
aurad tx distribution withdraw-rewards $AURA_VALOPER_ADDRESS --from=$WALLET --commission --chain-id=$AURA_CHAIN_ID
Validator management
Edit validator
aurad tx staking edit-validator \
--moniker=$NODENAME \
--identity=<your_keybase_id> \
--website="<your_website>" \
--details="<your_validator_description>" \
--chain-id=$AURA_CHAIN_ID \
--from=$WALLET
Unjail validator
aurad tx slashing unjail \
--broadcast-mode=block \
--from=$WALLET \
--chain-id=$AURA_CHAIN_ID \
--gas=auto
RPC
https://mainnet-aura-rpc.konsortech.xyz
API
https://mainnet-aura-api.konsortech.xyz
Peers
ced3a13f4f7200ce1a2392a5738c88532f794359@mainnet-aura.konsortech.xyz:25656
State Sync
sudo systemctl stop aurad
cp $HOME/.aura/data/priv_validator_state.json $HOME/.aura/priv_validator_state.json.backup
aurad tendermint unsafe-reset-all --home $HOME/.aura --keep-addr-book
SNAP_RPC="https://mainnet-aura-rpc.konsortech.xyz:443"
LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \
BLOCK_HEIGHT=$((LATEST_HEIGHT - 1000)); \
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)
echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH
peers="ced3a13f4f7200ce1a2392a5738c88532f794359@mainnet-aura.konsortech.xyz:25656"
sed -i 's|^persistent_peers *=.*|persistent_peers = "'$peers'"|' $HOME/.aura/config/config.toml
sed -i -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$SNAP_RPC,$SNAP_RPC\"| ; \
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"|" $HOME/.aura/config/config.toml
mv $HOME/.aura/priv_validator_state.json.backup $HOME/.aura/data/priv_validator_state.json
sudo systemctl restart aurad
sudo journalctl -u aurad -f --no-hostname -o cat
Daily Snapshot (Every 12 Hours)
sudo systemctl stop aurad
cp $HOME/.aura/data/priv_validator_state.json $HOME/.aura/priv_validator_state.json.backup
rm -rf $HOME/.aura/data
SNAP_NAME=$(curl -s https://snapshot2.konsortech.xyz/aura/ | egrep -o ">aura-snapshot.*\.tar.lz4" | tr -d ">")
curl https://snapshot.konsortech.xyz/aura/${SNAP_NAME} | lz4 -dc - | tar -xf - -C $HOME/.aura
mv $HOME/.aura/priv_validator_state.json.backup $HOME/.aura/data/priv_validator_state.json
sudo systemctl restart aurad && journalctl -u aurad -f --no-hostname -o cat