During Testnet Phase III, validators will be admitted in a permissioned way.
This guide will help you set up and run a Cysic Network validator node, including system requirements, installation configuration, node startup, private key generation, staking operations, and node monitoring.
System Requirements
Minimum Hardware Requirements
CPU: 4 cores (8 cores recommended)
Memory: 8 GB RAM (16 GB recommended)
Storage: 200 GB SSD (500 GB recommended for long-term operation)
Network: Stable internet connection with P2P communication support
Software Requirements
Operating System: Linux (Ubuntu 20.04+ recommended)
Docker: >= 20.10.0
Docker Compose: >= 1.29.0
Git: Latest version
Port Requirements
Ensure the following ports are available:
26657: Tendermint RPC
26656: Tendermint P2P
8545: Ethereum JSON-RPC
8546: Ethereum WebSocket
1317: Cosmos REST API
9090: gRPC API
6065: Metrics (optional)
Download Configuration Files
# Create data directory
mkdir -p /data && cd /data
# Download configuration files
wget https://statics.prover.xyz/testnet_node.tar.gz
# Extract configuration files
tar -zxvf testnet_node.tar.gz
Download Data Snapshot
# Download snapshot
wget https://statics.prover.xyz/data.tar.gz
# Remove existing data directory
rm -rf node/cysicmintd/data
# Extract snapshot to data directory
tar -zxvf data.tar.gz -C node/cysicmintd
Pull Docker Image
docker-compose pull
Start Node with Docker Compose
1. Configure Docker Compose
Modify the docker-compose.yml file according to your needs. Here's a single-node configuration example:
# Check node status
curl http://localhost:26657/status
# Check node information
curl http://localhost:26657/abci_info
Generate Private Key
1. Generate Key in Container
# Enter running container
docker exec -it node bash
# Generate new validator key
./cysicmintd keys add validator-xxx --home ./cysicmint --keyring-backend test
**Important** write this mnemonic phrase in a safe place.
It is the only way to recover your account if you ever forget your password.
rocket athlete cage target walnut behave slow short fire fiscal neither apology reason boy stem lawsuit bird vessel arm among sugar jealous clerk exclude
# Verify generated node ID and validator public key
./cysicmintd tendermint show-node-id --home ./cysicmint --keyring-backend test
./cysicmintd tendermint show-validator --home ./cysicmint --keyring-backend test
2. Backup Private Key
# Export private key (Important: Keep it safe!)
./cysicmintd keys export validator-xxx --home ./cysicmint --keyring-backend test
3. Get Validator Address
# Get validator address
./cysicmintd keys show validator-xxx --home ./cysicmint --keyring-backend test -a
# Get validator operator address
./cysicmintd keys show validator-xxx --home ./cysicmint --keyring-backend test --bech=val -a
Staking Operations to Increase Validator Power
1. Get Tokens
Check balance
# Check account balance
./cysicmintd query bank balances $(./cysicmintd keys show validator-xxx --home ./cysicmint --keyring-backend test -a)
*** Please contact the Cysic team to obtain testnet staking tokens ***
2. Create Validator
Use the stake-as-validator command to create a validator and self-stake:
# List all keys
./cysicmintd keys list --keyring-backend test
# Recover key
./cysicmintd keys add validator-xxx --recover --keyring-backend test
# Delete key
./cysicmintd keys delete validator-xxx --keyring-backend test
Staking Management
# Unbond stake
./cysicmintd tx staking unbond \
$(./cysicmintd keys show validator-xxx --keyring-backend test --bech=val -a) \
1000000000000000000CGT \
--from validator \
--keyring-backend test \
--chain-id cysicmint_9001-1
# Withdraw rewards
./cysicmintd tx distribution withdraw-all-rewards \
$(./cysicmintd keys show validator-xxx --keyring-backend test --bech=val -a) \
--from validator \
--keyring-backend test \
--chain-id cysicmint_9001-1
Troubleshooting
Common Issues
Node Cannot Sync
Check network connection
Verify configuration files
Clear data and resync
Validator Not in Active Set
Check if staking amount is sufficient
Confirm validator is not jailed
Check staking status of other validators in the network