Validator Setup

Agoric Node

Agoric is a layer-1 blockchain based on the Cosmos network. The main feature of the project is the ability to create smart contracts with the use of JavaScript. It makes the integration of developers from Web2 to Web3 much easier and expands the ecosystem significantly. Agoric's native token is BLD.

Minimum hardware requirements:

  • 16 GB RAM

  • 4 cores/ vCPU

  • 100GB SSD

  • Ubuntu 20.04

Server preparation:

Before running the node on the server, it's necessary to install Node.js, Yarn, Go and update the system.

Add a package repository Node.js

curl -Ls https://deb.nodesource.com/setup_16.x | sudo bash

Download the package repository Yarn

curl -Ls https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

Update the system and download the building tools

sudo apt -q update
sudo apt -qy install curl git jq lz4 build-essential nodejs=16.* yarn
sudo apt -qy upgrade

Install Go

Node installation:

The node installation process is much easier with the use of previously taken snapshot. We use our variant of snapshot in this guide. You can change ports, seeds, the minimum gas price and the snapshot, if you want.

Clone the project repository

Install Agoric Javascript packages

Integrate Agoric Cosmos SDK support

Prepare binaries for Cosmovisor

Create application symlinks

Download and install Cosmovisor

Create service

Set up node configurations

Initialize the node

Instead of NODE_NAME, enter your name of the node.

Add the genesis and addrbook files

Add seeds

Set the minimum gas price

Add custom ports

Download the snapshot

Run the node

Checking and syncing

After installation, the node has to be synchronized.

Check the sync status

If everything is set up correctly, the response will be something like:

Complete sync

The node is synchronized when "latest_block_height" catches up with the last block in the network. At that moment "catching_up" will change from true to false.

For monitoring, you can use the script:

When the synchronization is completed, the terminal will say "Caught up"

Check logs (if errors occur)

Key addition.

For further work keys/wallets are necessary.

Create a new key

Change KEY_NAME to the name of your key. Add a password and save the mnemonic phrase.

Add an existing key

List all keys

Delegation to the validator

Change the following parameters:

- OPERATOR_ADRESS - enter the address of the validator, for example, the w3coins address:

- AMOUNT - enter the number of delegated tokens in the ubld value (1BLD = 1000000UBLD), for example:

- KEY_NAME - enter your key name

Last updated