We’d like to make Sokol Nethermind-only chain and asking you to switch your OpenEthereum node to the latest Nethermind (v1.10.74). OpenEthereum recently announced its end of life (Gnosis client development team Joins Erigon (formerly Turbo-Geth) to Release Next-Gen Ethereum Client | by Gnosis | OpenEthereum | Jun, 2021 | Medium), so we are going to gradually switch to Nethermind.
Please, follow the instruction (you can use the same VM instance):
Go to your server instance.
Clone the following repo:
git clone -b nethermind https://github.com/poanetwork/validator-node-dockerized mv validator-node-dockerized nethermind cd nethermind
To be a validator, you need to have your mining address private key. You will keep it in a
If you don’t have the private key in a plain format (a hex string, 64 characters long), but have a JSON Keystore file of it (with a password), please go through the following steps to get your plain private key string:
- Open your MetaMask.
- Go to
- In the
Select Typedrop-down list choose
- Point to your JSON Keystore file, enter the password for it, and click
- Switch to the newly imported account and go to
Account details. Click
Export private keybutton.
- On the appeared
Show Private Keyssection type your MetaMask password and click
- You will see your 64 characters long private key.
.envand configure the
.envfile. There are a few settings you need to define (the values without square brackets):
ETHSTATS_ID=[validator_name] ETHSTATS_CONTACT=[contact_email] ETHSTATS_SECRET=[netstat_secret_key] KEY=[your_private_key_for_mining_address] SEQAPIKEY=[seq_api_key]
ETHSTATS_ID- The displayed name of your validator in https://sokol-netstat.poa.network/ (please use a bit another name to distinguish it from the current name of OE node)
ETHSTATS_CONTACT- Validator’s contact (e.g., e-mail).
ETHSTATS_SECRET- Secret key to connect to Netstat (should be provided by POA team, please, request it in PM).
KEY- Your mining address private key (should be 64 characters long without leading
SEQAPIKEY- An API key for Seq log collector (should be provided by POA team, please, request it in PM).
docker-compose.ymlfile with your favorite text editor to change the
NETHERMIND_INITCONFIG_ISMININGenv variable from
This will temporarily set your new node as a non-validator.
Also, set the port of the new node to 30313. To do this, edit your
docker-compose.ymlfile and add the following lines under
NETHERMIND_NETWORKCONFIG_DISCOVERYPORT: 30313 NETHERMIND_NETWORKCONFIG_P2PPORT: 30313
And change the port in the
ports: - "30313:30313" - "30313:30313/udp"
Start your Nethermind node and wait for it to be fully synced:
docker-compose up -d
Once the new node is fully synced, you will need to stop your old OpenEthereum node on an old instance:
Once the old instance is stopped, go to your new instance and edit
docker-compose.ymlfile to activate a validator role - change
Restart your node using the following commands:
docker-compose down docker-compose up -d
Now, your new node should produce blocks.
Please, report here as soon as you go through the above steps.
P.S. If you are running a bootnode, the steps for that are the same, but you need to set