This guide covers common issues and their solutions when running KalyChain nodes.
- Service fails to start
- Immediate exit after startup
- Error messages in logs
-
Check Java Version
java -version # Should show OpenJDK 21If wrong version, install Java 21:
sudo apt update sudo apt install openjdk-21-jre-headless -y
-
Verify File Permissions
# Check besu binary permissions ls -la ~/besu/bin/besu # Should be executable (-rwxr-xr-x) # Fix if needed chmod +x ~/besu/bin/besu
-
Check Configuration Files
# Verify genesis file exists ls -la ~/node/genesis.json # Verify config file path in service sudo systemctl cat kaly.service
-
Check Network Connectivity
# Test bootnode connectivity telnet 169.197.143.193 30303 telnet 169.197.143.209 30303 -
Verify Bootnodes
# Check if bootnodes are in config grep -i bootnode ~/node-install/configs/*/config.toml
-
Check Disk Space
df -h # Ensure sufficient space for blockchain data
-
Check System Resources
# Monitor CPU and memory usage htop # Check I/O wait iostat -x 1
-
Optimize Configuration
- Increase memory allocation if available
- Use SSD storage for better performance
- Ensure stable internet connection
-
Check Service Status
sudo systemctl status kaly.service
-
Test RPC Endpoint
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \ http://localhost:8545 -
Check Firewall
sudo ufw status # Ensure ports 8545 and 8546 are allowed
-
Renew Let's Encrypt Certificate
sudo certbot renew sudo systemctl reload nginx
-
Check Certificate Status
sudo certbot certificates
-
Check Validator Status
# Get node info curl -X POST --data '{"jsonrpc":"2.0","method":"admin_nodeInfo","params":[],"id":1}' \ http://localhost:8545
-
Verify Validator Registration
- Check if your validator address appears on KalyScan
- Ensure you've been voted in by existing validators
-
Monitor Uptime
# Check service uptime sudo systemctl status kaly.service # Check logs for errors sudo journalctl -u kaly.service -f
# Real-time logs
sudo journalctl -u kaly.service -f
# Last 100 lines
sudo journalctl -u kaly.service -n 100
# Logs from specific time
sudo journalctl -u kaly.service --since "2024-01-01 00:00:00"INFO | PersistBlockTask | Imported block
INFO | EthScheduler | Block processing completed
WARN | P2PNetwork | Peer disconnected
ERROR | BesuController | Failed to start
-
Increase File Descriptors
# Add to /etc/security/limits.conf echo "* soft nofile 65536" | sudo tee -a /etc/security/limits.conf echo "* hard nofile 65536" | sudo tee -a /etc/security/limits.conf
-
Optimize Network Settings
# Add to /etc/sysctl.conf echo "net.core.rmem_max = 134217728" | sudo tee -a /etc/sysctl.conf echo "net.core.wmem_max = 134217728" | sudo tee -a /etc/sysctl.conf sudo sysctl -p
-
Use SSD Storage
- Move data directory to SSD if using HDD
- Ensure sufficient IOPS for database operations
-
Regular Maintenance
# Check database size du -sh ~/node/data # Monitor growth rate df -h
-
Stop Node
sudo systemctl stop kaly.service
-
Backup Current Data
mv ~/node/data ~/node/data.backup.$(date +%Y%m%d)
-
Resync from Genesis
mkdir ~/node/data sudo systemctl start kaly.service
- Restore from Repository
# Re-clone repository git clone https://github.com/KalyCoinProject/node-install.git # Copy configuration files cp node-install/configs/[node-type]/* ~/node/
- Check logs for error messages
- Verify system requirements are met
- Test basic connectivity to bootnodes
- Review recent changes to configuration
- 💬 Discord: KalyChain Community
- 📱 Telegram: Support Group
- 🐛 GitHub Issues: Report Bugs
When asking for help, please provide:
- Node type (validator/regular/RPC)
- Operating system and version
- Hardware specifications
- Error messages from logs
- Steps you've already tried