Anoma testnet (Feigenbaum) — installation guidelines

AleksandrZP
3 min readJan 14, 2022

System requirements

According to their documentation, we need VPS with 16Gb RAM and one from the recent CPU like Intel i3, no info about the disk,

I`d recommend using SSD only, within 200Gb or more

OS Ubuntu 21 >>

# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 21.04
Release: 21.04
Codename: hirsute
:~#

My VPS is hosted on the Contabo hosting

After you get SSH access to your VPS server we are ready to start to install Anoma node

  1. Pre-installation step
  • let`s install all requirements and perform update all packages:
# apt update && sudo apt upgrade -y
# apt install make clang pkg-config libssl-dev libclang-dev build-essential git curl ntp jq llvm screen
  • Installation Rust, you will see the installations menu, choose the first (press 1), and press enter
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
>>
1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
>

2. Installation node

# source $HOME/.cargo/env
# cd $HOME
# git clone https://github.com/anoma/anoma.git
# cd $HOME/anoma
Check the version:
# git checkout v0.2.0

Let`s create a screen session to have the ability to connect to the installation process even we`ll lost the SSH connection to VPS:

# screen -S anoma.node 
# cp -a $HOME/anoma/wasm $HOME/wasm
# cd $HOME/anoma
# make install
# cd $HOME
# anoma client utils join-network --chain-id=anoma-feigenbaum-0.ebb9e9f9013

Wait while the installation to complete.

3. Post-configuration steps

Let`s generate keys and create a wallet:

# anoma wallet key gen --alias walletname
No wallet found at ".anoma/anoma-feigenbaum-0.ebb9e9f9013/wallet.toml". Creating a new one.
Enter encryption password:***********
Successfully added a key and an address with alias: "walletname"
#

Let`s start a node and wait while it will be synced, to start a local Anoma ledger node, run:

# anoma ledger

for the best way to start a node I`d recommend using it as a service, to create it please perform the next steps:

# cd $HOME# tee <<EOF >/dev/null $HOME/anomad.service
[Unit]
Description=Anoma
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME
ExecStart=$(which anoman) --wasm-dir $HOME/wasm/ --base-dir $HOME/.anoma/ ledger
Restart=always
RestartSec=3
LimitNOFILE=65535
Environment=RUST_BACKTRACE=1
Environment=RUST_BACKTRACE=full
[Install]
WantedBy=multi-user.target
EOF
# mv $HOME/anomad.service /etc/systemd/systemecho "Storage=persistent" >> /etc/systemd/journald.conf# systemctl restart systemd-journald && systemctl daemon-reload
# systemctl restart anomad
# systemctl satus anomad

if you choose a service, you can not use a screen tool to run it

For logs monitor, you can use journalctl tool, something like this:

# journalctl -u anomad -f

After complete synchronization, we should send a transaction to initialize the account:

# anomac init-account --alias walet alias name--public-key wallet name --source wallet name

Note:

wallet alias — you should input your wallet alias name

wallet name — you should input your wallet name

Now we can get some tokens from the faucet:

# anoma client transfer --source faucet --target your alias name --signer your alias name --token XAN --amount 1000

check balance:

# anoma client balance --token XAN --owner your alias name

Register validator:

# anoma client init-validator --alias validator name --source your wallet alias name

During this process, you will need to enter an encryption password that was created on the previous steps (wallet creation), save an output somewhere:

After successful execution you should see the following information:

Added alias my-validator for address 
atest1v......xxxxxxxx
Added alias my-validator-rewards for address
atest1v.......xxxxxxx

The validator's addresses and keys were stored in the wallet:
Validator address "validator name"
Staking reward address "validator-rewards"
Validator account key "validator-key"
Consensus key "validator-consensus-key"
Staking reward key "validator-rewards-key"
The ledger node has been setup to use this validator's address and consensus key.

Then restart you node.

# systemctl restart anomad

--

--