We’re preparing POA Sokol and Core chains for Berlin hard fork planned on May 24. To do this, the chains need to have OpenEthereum v3.2.6 on validator nodes. Please, upgrade your Sokol and Core validator node to
The following instruction assumes that you are running your current Parity-Ethereum v2.7.2 node using playbooks. If you are using docker-compose, please let us know here (we will provide another instruction for docker).
The switching from
3.2.6 requires resyncing from scratch on another server instance (because there was POSDAO backport from these versions to
3.2.6 and OE database versions are incompatible), so you need to follow the steps below:
Create a separate Ubuntu 20.04 instance with root access.
Clone the following repo:
git clone https://github.com/poanetwork/validator-node-dockerized mv validator-node-dockerized openethereum cd openethereum
If you are POA Core validator, change the following lines in the
To be a validator, you need to have a mining address and a private key for it. Name your JSON keystore file as
keyand put it to the
openethereumdirectory created on the step 3. Put keystore’s password to
.envand configure the
.envfile. There are a few settings you need to define (without square brackets):
ETHSTATS_ID=[validator_name] ETHSTATS_CONTACT=[contact_email] ETHSTATS_SECRET=[netstat_secret_key] EXT_IP=[server_external_ip] ACCOUNT=[0x_your_mining_address]
- ETHSTATS_ID - The displayed name of your validator in Sokol Netstat or Core Netstat.
- 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 if you don’t have one).
- EXT_IP - External IP of the current server.
- ACCOUNT - Your mining address (with leading
docker-compose.ymlfile with your favorite text editor to remove the line
This will temporarily set you new node as a non-validator.
Start your 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 node on an old instance (playbook):
sudo systemctl stop poa-parity sudo systemctl stop poa-netstats
Once the old instance is stopped, go to your new instance and edit
docker-compose.ymlfile to activate a validator role - add the following line to the
commandsection of the file:
Restart your new node using the following commands:
docker-compose down docker-compose up -d
Now, the new node should produce blocks.
Please, report here as soon as you go through the above steps.