As mentioned in my previous post, I wanted to document how to set up a Harmony ONE validator node.

Harmony actually offers an easy to follow step-by-step instruction page( so I’m not going to repeat anything mentioned there.

I however will document a few things based on my own experience.

Hardware requirement and cost

Below is from Harmony

CPU: for shard 0 nodes, 4 dedicated cores is recommended. If you use a VPS with shared CPU, at least 8 cores with 50%+ CPU credit. For shard 1,2,3 the requirement can be halved.

RAM Memory: 8GB

Storage: 185GB for Shard 0 (as of 14/09/2021). Extra 15GB for Shard 1, 2 and 3 (because when you setup a node on Shard 1, 2 or 3, you also need to download the shard 0 database.

OS: Latest Ubuntu Linux (LTS Version)

Network: 100M+ bandwidth, 5~6 TB data usage per month

I setup a Shard 1 node with 4 vCPU, 8Gb Mem and 256Gb balanced disk on a Google VM. The estimated cost was AUD $4 per day for the machine however Google also charged network data so the average cost was about AUD $25 a day at the end for running such a node, this is EXPENSIVE.

Validator election

I finished setting up the node fairly quickly(within 2 hours), this didn’t include the time for downloading Shard data (about 45 minutes).

After a couple of days I realised it’s impossible to get my tiny node elected as Harmony uses a simple rule to select a node: the top 800 BLS (i.e. 200 BLS each shard) who have the biggest number of staked coins. Given the current average staked coins is 4 Million/BLS, my node with the minimum required 10k coins simply had no chance. I saw occasionally a node with 400K get elected but this probably happened when a large player was doing their server maintenance. To guarantee the election, you’d need at least 4 Million coins and given its current price 30 cents(11/10/2021), we’re talking about 1.2 Million AUD if you want to do this as a serious business.


Being a validator node is not practical (unless you have enough people to delegate their coins to your node or you can invest 1.2 Million AUD yourself) therefore being a delegator is most likely you’ll be, below are the most common commands for a delegator:

Address to check staking status

check balance
./hmy --node="" balances YOUR_ONE_ADDRESS

collecting rewards: 
./hmy --node="" staking collect-rewards \
--delegator-addr YOUR_ONE_ADDRESS --passphrase

delegate your coins
./hmy --node="" staking delegate \
    --delegator-addr YOUR_ONE_ADDRESS  --validator-addr VALIDATOR_ONE_ADDRESS \
    --amount NUMBER_OF_COINS_TO_STAKE --passphrase

--undelegate your coins
./hmy --node="" staking undelegate \
    --delegator-addr YOUR_ONE_ADDRESS  --validator-addr VALIDATOR_ONE_ADDRESS \
    --amount NUMBER_OF_COINS_TO_STAKE --passphrase

Happy staking!

Setting Up a Harmony ONE Validator Node and My Reflection
Tagged on:                 

Leave a Reply

Your email address will not be published.

3 + 3 =

This site uses Akismet to reduce spam. Learn how your comment data is processed.