Bluzelle node setup

Nodesanna
4 min readJul 1, 2020

Hello! I want to make a fast guide to install the node on Linux. There are several points here. First of all we need to update our system & install the necessary updates. Let’s start!

1. OS Setup for Curium

sudo apt-get update
sudo apt-get install build-essential jq

You should not see any errors if everything goes well:

Next download Golang and install it:

wget https://dl.google.com/go/go1.14.linux-amd64.tar.gz 
sudo tar -C /usr/local -xzf go1.14.linux-amd64.tar.gz
No errors? You are good!

Environment paths should be set in your .profile file:

export GOPATH=$HOME/go
export GOBIN=${GOPATH}/bin
export PATH=$PATH:$GOBIN:/usr/local/go/bin

Type goin terminal and if you see something like this, you are on fire!

Now, make new folders and change to one of them:

mkdir -p ~/go/src/github.com/bluzelle
mkdir ~/go/bin
mkdir ~/go/pkg
cd ~/go/src/github.com/bluzelle

Download curium project to this path:

git clone https://github.com/bluzelle/curium.git

And build it!

cd ~/go/src/github.com/bluzelle/curium
make testnet

If success you’ll see this:

You can check if you were successfull:

cd
blzd
blzcli

If you see list of available comands after “blzd” and “blzcli” you are good!

Let’s make firewall rules for our validator. I use ufw tool. These commands set default values, forbidding incoming connections and allowing outgoing connections:

sudo ufw default deny incoming
sudo ufw default allow outgoing

To allow incoming SSH connections on the server, you can use the following command:

sudo ufw allow 22

Enable ufw:

sudo ufw enable

Now I’ll add ports for validator:

sudo ufw allow 26656 
sudo ufw allow 26657
sudo ufw allow 1317

And if you are going to install sentry you should open just 26656 port with sentrie’s ip like this:

sudo ufw allow from <sentrie's ip> to any port 26656

Now let’s create a name for our node and get its id (BLUZELLEONELOVE in my case):

blzd init BLUZELLEONELOVE --chain-id bluzelle  2>&1 | jq .node_id

Now you’v got your node id (bc9c37d77e60d85d1efe0676ee8cd04972b35912):

Now let’s configure our config:

blzcli config chain-id bluzelle
blzcli config output json
blzcli config indent true
blzcli config trust-node true
blzcli config keyring-backend test

I’v got working peers from discord, so let’s edit config.toml to run our validator!

cd .blzd/config/
nano config.toml

Find this line:
# Comma separated list of nodes to keep persistent connections to

And add peers there: “19cad9944b163f9ca451dc4470f9f0d988ac5442@68.183.31.174:26656, e7b0c61bd801db69c3fed0b90df89dbf149e1f9e@150.136.168.209:26656”

Also, find & set “pex = false”:

And “addr_book_strict = false”:

Then press “Ctrl+x” say “yes” and press “Enter”.

Now let’s edit “.blzd/config/app.toml” to set the minimum-gas-prices to “10.0ubnt”:

cd .blzd/config/
nano app.toml

And add “bluzelle_crud = true” at the bottom:

Save changes.

Now let’s create new keypair for our validator:

blzcli keys add vuser

Save your address, pubkey & mnemonic. Use faucet or ask in discord for tokens to your address.

Also you should change you genesis.json to another one (don’t forget to change path (/home/lorriz/.blzd/condig in my case) on yours):

cd /home/lorriz/.blzd/config/
rm genesis.json
curl http://dev.testnet.public.bluzelle.com:26657/genesis | jq ‘.result.genesis’ > genesis.json

And start your node! Let’s make it new screen:

screen
<ctrl+a+c>
blzd start

If you see new blocks running, it means You did everything right!

Meanwhile, create our validator:

blzcli tx staking create-validator \
--amount=1000000000ubnt \
--pubkey=$(blzd tendermint show-validator) \
--website="https://bluzelle.com" \
--details="YOUR_TEXT" \
--security-contact="YOUR_TEXT" \
--identity=YOUR_KEYBASE_ID \
--moniker=BLUZELLEONELOVE \
--commission-rate=0.1 \
--commission-max-rate=0.2 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1 \
--gas=auto --gas-adjustment=1.2 \
--gas-prices=10.0ubnt \
--from vuser

That’s it! You did it! Save your bluzellevaloper address and validate everything ;-)

--

--