Node Requirements
This guide covers hardware and software requirements for running a Monolythium node.
Node Types
| Type | Purpose | Requirements |
|---|---|---|
| Full Node | Sync and query chain | Standard |
| Archive Node | Full history | High storage |
| Validator | Produce blocks | Standard + high uptime |
| Sentry | Protect validator | Standard |
Hardware Requirements
Minimum (Full Node)
| Component | Specification |
|---|---|
| CPU | 4 cores |
| RAM | 8 GB |
| Storage | 200 GB SSD |
| Network | 50 Mbps |
Recommended (Full Node)
| Component | Specification |
|---|---|
| CPU | 8 cores |
| RAM | 16 GB |
| Storage | 500 GB NVMe SSD |
| Network | 100 Mbps |
Validator
| Component | Specification |
|---|---|
| CPU | 8+ cores |
| RAM | 32 GB |
| Storage | 1 TB NVMe SSD |
| Network | 1 Gbps |
Archive Node
| Component | Specification |
|---|---|
| CPU | 8+ cores |
| RAM | 64 GB |
| Storage | 2+ TB NVMe SSD |
| Network | 1 Gbps |
Software Requirements
Operating System
| OS | Supported |
|---|---|
| Ubuntu 22.04 LTS | Recommended |
| Ubuntu 20.04 LTS | Supported |
| Debian 11+ | Supported |
| macOS | Development only |
Dependencies
# Ubuntu/Debian
sudo apt update
sudo apt install -y build-essential git curl jq
Storage Considerations
Growth Rate
Chain data grows over time:
- Estimate: 10-50 GB/month (varies with activity)
- Plan for 1+ year of growth
- Monitor disk usage
Storage Type
| Type | Suitability |
|---|---|
| NVMe SSD | Best |
| SATA SSD | Acceptable |
| HDD | Not recommended |
Pruning
Reduce storage with pruning:
# app.toml
pruning = "default" # or "everything" for minimal
| Strategy | Description |
|---|---|
| default | Keep recent + snapshots |
| nothing | Archive (no pruning) |
| everything | Aggressive pruning |
Network Requirements
Ports
| Port | Protocol | Purpose |
|---|---|---|
| 26656 | TCP | P2P (required) |
| 26657 | TCP | RPC (optional) |
| 26660 | TCP | Prometheus (optional) |
| 8545 | TCP | EVM JSON-RPC (optional) |
| 8546 | TCP | EVM WebSocket (optional) |
| 1317 | TCP | REST API (optional) |
| 9090 | TCP | gRPC (optional) |
Firewall
Minimum:
# Allow P2P
sudo ufw allow 26656/tcp
# If exposing RPC
sudo ufw allow 26657/tcp
# Enable
sudo ufw enable
Bandwidth
| Activity | Usage |
|---|---|
| Initial sync | High burst |
| Normal operation | 10-50 Mbps |
| As validator | Higher during consensus |
Cloud Provider Options
| Provider | Notes |
|---|---|
| AWS | Reliable, many regions |
| GCP | Good performance |
| Azure | Enterprise features |
| Hetzner | Cost-effective |
| OVH | European coverage |
| DigitalOcean | Simple setup |
Instance Types (Examples)
| Provider | Instance | Notes |
|---|---|---|
| AWS | c5.2xlarge | Good balance |
| GCP | n2-standard-8 | Similar |
| Hetzner | AX41 | Dedicated, cost-effective |
Validator-Specific
Validators need additional considerations:
- Static IP address
- 99.9%+ uptime capability
- Monitoring and alerting
- Backup connectivity
- Sentry nodes (recommended)
- Key backup procedures
See Validator Requirements for full details.
FAQ
Can I run on Raspberry Pi?
Not recommended. Insufficient resources for blockchain sync.
What about Docker?
Docker can be used for testing. For production, native installation with systemd is recommended.
How much bandwidth is needed?
Initial sync is bandwidth-intensive. Normal operation uses 10-50 Mbps.
Can I run multiple nodes on one server?
Possible but not recommended. Resource contention can cause issues.
Next Steps
- Installation - Install monod
- Join Network - Connect to a network