[Ethereum] Server resources needed to run Geth

go-ethereum

I'm running Geth on an AWS micro server with 1GB of RAM of 50GB of storage (EBS). If I run it with the --fast flag on, it crashes after a couple of minutes because it runs out of memory. If I run it normal mode with --rpc on, any requests to the Geth client are processed with delays.

What are the RAM / CPU requirements so I can run it with the --fast flag on and so that it can handle a couple of rpc calls a second?

Best Answer

I am running geth on 2 DNS load balanced "Linode 4GB" servers costing USD 20 / month each. The specs are:

  • 4GB RAM
  • 2 CPU Cores
  • 48 GB SSD Storage
  • 3TB Transfer Out
  • 40 Gbps Network In
  • 1,000 Mbps Network Out

I run geth alongside a Java application serving the web pages for https://cryptoderivatives.market/ .

I have had a few instances where geth is terminated by the operating system due to running out of memory. But I have set up the systemd services so that geth automatically restarts. You can find my systemd setup at https://github.com/bokkypoobah/BokkysCheatsheet/wiki/Linux .

As the disk space is not sufficient to hold the full archive node, I periodically remove the blockchain data and --fast sync .

The Digital Ocean service with similar specs works as well.

The network transfers of 3TB is more than sufficient to sync the blockchain with the Ethereum network.

Related Topic