Run a Full Node
A full node verifies blocks, relays network data, and can optionally serve RPC endpoints for developers, dApps, and testing environments. Full nodes do not participate in consensus and do not require staking or validator setup.
Ensure you are using the correct testnet configuration, including chain ID, genesis file, and peers. Incorrect values may prevent your node from syncing.
1. System Requirements
Recommended:
- OS: Ubuntu 22.04 LTS
- CPU: 4 cores
- RAM: 8–16 GB
- Storage: 500 GB+ NVMe SSD
- Network: 100 Mbps
- Dependencies: git, jq, curl, make, build-essential, pkg-config
- Go: v1.25+
Install dependencies:
2. Install Shardeum Node Binary
Verify:
3. Environment Variables
4. Initialize the Node
Choose a node ID and moniker (ASCII only):
Chain ID: Refer to the latest testnet configuration in the repository
5. Copy Genesis File
6. Start and Sync the Node
Start:
Note: Initial sync may take time depending on your hardware and network conditions.
Monitor:
Or tail the log:
Wait until fully synced.
Ensure your node is connected to peers. Without peers, the node will not sync. Refer to the repository or official documentation for the latest seeds or peer configuration.
7. Optional: Run as systemd Service
Create service:
Example:
Enable:
8. Optional: Enable JSON-RPC
Edit config/app.toml inside your node directory:
Restart the node if using systemd.
9. Firewall Configuration
For public exposure, restrict JSON-RPC access to trusted IPs or use a reverse proxy.
10. Optional: Pruning Settings
Full nodes can reduce storage usage.
Default:
Custom:
Restart node after making changes.
11. Node Management Commands
Sync Status
Node ID
Check Peers
Logs
Or
Stop Node
Or
12. Troubleshooting
Node Won’t Sync
- Check peer connections
- Verify testnet chain ID and genesis file
- Ensure correct network configuration
- Verify time sync (NTP):
timedatectl status - Check port 27656 is open
Out of Disk Space
- Enable pruning in
app.toml - Increase disk size
- Avoid archive mode unless required
RPC Not Responding
- Check firewall rules
- Verify JSON-RPC settings
- Confirm node is fully synced
- Restart node/service
13. Important Notes
- EVM Chain ID:
8119 - Network: Testnet (configuration may change)
- Genesis File: Use latest from repository
- Archive Mode: Use
pruning = "nothing"only if required - Backups: Back up
node_key.jsonsecurely
Full Node Setup Complete
Your Shardeum testnet full node is now running and contributing to network testing and infrastructure. You may use it for:
- dApp testing and development
- RPC infrastructure
- Network experimentation and validation