🟢Shardeum

Pre-requisites

Before starting the installation, ensure you meet the following requirements:

  • Hardware Requirements:

    • CPU: 4 cores

    • RAM: 16 GB

    • Storage: SSD with 100 GB of free space

    • Operating System: Linux (Ubuntu 20.04 or higher)

    • Network: High-speed internet with at least 1 Gbps bandwidth

  • Software Requirements:

    • Docker: Ensure that Docker is installed on your system. If not, you can install it with:

      sudo apt update
      sudo apt install docker.io
      sudo systemctl enable docker
      sudo systemctl start docker
  • Account Setup:

    • Wallet Address: You need a Shardeum wallet address to receive staking rewards.

    • SHM Tokens: You will need SHM tokens to stake and run the validator. Acquire SHM from exchanges or through the faucet if you are participating in a testnet.

Step 1: Install Required Dependencies

Update your system and install required dependencies like curl and git:

sudo apt update && sudo apt upgrade -y
sudo apt install curl git -y

Step 2: Download and Run the Shardeum Node Installer

To simplify the process, Shardeum provides a node installer. First, clone the installer repository from GitHub:

git clone https://github.com/shardeum/validator-node.git

Navigate to the downloaded directory:

cd validator-node

Run the installer:

./install.sh

This script will prompt you to enter certain parameters like your node name, wallet address, and the number of SHM tokens you plan to stake. Follow the on-screen instructions carefully.

Step 3: Configure the Node

Once the installation is complete, you will need to configure your validator node. During the installation process, you will be asked to set up the following parameters:

  • Node Name: Provide a unique name for your validator node.

  • Wallet Address: Input your Shardeum wallet address where rewards will be deposited.

  • Stake Amount: Enter the number of SHM tokens you are staking. This should be at least the minimum required amount (consult Shardeum's current requirements).

After configuring these options, the system will automatically set up your node.

Step 4: Start Your Validator Node

Once the configuration is done, you can start your validator node using Docker. To check if the setup was successful, run:

docker ps

This will show a list of running Docker containers. Look for your Shardeum validator node in the list.

If the node is not running, you can start it with the following command:

docker-compose up -d

Step 5: Monitor Your Validator Node

Shardeum provides a dashboard to monitor your node. You can access it by navigating to http://localhost:8080 or through the external IP address of your server.

  • Node Status: Ensure your node is properly connected to the network and syncing blocks.

  • Earnings: You can track how many SHM tokens you've earned through validation.

Step 6: Staking SHM Tokens

Once your node is up and running, stake your SHM tokens to become an active validator. Use the Shardeum wallet interface or CLI tool to stake your tokens.

  1. Go to the staking dashboard.

  2. Connect your wallet.

  3. Enter the amount of SHM tokens you want to stake.

  4. Confirm the transaction.

After staking, your node will start validating transactions and earning rewards.

Step 7: Node Maintenance and Updates

To ensure your node continues running smoothly, regularly update both Docker and your Shardeum node software. You can update your node by pulling the latest version from the repository:

cd validator-node
git pull
./install.sh

Restart the Docker containers after updating:

docker-compose down
docker-compose up -d

Additionally, make sure to periodically check your node's status via the dashboard and ensure it's running without issues.


Common Troubleshooting

  1. Low Disk Space: Ensure you have enough disk space for the blockchain data.

  2. Sync Issues: If your node is not syncing properly, check your internet connection and restart the node.

  3. Node Crashing: Check Docker logs for any errors. Restarting Docker often resolves temporary issues.

docker logs <container-id>

Replace <container-id> with your node's Docker container ID.

Last updated