Setting up a validator

How to set up a validator in shentud

Pre-Requisites

A validator can be run on a VPS or Dedicated server/VM Minimum requirements: 4 physical core CPU Memory: 8GB+ Disk: SSD - 500GB+ Ubuntu 18.04 +

Make sure to create/import a cli wallet before trying to publish the node.

Setting up the Validator from scratch

  1. Download the latest release This can be found at : https://github.com/shentufoundation/shentu/releases

  2. Run the shentud binary to

  3. Download the new genesis.

    wget https://raw.githubusercontent.com/ShentuChain/mainnet/main/shentu-2.2/genesis.json.
  4. Place the genesis under .shentud/config

    mv genesis.json ~/.shentud/config/genesis.json
  5. Add the seed nodes in config/config.toml. These can be found at : https://github.com/shentufoundation/mainnet/blob/main/shentu-2.2/seeds.txt

    example :

    seeds = "bc9bbcae77a09b41417f597965f6fcbb8b280892@52.71.99.85,fd2944af442b18dab4ce50d8e001816a38490d56@54.158.108.97,3edd4e16b791218b623f883d04f8aa5c3ff2cca6@shentu-seed.panthea.eu:36656"
  6. Unzip/Unpack the snapshot into your .shentud directory.

  7. Start shentud daemon.

  8. (Optional) Run Shentud daemon as a system service

    save the following content as shentud.service under /etc/systemd/system/

    [Unit]
    Description=Shentud Daemon
    After=network-online.target
    
    [Service]
    User=ubuntu
    ExecStart=/home/ubuntu/shentud start --home /home/ubuntu/.shentud
    Restart=always
    RestartSec=3
    LimitNOFILE=4096
    [Install]
    WantedBy=multi-user.target

    remember to replace the User to your corresponding username. remember to replace the ExecStart to your corresponding path.

  9. Enable and start shentud system service.

    sudo systemctl enable shentud
    sudo systemctl start shentud
  10. If you see that you are on the height of the chain (check log) you can progress with publishing your validator to the chain.

  11. Make sure you have a wallet imported or created. See Creating a CLI wallet

  12. Keep in mind that the minimum staked amount is 1 CTK this is 1000000uctk

    example:

    shentud tx staking create-validator \
    --amount <your-amount-to-stake>uctk \
    --commission-max-change-rate 0.01 \
    --commission-max-rate 0.2 \
    --commission-rate 0.1 \
    --from <your-wallet-name> \
    --min-self-delegation 1 \
    --moniker <your-moniker> \
    --pubkey $(shentud tendermint show-validator) \
    --chain-id shentu-2.2 \
    --fees 5000uctk

Last updated