Configuring the Consensus Client

Quick Steps

These steps are applicable to all three Consensus Clients options - Teku, Prysm, and Nimbus:

  1. Install the DApp.

  2. Upon installation, click on Configure Package or open the DApp.

  3. Set the default Fee Recipient Address.

  4. Choose your preferred Execution Client.

  5. (Optional) You can explore additional features such as Adding Validators, Checking Peer Connectivity, Verifying Checkpoint Sync, and Enabling MEV-Boost. These can be addressed later if needed.

  6. Click on Apply changes. The Consensus Client will restart and initiate the syncing process with the Beacon Chain.

  7. Observe the syncing process to ensure that everything is running smoothly as expected.

The following guide provides more details on each step.

Opening the DApp

AVADO has implemented standardized user interface for the Consensus Clients: Teku, Prysm and Nimbus. In this section, we will go through their common settings.

You can "open" the DApp by:

  • Clicking the Open button for the DApp (Teku, Prysm or Nimbus) on the Home Page; or

  • Clicking the DETAILS button for the DApp on DappStore, then click Configure Package; or

  • Clicking the name of the DApp, or its Open button, on the My Dapps menu (figure below).

The following examples are taken from Teku, but the user interface for Prysm and Nimbus will have a similar look and feel.

Prysm Specific: Open Prysm Beacon Chain instead of Prysm Consensus Client

For Prysm, You can open the DApp by clicking the Open button for the Prysm Beacon Chain package. If you try to open the Prysm Consensus Client package, you will come to the following screen. Here, always choose Open the Avado Wizard. (The legacy Prysm web dashboard has been deprecated.)

The DApp has three sub-menus: Main, Settings, and Check.

If you're using a phone or tablet, the sub-menus may be hidden. Look for the button that has three horizontal lines, on the right-hand side of the screen. Click to expand it. The expanded sub-menu can be found on the left-hand side of the screen (you may need to scroll across to see it).

The following is a walkthrough of key features of the DApp.

A. Set Default Fee Recipient Address

Initially, the Consensus Client will prompt you to set up a default Fee Recipient Address. It may also indicate that you have not yet installed an Execution Client or require additional settings. We will now proceed to complete these steps.

What is the Fee Recipient Address?

When you start validating, there will be two streams of rewards:

  • Consensus Layer rewards: These are regular rewards paid to you for performing validator duties, such as producing attestations, and making proposals. These rewards accrue on your validators and are regularly "skimmed" to your Withdrawal Address (which you will set separately).

  • Execution Layer rewards: These are occasional rewards (tips and "MEV-boost" rewards) paid to you when you get a chance to make a block proposal. These rewards are immediately available and are sent to your Fee Recipient Address.

The Fee Recipient Address is where you would receive your Execution Layer rewards. Please make sure that you:

  • Use an Ethereum address you own and control, preferably a hardware wallet address.

  • Do not use an exchange address, as most exchanges are not set up to recognize staking rewards and you will very likely lose your rewards.

For your consideration:

  • You can change the default Fee Recipient Address any time.

  • You can set the Fee Recipient Address for individual validators any time, overriding the default.

  • You can use different Fee Recipient Addresses for individual validators, if you wish.

  • You can set the Fee Recipient Address to be the same as your Withdrawal Address (to be set separately), if you wish.

  • If you're going to stake with Rocketpool or Stader, the Fee Recipient Address for the validators involved will need to be set to the respective Rocketpool or Stader addresses. This can be done later. You can still choose a default Fee Recipient Address to start with.

To set the Fee Recipient Address, enter or paste-in your Ethereum address into the box indicated by A below.

B. Set Execution Engine

The Consensus Client will need to be paired with an Execution Client, i.e. Geth or Nethermind. Click the radio button (indicated by B in the above figure) that matches with your chosen Execution Client.

The Execution Client will not work if the setting for Execution Engine here is incorrect.

C. Add Validators

If you are a Solo Staker (staking with full 32 ETH), you will later need to generate your staking keys, then import the resulting keystore files (which will be named like keystore-xxxxx.json) under the Main sub-menu. Take time to read the following sections for more details:

If you are staking via Rocketpool or Stader, you do not need to manually add validators. Your validators will be populated for you by the respective DApp later. Please read the sections on Rocketpool or Stader for details.

D. Check Peer Connectivity

In the context of Ethereum validation, peers refer to other nodes on the network with which your validators exchange data. Having good connectivity to peers is crucial for ensuring timely and accurate performance of validation duties.

To establish and maintain peer connectivity, the Consensus Client actively reaches out to the network to "discover" peers. Additionally, it accepts incoming connections from other peers that have "discovered" your validators. In simpler terms:

  • Outbound Peers: The Consensus Client actively seeks out and discovers these peers.

  • Inbound Peers: Other peers initiate the connection by requesting a connection to your validators.

Once the connection is established, both inbound and outbound peers are treated equally.

The general principle is that having a higher number of peers is advantageous. By default, the upper limit of peer connection is 100, which typically works well. However, if you are seeing a low connected peer count, or only see outbound peers and no inbound peers, it may be necessary to adjust the settings on your router to allow incoming connections. See Opening Network Ports for guidance on how to do this.

It's important to note that the Consensus Client can perform validation duties even with only outbound peers. Obtaining inbound peers is an optimization point that can potentially enhance the performance of your validators, and is therefore highly recommended.

E. Verify Checkpoint Sync

The Consensus Clients can quickly start running within minutes by downloading a recent finalized checkpoint state as their Initial State. This eliminates the need for syncing the entire Beacon Chain, allowing for a faster setup process.

By default, Teku and Prysm are configured to use a finalized checkpoint state from a community source https://beaconstate.ethstaker.cc . Nimbus currently uses an initial state hosted by AVADO.

There is no need to change the Initial State setting, although you have flexibility to choose a different source if you desire. You can explore more trusted sources on https://eth-clients.github.io/checkpoint-sync-endpoints/

You can verify the checkpoint sync by opening the Check page. Here, you can compare the "state root" (the hash of a specific block) that your node recognizes with the state roots provided by other trusted sources. If all the state roots match, it indicates that the initial state used by your Consensus Client is trustworthy.

There is currently an issue with the Check page, that state roots from some of the sources cannot be fetched. This is not a cause for concern.

F. Enable MEV-Boost

Maximal Extractable Value (MEV) is a concept that revolves around the extraction of value from the trading activities on blockchain networks. As a node operator, there is opportunity to gain extra or "boosted" rewards when proposing a block. This is achieved by utilizing the MEV-Boost DApp in conjunction with the Execution and Consensus Clients.

The use of MEV-Boost is optional (though highly recommended) for Solo Stakers. For Rocketpool and Stader Stakers, the use of MEV-Boost is mandatory. More details will be provided later in the process.

Suffice to note that, later when you have installed the MEV-Boost DApp, you will need to come back to this Settings page and check the Enable MEV-Boost button (labeled F in the main figure above) for it to work.

G. Apply Changes

Once you have made any modifications to the settings, click Apply changes to proceed. The Consensus Client will restart with the updated settings. Alternatively, you can click Revert changes to discard the changes, or click Reset defaults to restore the default AVADO settings.

Next Steps

Congratulations! Now you have configured the Consensus Client and it shall start to sync up to the Beacon Chain.

Thanks to the use of Checkpoint Sync, the Consensus Client starts with data from the recent past and only needs to "catch up" to the current head of the blockchain. This is a relatively fast process that will only take a few minutes to no more than an hour's time.

Please follow the following links to learn how to monitor the syncing process for your chosen Consensus Client:

Last updated