Core Full Nodes
How to run a full node on Core
A Core full node stores the entire history of the Core blockchain, enabling anyone to verify the state of any account. A Core full node can take many forms:
Normal full node: for private use.
Validator full node: acts as a validator on Core, validating blocks and transactions.
RPC full node: provides RPC services and responds to HTTP requests.
System Requirements
There are several system requirements for setting up a full node on Core.
Software
Currently, a Core full node can only run on Mac OS X and Linux.
Hardware
Core nodes perform several resource-intensive tasks, which can include storing blockchain data, verifying blocks or transactions, communicating with peer nodes, and answering network requests, depending on their configuration. Each type of Core node has specific hardware requirements based on their expected needs.
Testnet Full Node Hardware Specifications
For full nodes on Core testnet, we recommend the following minimal hardware specs:
Normal node |
---|
1 TB of free disk space. |
4 CPU cores and 8 gigabytes of memory (RAM). |
A broadband Internet connection with upload/download speeds of 5 megabytes per second. |
Validator node |
---|
1 TB of free disk space, solid-state drive (SSD), gp3, 8k IOPS, 250MB/S throughput, read latency <1ms. |
4 CPU cores and 8 gigabytes of memory (RAM). |
A broadband Internet connection with upload/download speeds of 10 megabytes per second. |
RPC node |
---|
1 TB of free disk space, solid-state drive (SSD), gp3, 8k IOPS, 250MB/S throughput, read latency <1ms. |
8 cores of CPU and 16 gigabytes of memory (RAM). |
A broadband Internet connection with upload/download speeds of 50 megabytes per second. |
Mainnet Full Node Hardware Specifications
For full nodes on Core mainnet, we recommend the following minimal hardware specs:
Normal node |
---|
1 TB of free disk space. |
4 CPU cores and 32 gigabytes of memory (RAM). |
A broadband Internet connection with upload/download speeds of 5 megabytes per second. |
Validator node |
---|
1 TB of free disk space, solid-state drive (SSD), gp3, 8k IOPS, 250MB/S throughput, read latency <1ms. |
8 CPU cores and 32 gigabytes of memory (RAM). |
A broadband Internet connection with upload/download speeds of 10 megabytes per second. |
RPC node |
---|
1 TB of free disk space, solid-state drive (SSD), gp3, 8k IOPS, 250MB/S throughput, read latency <1ms. |
16 CPU cores and 32 gigabytes of memory (RAM). |
A broadband Internet connection with upload/download speeds of 50 megabytes per second. |
Network
If you are running an RPC node, you need to enable HTTP
inbound rules on port 8575 in the firewall settings. Port 8575 is set as the default port. You can change the configurations in config.toml
.
Build and Run
1. We recommend using the core-chain GitHub repository to directly build and run your full node, running your full node directly from our blockchain codebase. Instructions for building the source code can be found in the repository's README.
2. Download the node binary from the releases page of the core-chain repository. The node binary includes the relevant mainnet and testnet configuration files. This is the latest version.
3. Write the genesis state locally by executing the following command from your project directory:
You should see the following output:
4. Our full node is ready, let's start running it!
If you plan to run a validator node, you'll need to set up the consensus key before running the node. Make sure to keep your keystore saved.
If you plan to run a normal node or an RPC node, you can just run the following geth
command directly:
5. As our full node runs, we can monitor its logs to make sure that everything is operating correctly. The log file is located at /node/logs/core.log
by default, but can be changed to another location if desired.
Last updated