Node Operator / Validator Checklist
Before reaching out for support, here are some steps to check your installation.
Beacon-Kit version check
Ensure you are running the latest version of Beacon-Kit
Execution client version check
Check that you are running a supported version of your execution client. Note we don't always support the latest version of a given client.
Peering
There are several ingredients to successful peering:
Bootnodes: Check that you have a current list of bootnodes. Both
geth
andreth
accept--bootnodes
option.Peers: Check that you have a current list of peers. It's a good idea to use these as "trusted peers" in your execution client.
reth
accepts a--trusted-peers
option.Remember, peers are not the same as bootnodes. Bootnodes speak UDP and provide node discovery. Peers speak TCP and provide blocks. Ensure your firewall allows both UDP and TCP traffic to your chain clients, for both consensus and execution layer, for the ports they are configured to listen on. In the default configurations we provide, this is TCP and UDP 30303 for the execution layer, and TCP 26657 for the consensus layer.
Indicate your node's external IP address. In order to advertise their address for peering, execution clients need to know the publicly routable IP address they can be reached at. Most execution clients try to determine your public IP with UPnP, which is not available in cloud computing environments. Therefore, you must tell your execution client what your external IP address is. For
reth
andgeth
, this is done with the--nat extip:<IP>
option, For Beacon-Kit this is configured withp2p.external_addresss
inconfig.toml
.
Let us know who you are
If you have launched a validator on the chain, it's in your interest to let us know who you are, so we know who to contact in case there's trouble with on-chain performance or actions.
Steps to do that:
- (Optional) Formulate a pull request to the Validator Metadata repository with a public handle for your validator. You can use an anon if you want. Provide a logo attached to the pull request if you would like it posted on your validator profile.
- Reach out to us on the
#node-support
channel on our Discord. We will set you up with dedicated support, chat, and announcement channels for validators.
Hygiene
Make sure Beacon-Kit and your execution client are configured to start when your operating system starts.
Cause your operating system to rotate logs, and slim the log output.
- Read the
beacond
config files to find log verbosity settings. - Consult the instructions for your chosen chain node to adjust logging settings.
- Set up the
logrotate
service to rotate logs.
Monitor your node's disk space, memory consumption, and service availability. You can add --metrics=<ip>:6060
to the reth invocation to enable prometheus metrics collection. Specify an internal IP address accessible only to your prometheus server, or ensure this port is firewalled off from the internet. Particularly if you are a validator, consult the guide to Becoming an Awesome Validator for references to other monitoring tools.