Exciting news: Ethereum staking withdrawals are live! Read more
Teku is an open-source Ethereum consensus client (sometimes called an Ethereum 2.0 client) written in Java. Teku contains a full beacon node implementation and a validator client for participating in consensus.
Teku is a good alternative for the overused Prysm client
Before running the Teku consensus client, you need to install and run the geth execution client.
Installing Teku is as simple as navigating to the DappStore, clicking the Teku Install button.
As soon as Teku is installed, it automatically synchronizes with the Ethereum beacon chain network. The only setting you have to configure is the Default recipient address:
- Click red warning message to open the Settings page
- Enter your Ethereum address and click Apply Settings
To run a validator, you need to create Validator keys first
- To add a validator click the Add validator field to expand it:
- Next, click Choose keystore file… and browse to the keystore file (json) you downloaded from the Key generator package
- Enter the keystore password
- (Optional) If you have a slashing protection file, upload the file here.
- Finally click Add validator to add the validator to Teku
You can also set a different fee recipient address for each validator. This is required if you mix full validators with Rocket Pool validators
- Check the sync status in the top right
- Check that you have enough peers. If you only see outbound peers: check your firewall. UPnP should have opened port
9000automatically. If not, open port
9000manually on your router/firewall.
- Check the status of your validators via the https://beaconcha.in website. Clicking the green banner on the main page will open this website with your validators automatically.
- Check the logs on http://my.ava.do/#/Packages/teku.avado.dnp.dappnode.eth/detail (White, Blue and Green text are good, Red text needs extra attention)
Setting up Teku is really easy and the defaults are probably OK for you.
If you messed up, you can use the “Reset defaults” to reset to the default Avado settings
Teku enables you to be up and running in only a few minutes by downloading a recent finalized checkpoint state rather than syncing from genesis.
Avado runs a server that offers recent snapshots. This is configured by default.
If you do not want to use this, clear the
initial-state setting on the settings page. You can also select a different source.
You can verify the checkpoint sync by opening the check page. Check the state root of the displayed trusted sources make sure the state root matches. If all state roots match, all is good. You can find more trusted sources on https://eth-clients.github.io/checkpoint-sync-endpoints/
If you run many validators, it is recommend to increase Teku’s memory limit. Open http://my.ava.do/#/Packages/teku.avado.dnp.dappnode.eth/detail and look for the JAVA_OPTS environment variable. Next increase the default
-Xmx3g (i.e. maximum 3 gigabytes of ‘heap space’) to
-Xmx8g (i.e. maximum 8 gigabytes of ‘heap space’)