Ethereal Chain Documentation
  • Introduction
  • Industry use cases
    • Decentralized applications
    • NFT Marketplaces
    • Decentralized finance
  • Wallets
    • Ethereal Wallet Guide
    • App Wallets
      • Ethereal Wallets
  • Web Wallets
    • Web Wallets
  • Command-Line Wallets
    • Command-Line Wallets
    • Paper Wallet
    • File System Wallet
  • Support/ Troubleshooting
  • Staking
    • Staking on Ethereal
    • Stake Account Structure
  • Grants
    • Ethereal's $100 Thousand Grants Program
    • Ethereal's Grants Process
  • Command Line
    • Command-line Guide
    • Install the Ethereal Tool Suite
    • Using Ethereal CLI
    • Connecting to a Cluster
    • Send and Receive Tokens
    • Offline Transaction Signing
    • Durable Transaction Nonces
  • Developing on native Ethereal
    • Programming Model
      • Overview
      • Transactions
      • Accounts
      • Runtime
      • Calling Between Programs
  • Clients
    • JSON RPC API
    • JavaScript API
  • Runtime Facilities
    • Native Programs
    • Sysvar Cluster Data
  • On-chain Programs
    • Overview
    • Developing with Rust
    • Developing with C
    • Deploying
    • Debugging
  • Ethereal Test Validator
  • EVM Integration
    • EVM in Ethereal
    • Legacy Address convention
    • EVM Bridge
  • Integrating
    • Add Ethereal to Your Exchange
  • Validating
    • Running a Validator
    • Validator Requirements
    • Starting a Validator
    • Vote Account Management
    • Staking
    • Monitoring a Validator
    • Publishing Validator Info
  • Clusters
    • Ethereal Clusters
    • Benchmark a Cluster
    • Performance Metrics
  • Architecture
    • Cluster
      • Ethereal Cluster
      • Synchronization
      • Leader Rotation
      • Fork Generation
    • Validator
      • Anatomy of a Validator
      • Blockstore
      • Gossip Service
  • Software
    • Vision Documentation
    • Quick Start
    • Specifications
    • Technical Perspective
  • Tutorials
    • Solidity Tutorials
      • Deploy a NFT (ERC-721) Tutorial
      • Deploy a Smart Contract
      • Deploy a ERC-20 Token
      • How To Build an NFT Marketplace
  • Set up MetaMask (Mainnet)
  • Set up MetaMask (Testnet)
Powered by GitBook
On this page
  • Hardware Requirements
  • Suggested RPC Node Requirements
  • Virtual Machines on Cloud Platforms
  • Docker#
  • Software#
  • GPU Requirements#
  • Stake Requirements#
  1. Validating

Validator Requirements

Hardware Requirements

  • CPU

    • 12 cores / 24 threads, or more

    • 2.8GHz, or faster

    • AVX2 instruction support (to use official release binaries, self-compile otherwise)

    • Support for AVX512f and/or SHA-NI instructions is helpful

    • The AMD Zen3 series is popular with the validator community

  • RAM

    • 128GB, or more

    • Motherboard with 256GB capacity suggested

  • Disk

    • PCIe Gen3 x4 NVME SSD, or better

    • Accounts: 500GB, or larger. High TBW (Total Bytes Written)

    • Ledger: 1TB or larger. High TBW suggested

    • OS: (Optional) 500GB, or larger. SATA OK

    • The OS may be installed on the ledger disk, though testing has shown better performance with the ledger on its own disk

    • Accounts and ledger can be stored on the same disk, however due to high IOPS, this is not recommended

    • The Samsung 970 and 980 Pro series SSDs are popular with the validator community

  • GPUs

    • Not strictly necessary at this time

    • Motherboard and power supply speced to add one or more high-end GPUs in the future suggested

Suggested RPC Node Requirements

The above should be considered the bare minimum hardware requirements for running a RPC node as these nodes require more in-depth details, historical data and increased reliability. To provide the full functionality of an RPC node please upgrade the requirements to the recommended ones below.

  • CPU

    • 16 cores / 32 threads, or more

  • RAM

    • 256 GB, or more

  • Disk

    • Consider a larger ledger disk if longer transaction history is required

    • Accounts and ledger should not be stored on the same disk

Virtual Machines on Cloud Platforms

While you can run a validator on a cloud computing platform, it may not be cost-efficient over the long term.

However, it may be convenient to run non-voting api nodes on VM instances for your own internal usage. This use case includes exchanges and services built on the EtherealNetwork.

In fact, the mainnet-beta validators operated by the team are currently (Mar. 2023) run on GCE n2-standard-32 (32 vCPUs, 128 GB memory) instances with 2048 GB SSD for operational convenience.

For other cloud platforms, select instance types with similar specs.

Also note that egress internet traffic usage may turn out to be high, especially for the case of running delegated validators.

Running validator for live clusters (including mainnet-beta) inside Docker is not recommended and generally not supported. This is due to concerns of general Docker's containerzation overhead and resultant performance degradation unless specially configured.

We use Docker only for development purposes.

  • We build and run on Ubuntu 20.04.

  • See Installing EtherealNetwork for the current EtherealNetwork software release.

Be sure to ensure that the machine used is not behind a residential NAT to avoid NAT traversal issues. A cloud-hosted machine works best. Ensure that IP ports 8000 through 10000 are not blocked for Internet inbound and outbound traffic.

Prebuilt binaries are available for Linux x86_64 on CPUs supporting AVX2 (Ubuntu 20.04 recommended). MacOS or WSL users may build from source.

Anyone can start a validator node, however it will not generate rewards before it's total delegated stake reaches 10,000 XZO or more.

PreviousRunning a ValidatorNextStarting a Validator

Last updated 1 year ago

Docker

Software

GPU Requirements

CUDA is required to make use of the GPU on your system. The provided EtherealNetwork release binaries are built on Ubuntu 20.04 with . If your machine is using a different CUDA version than you will need to rebuild from source.

Stake Requirements

#
#
#
CUDA Toolkit 10.1 update 1
#