Agave
Agave¶
Agave is the validator client officially developed by Solana Labs, and it is currently the most widely used client implementation on the Solana network. In 2024, Solana Labs renamed its validator client to Agave to distinguish the company name from the software project.
Core Features¶
Officially Maintained - Developed by the Solana Labs core team, now known as Anza - The earliest Solana client implementation - Continuously updated and optimized - Active community contributions
Mature and Stable - Proven in production environments over many years - Used by 90%+ of validators - Complete feature implementation - Extensive documentation support
Rust Implementation - Written in the Rust programming language - Memory safety guarantees - High performance - Consistent with the Solana program development language
Main Functions¶
Validator Operation - Participates in consensus voting - Block production - Transaction verification - State synchronization
RPC Service Can serve as an RPC node providing query services: - getAccountInfo - sendTransaction - getBalance - And other standard RPC methods
Geyser Plugin Supports the Geyser plugin interface for real-time export of on-chain data.
Hardware Requirements¶
Validator Node - CPU: 12+ cores - Memory: 256GB+ - Storage: 2TB+ NVMe SSD - Network: 1Gbps+
RPC Node - CPU: 16+ cores - Memory: 512GB+ - Storage: Larger capacity (for archive nodes) - Network: 10Gbps+
Running Agave¶
Installation
Starting a Validator
solana-validator --identity validator-keypair.json --vote-account vote-account-keypair.json --ledger /mnt/ledger --rpc-port 8899 --dynamic-port-range 8000-8020 --entrypoint entrypoint.mainnet-beta.solana.com:8001 --expected-genesis-hash 5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d --wal-recovery-mode skip_any_corrupted_record --limit-ledger-size
Version Updates¶
Agave maintains a rapid iteration cycle: - Minor releases every 2-3 weeks - Performance optimizations - Bug fixes - New feature additions
Validators need to update promptly to keep up with network upgrades.
Relationship with Other Clients¶
Client Diversity Although Agave is dominant, Solana encourages client diversity: - Firedancer (Jump Crypto): C++ implementation, targeting extreme performance - Jito-Solana (Jito Labs): MEV-optimized fork of Agave - Sig (Syndica): Zig implementation - Tinydancer: Light client
Multiple clients reduce single-point-of-failure risk and improve network resilience.
Open Source Community¶
Agave is an open source project: - GitHub: solana-labs/solana - Accepts community contributions - Public development roadmap - Discord developer channels
Future Development¶
Performance Improvements Continuous optimization of consensus, execution, network transmission, and other modules.
Feature Expansion - Supporting new SIMD proposals - Improving RPC interfaces - Enhancing monitoring and debugging tools
Collaboration with Other Clients Ensuring compatibility across different implementations through client specifications.
Related Concepts¶
- Validator: A node running the client and participating in network consensus
- Firedancer: Another high-performance client implementation
- Jito-Solana: MEV-optimized version based on Agave
- Client Diversity: Multiple software implementations improving network security