Updating the dHealth Node
This page will help you update your running dHealth Network Node.
Update instructions
This document is aimed at node operators that are running dHealth Network nodes.
Quick Links
Maintenance needs with our nodes is kept to a minimum but there is a couple key aspects that need to be understood when running a node:
- Nodes communicate using a secure TLS context and therefore require SSL Certificates, these must be updated every year (375 days).
- Nodes that have finalization voting enabled must update voting keys every 6 months.
In case you are already running a node for our network, it may be that some of your keys are due to expire soon. We have released an updated version of yourdlt
so that you can address this issue with your nodes.
Follow the below steps to update your node's keys as necessary.
Requirements
- Find out the location of the node's target folder, e.g.
/opt/dhealth/dual-node
- Find out the location of the node's custom configuration preset, e.g.
/opt/dhealth/dual_config.yml
Note that in these notes, we will be referring to the above filesystem paths, respectively as: $TARGET_PATH and $CONFIG_PRESET.
Now that we have determined the filesystem paths (locations) to the node, the target folder and the custom configuration preset, we can start with the update process.
Update the node configuration
The dHealth Network Node configuration includes a few changes that are related to finalization voting and SSL certificates that are created for every node of the network.
Stop your node
Make sure to stop your node before updating the configuration.
yourdlt stop -t $TARGET_PATH
Note that if you do not specify a target folder parameter
-t
, it will automatically use a folder namedtarget/
in your current working directory.
Find out which assembly you are running
You can find out the assembly that you are running by executing the following command:
cat $TARGET_PATH/preset.yml | grep assembly
The above shall respond with one of: dual, peer, voter or api. This represents the assembly that your node is currently operating.
Update the node configuration
npm install -g [email protected]
In the next command, make sure to replace
-a dual
with the correct assembly that was used when configuring your node, also it is important that$TARGET_PATH
and$CONFIG_PRESET
map to the correct values as mentioned before.yourdlt config -t $TARGET_PATH -p dhealth -a dual -c $CONFIG_PRESET --upgrade
Note that if you did not use a custom configuration preset, you may omit the
-c $CONFIG_PRESET
parameter.
The above commands shall respond with a message that mentions the update of configuration and also lists information about the node's main account, amongst other information.
Renewal of SSL certificates
You can now continue to this next step which will update your node's SSL certificates for the next year. This command must be run once a year and can be executed up to 30 days
before the expiration of certificates. If you execute this command outside of this period, it will only display the expiration date.
Update SSL certificates
yourdlt renewCertificates -t $TARGET_PATH --force
Note that if you do not specify a target folder parameter
-t
, it will automatically use a folder namedtarget/
in your current working directory.
The above command shall respond with a message that also displays the certificate expiration date. Please, make sure to note this down to make sure that you are aware of upcoming update occurrences.
Update of finalization voting keys
Please, note that you only need to update finalization voting keys if your node is actually voting for finalization. If it is the case, you should find voting: true
in your custom configuration preset file dual_config.yml
.
Update of Finalization Voting Keys
yourdlt updateVotingKeys -t $TARGET_PATH
The above command will interactively ask you whether you want to unlink the previous voting keys. Please, do not unlink the previous voting keys.
After having executed the above command, note that you must also execute the following command:
yourdlt link -t $TARGET_PATH --url http://dual-03.dhealth.cloud:3000 --maxFee 100000
Restart the node operations
Now that you have updated your configuration and renewed your SSL certificates, you can safely restart the node operations.
Restart your node
After having successfully executed the above list of commands, you can safely restart your node operations:
yourdlt run -t $TARGET_PATH -d
Updated about 1 year ago