AWS EC2 Instance Size for Geth #98
ryandotsmith
started this conversation in
General
Replies: 1 comment
-
Ping me If you are booting an EC2 instance up and would like to use one of Index Supply's EBS Snapshots. With a snapshot you can have a full node up in a couple of hours. Obviously you would have to trust my snapshot ;) This might not be right for all cases, but for some it may be just what is needed. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
TLDR:
i3.4xlarge
EBS vs. NVMe
NVMe is faster than EBS. However, if you restart you instance, the data is gone. This is not good. Amazon does a really great job of keeping instances online these days. I have had instances that have been happily running for over a year. One hybrid strategy is to locate geth's data directory to the NVMe drives and periodically rsync your NVMe directory to an EBS volume. This is useful for quickly booting new nodes as well.
NVMe LVM Raid Config
LevelDB / Ancient / Freezer
Geth keeps its hot data in a leveldb, although there is now an option for Pebble --which is probably superior although I haven't had time to switch my servers over to it. The leveldb will be stored in
--datadir
. After a certain point, blocks and receipts are moved out of the leveldb and into flat files (capped at 1.5GB and indexed by block number in a separate file). These flat files are known as ancient or freezer files. You can separate the storage of the leveldb and the freezer by using the--datadir.ancient
flag. Theoretically you could offload the freezer to a cheaper, slower disk. Perhaps it's good to keep the freezer in EBS and the leveldb in NVMe.Beta Was this translation helpful? Give feedback.
All reactions