Network Nodes
- Bootnode: Bootstraps all the nodes in the network
- When running up a new node, gives sets of nodes to connet to
- Very cheap to host; expected to be ~$500 per year after migrating from AWS
- Long term: Harmony to maintain as it is a critical service and cheap to host
- Validator nodes: Nodes in the network to sign blocks and add them to the chain
- Harmony has 4 shards and each shards have different sets of validator nodes (5 validators per shard)
- As of Jan 9: 16 of 20 nodes have been migrated from AWS → Hetzner / Latitude
- Expected overall cost = $1779 / month (Does it align with spreadsheet)
- As of Jan 23: 20 of 20 nodes have been migrated from AWS → Hetzner / Latitude / Digital Ocean
- Long term: Fully shutdown 20 node (would require a few hardforks)
- RPC nodes: Entrypoint to the network
- Entrypoint for querying information on blockchain or writing information (transactions)
- Made up of ERPC and legacy RPC nodes
- Currently migrating from ERPC to RPC
- Long term: Shutdown ERPC and fully transition to RPC nodes
- Sync / DNS nodes: Nodes used for syncing the nodes
- Very costly because of:
- Bandwidth: All nodes download block from sync nodes
- Storage
- Many of the nodes have been migrated from AWS → Hetzner / Latitude
- Estimated savings from $1.2k → $200 per month
- Planning on migrating the rest to the new providers
- Long term: Once streamsync is fully functional, terminate the nodes
- Snapshot node: Nodes being used to store backup of database
- Made available in decentralized storage
- Speeds up the process of syncing of new nodes (used alongside w/ sync node)
- Archival node: Actual database of all the data (i.e. balance of account in all the blocks)
- Currently at 22 TB / 32 TB (per node)
- 4 nodes in different data center
- Need to keep a clean copy since it is very expensive
Exposed Services
- Explorer dashboard
- Staking dashboard
- Graph node
Harmony Networks
- Mainnet
- Primary public Harmony production blockchain
- Testnet
- Primary purpose is to allow partners and developers to develop and test prior to releasing to Mainnet
- Public network along with Mainnet
- Follows the release versions of Mainnet
- Devnet
- Used by the protocol team for protocol development and testing
- Not exposed to the public