Overview
The Validator Kit simplifies the deployment of Mezo nodes with multiple deployment options:- Docker: Containerized deployment
- Native Daemon: Direct system installation
- Kubernetes: Helm charts for orchestration
- Cloud Deployment: AWS, GCP, Azure support
Node Types
- Validator Nodes: Participate in consensus and block production
- RPC Nodes: Provide API endpoints for dApps
- Seed Nodes: Help bootstrap the network
Repository Structure
The Validator Kit repository includes:- Docker Configuration: Container setup and orchestration
- Kubernetes Manifests: Helm charts and K8s resources
- Configuration Templates: Node configuration files
- Monitoring: Prometheus, Grafana, and alerting
- Scripts: Automation and maintenance tools
Hardware Requirements
Minimum Requirements
Validator Node:- CPU: 4 cores
- RAM: 8GB
- Storage: 100GB SSD
- Network: 100 Mbps
- CPU: 2 cores
- RAM: 4GB
- Storage: 50GB SSD
- Network: 50 Mbps
- CPU: 1 core
- RAM: 2GB
- Storage: 20GB SSD
- Network: 10 Mbps
Recommended Requirements
Validator Node:- CPU: 8 cores
- RAM: 16GB
- Storage: 500GB NVMe SSD
- Network: 1 Gbps
For production validator nodes, we strongly recommend using the recommended specifications to ensure optimal performance and reliability.
Installation Methods
Docker Deployment
1
Clone Repository
Clone the validator kit repository:
2
Configure Environment
Copy the example environment file and edit it with your configuration:
3
Start Node
Start your node using Docker Compose:
Native Installation
1
Install Dependencies
Install required dependencies and Go:
2
Build Mezod
Clone and build the mezod client:
3
Configure Node
Initialize your node:
Kubernetes Deployment
1
Install Helm
Install Helm package manager:
2
Deploy with Helm
Deploy your node using the Helm chart:
Configuration
Node Configuration
Environment Variables
.env
Validator Setup
Prerequisites
1
Proof of Authority (PoA)
Apply for validator status through the official channels
2
Stake Requirements
Ensure you meet the minimum stake amount
3
Technical Requirements
Verify your hardware meets the specifications
Validator Configuration
RPC Node Setup
Purpose
RPC nodes provide:- API Endpoints: REST and gRPC APIs
- EVM RPC: Ethereum-compatible JSON-RPC
- WebSocket: Real-time data streams
- Load Balancing: Distribute traffic across nodes
Configuration
docker-compose.yml
Monitoring and Observability
Prometheus Configuration
prometheus.yml
Key Metrics
Monitor these critical metrics for your node:- Block Height: Current blockchain height
- Validator Status: Active/inactive status
- Network Connectivity: Peer connections
- Resource Usage: CPU, memory, disk
- Transaction Throughput: TPS metrics
Alerting Rules
alerts.yml
Security Best Practices
Network Security
1
Firewall Configuration
Configure firewall to allow only necessary ports:
2
Access Control
Restrict RPC access to trusted IPs:
Key Management
- Secure Storage: Use hardware security modules (HSM)
- Backup Strategy: Regular key backups
- Access Control: Limit key access permissions
Maintenance
Regular Tasks
Backup Strategy
1
Configuration Backup
Backup your node configuration:
2
Key Backup
Backup validator keys to a secure location:
Troubleshooting
Common Issues
Sync Issues
Sync Issues
Check sync status and reset if needed:
Connection Problems
Connection Problems
Verify peer connections:
Performance Issues
Performance Issues
Monitor resource usage:
Debug Commands
Development Integration
Local Development
1
Start Local Node
Start a local development node:
2
Connect dApp
Connect your dApp to the local node:
Testing Environment
Additional Resources
- Validator Kit Repository - Main repository
- Mezod Repository - Chain client
- Mezo Nodes Overview - Node operations
- Docker Documentation - Docker reference
- Kubernetes Documentation - K8s reference
For detailed validator requirements, application processes, and advanced configurations, refer to the validator kit repository documentation.
Support
For validator support:- Join the Mezo Discord
- Check the GitHub Issues
- Review the FAQ