New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[documentation] instruction on how to migrate the non-validating nodes #3798
Comments
Please work with @JackyWYX on the instructions. Basically, we need to create a rclone snapshot of an existing new explorer DB and then ask the exchange partners to rclone the new explorer DB to replace their old explorer DB after the binary upgrade. |
@yelllowsin can help out on the documentation part. |
Assumption
new disk recommendationCurrent DB Is at 7.8 TB, Harmony is is now using i3en.6xlarge which has 2 x 7,5 TB configured in raid 0, it is strongly recommended to use a local NVMe disk Download the new explorer DB
Perform the upgrade as usual without restarting the node
Backing up the old explorer DB
Extracting the new DB
Check your RPC rate limit and increase accordinglyCheck
Change the rate limitupdate harmony.conf in the section [RPCOpt] the
start the harmony node
|
Do not forget to add instructions to increase the RPC rate limiter. The default rate limit is 1000. I suggest partners set it to at least 50000. Use curl http://localhost:9900/metrics | grep ^hmy_rpc To check if the rate limiter is reached and set to a higher limit accordingly. Also, please advise all exchange partners to use i3en.6xlarge for archival explorer nodes or equivalent VPS, and use the local NVMe drive to handle disk IO. |
@LeoHChen @sophoah I added the upgrade instructions here:https://docs.harmony.one/home/network/validators/node-setup/installing-updating/upgrading-node/using-binary#non-validating-explorer-nodes And requirements here (they are linked each to the other): https://docs.harmony.one/home/network/validators/server-setup/requirements#explorer-node-recommendation Let me know if you have further changes I should make. |
@LeoHChen One more question, how do we address syncing for shards other than 0? I can instruct users to download explorer_storage_s0.tar.gz, but what about other shards? Also, is there a process that updates these snapshots from times to times. Currently we are using Rclone for new installations. |
Running the new binary will automatically migrate the explorer DB. Since other shards have much less data (about 100~200MB), I think that the migration process itself should be fine, not really need to create a new snapshot for it. So basically, there are no extra steps needed for shard chain. |
Got it, so basically we can remove from the docs the download of explorer_storage_s0.tar.gz? Not sure if I get the point of having it if the binary will do the conversion anyway. |
It is still needed for shard 0 explorer since explorer db for s0 is massive. It takes ~5 hours to migrate and it has been reported there are some dirty data in some explorer node that caused migration to fail. So if a shard 0 explorer node is migrating from older version, it is recommended to directly download the snapshot. For longer term execution, let's have a discussion of whether we shall add the snapshot of explorer db to the snapshot instance so that the explorer db can be rcloned just as the chain db. I think for new node starting for the first time, it is recommended to download the snapshot instead of generating everything from scratch to make the bootstrap faster.@LeoHChen |
There are some work to be done for sure... @rlan35 Any insight ? |
Problem/limitation At Hand
Since we have a new database schema for the explorer node db, all the non-validating nodes need to migrate to the new DB schema.
This is needed to resolve the explorer node catch-up issue. #3740
We need to provide clear instructions to all the exchange partners that run the non-validating node as the RPC endpoint for the db migration.
The text was updated successfully, but these errors were encountered: