BITCANNA NODE INSTALL

It is assumed that you have already upgraded your host and secured your ssh access and all ports.

We’re going to install the pre-requisites, then we’ll install and configure Go and finally we’ll install bcnad, configure it and run it from our snapshot.

Install pre-requisites

sudo apt update
sudo apt install git build-essential ufw curl jq lz4 --yes

Install Go

wget https://go.dev/dl/go1.20.2.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.20.2.linux-amd64.tar.gz
rm go1.20.2.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
cat <> ~/.profile
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source ~/.profile
go version

You will receive this response:
go version go1.20.2 linux/amd64

Install bcnad
git clone https://github.com/BitCannaGlobal/bcna.git
cd bcna
git checkout v3.0.2
make install
bcnad version


You will receive this response:
3.0.2
Init bcnad
# CHANGE $NODE_NAME with your “node name”
bcnad config chain-id bitcanna-1
bcnad init "$NODE_NAME" --chain-id bitcanna-1
Pruning Setting

sed -i 's|^minimum-gas-prices *=.*|minimum-gas-prices = "0.0026ubcna"|g' $HOME/.bcna/config/app.toml
sed -i 's|^pruning *=.*|pruning = "custom"|g' $HOME/.bcna/config/app.toml
sed -i 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|g' $HOME/.bcna/config/app.toml
sed -i 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|g' $HOME/.bcna/config/app.toml
sed -i 's|^pruning-interval *=.*|pruning-interval = "10"|g' $HOME/.bcna/config/app.toml
sed -i 's|^indexer *=.*|indexer = "null"|g' $HOME/.bcna/config/config.toml

Download Genesis and Addrbook
rm $HOME/.bcna/config/genesis.json
wget https://snapshot.safeblock.space/bitcanna/genesis.json -P $HOME/.bcna/config
wget https://snapshot.safeblock.space/bitcanna/addrbook.json -P $HOME/.bcna/config
Create Bitcanna Service

# CHANGE $USER with your “username”
sudo tee /etc/systemd/system/bcnad.service > /dev/null << EOF

[Unit]
Description=Bitcanna
After=network-online.target
[Service]
User=$USER
ExecStart=/home/$USER/go/bin/bcnad start
Restart=always
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

Start by Snapshot or Statesync

Before starting your node, choose whether to download the blocks from a Snapshot or from a Statesync.
After you set up the snapshot or statesync, come back here to start your node.

Start Bitcanna Service

Enable bitcanna in background:
sudo systemctl enable bcnad

Start bitcanna in background:
sudo systemctl start bcnad

Check Bitcanna Service

sudo journalctl -fu bcnad -o cat
# Ctrl+C to exit

sudo journalctl -fu bcnad -o cat | grep index
# Ctrl+C to exit

curl -s http://0.0.0.0:26657/status | jq -r .result.sync_info.catching_up

If response is “true”, you not are synched, wait….
When response is “false”, your node are synched to Bitcanna Network

BITCANNA SNAPSHOT SETUP

# INSTALL LZ4
sudo apt update
sudo apt install lz4 -y
# STOP BITCANNA NODE
sudo systemctl stop bcnad
# KEYS BACKUP
# If you are a Validator remember to backup your keys priv_validator_key.json and node_key.json
mkdir $HOME/backup
cp $HOME/.bcna/config/priv_validator_key.json $HOME/backup
cp $HOME/.bcna/config/node_key.json $HOME/backup
# RESET BITCANNA
bcnad tendermint unsafe-reset-all --home $HOME/.bcna
# PRUNING SETUP
sed -i 's|^pruning *=.*|pruning = "custom"|g' $HOME/.bcna/config/app.toml
sed -i 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|g' $HOME/.bcna/config/app.toml
sed -i 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|g' $HOME/.bcna/config/app.toml
sed -i 's|^pruning-interval *=.*|pruning-interval = "10"|g' $HOME/.bcna/config/app.toml
sed -i 's|^indexer *=.*|indexer = "null"|g' $HOME/.bcna/config/config.toml
# DOWNLOAD AND EXTRACT SNAPSHOT AND ADDRBOOK.JSON
wget https://snapshot.safeblock.space/bitcanna/addrbook.json -P $HOME/.bcna/config
wget https://snapshot.safeblock.space/bitcanna/bitcanna-snapshot_01-03-2024.tar.lz4
lz4 -c -d bitcanna-snapshot_01-03-2024.tar.lz4 | tar -x -C $HOME/.bcna
rm bitcanna-snapshot_01-03-2024.tar.lz4
# START BITCANNA NODE
sudo systemctl start bcnad


# CHECK IF NODE HAS STARTED
sudo journalctl -fu bcnad -o cat
# (Ctrl+C To Exit)

sudo journalctl -fu bcnad -o cat | grep index

# (Ctrl+C To Exit)

http://0.0.0.0:26657/status | jq -r .result.sync_info.catching_up

If response is “true”, you not are synched, wait….
When response is “false”, your node are synched to Bitcanna Network

Relayer

Safe Block Validators

Stake with us and earn rewards everyblock
PRICE0,058 $
STAKING APR16,24 %
LOCKUP14 days
Locked: 117˙000,39 $
PRICE0,014 $
STAKING APR43,59 %
LOCKUP14 days
Locked: 17˙668,06 $
PRICE0,013 $
STAKING APR20.86 %
LOCKUP21 days
Locked: 11˙664,57 $
PRICE398.57 $
VALIDATORS32
HOSTED0
Locked: 12,754.24 $
PRICE0,070 $
STAKING APR61,53 %
LOCKUP21 days
Locked: 77˙898,56 $
PRICE0,873 $
STAKING APR20.4 %
LOCKUP7 days
Locked: 159˙756,41 $
SGE
PRICE0,213 $
STAKING APR12,76 %
LOCKUP14 days
Locked: 1˙173˙178,59 $