Node Updater with Multiple Services

I am running two nodes on the same machine. I am not using Docker. What is the correct way to have the node updater restart both services (if this is even possible)? Right now, it correctly updates and restarts one of them, but I have to go in each time and manually restart the second service.

I am running this:
/opt/storagenode/bin/storagenode-updater run --config-dir /mnt/node1/config --binary-location /opt/storagenode/bin/storagenode --service-name node1

I have considered launching two of these processes, one for each node, but that doesn’t seem right either since they both reference the same set of binaries. I see the storagenode-updater process also has a “restart-service” action. Maybe I need to use that somehow for the second process?

Thanks.

Updater accepts the service name as a parameter, theoretically.

However last time I checked it was still broken on freebsd. So I use my own scripting.

Hello @mrbro,
Welcome to the forum!

Usually the standard suggestion is to have binaries separated, because each node updates in an own time. The updater checks the availability of the update for your node by its NodeID and the cursor here: https://version.storj.io/
So, nodes may and should be updated in a different time, this is made to distribute the downtime more equally between nodes to do not shutdown the whole network in the same time, thus they must not re-use the same binaries.

Roughly saying you need to replicate the docker solution - isolate each node from another, including updaters.

2 Likes

That makes sense, I will separate the binaries and start a separate updater process. Thanks!

1 Like