Upgrade to 1.35.4 FAST! With Hydra Binaries for CNTOOLS Users

This is an upgrade walk-through for using the pre-compiled hydra binaries. You can adjust this boilerplate to use it with future upgrades and different node configurations.

  • Start by updating and rebooting our system. Now is also a good time to create/update server snapshots if you are able.

sudo apt update && sudo apt upgrade -y
sudo reboot

  • After restarting, we are ready to fetch and run the most recent version of prereqs.sh

cd ~/tmp
rm prereqs.sh
curl -sS -o prereqs.sh https://raw.githubusercontent.com/cardano-community/guild-operators/master/scripts/cnode-helper-scripts/prereqs.sh
chmod 755 prereqs.sh

./prereqs.sh
. “${HOME}/.bashrc”

  • Then we clear and create a file structure for downloading and unpacking the hydra binaries.

rm -r ~/.cabal/hydra-binaries
mkdir ~/.cabal/hydra-binaries
cd ~/.cabal/hydra-binaries

  • Now, open a browser, and navigate to IOHK’s cardano node’s release page: Releases · input-output-hk/cardano-node · GitHub

  • Confirm that you are on the correct release, and scroll down to the “Downloads” section. From there, select the linux Hydra binaries.

1.35.4 binary select

  • On the next page, click the “Details” button and copy the URL for the binary distribution tar file.

1.35.4 url

  • Switch back to your terminal, and use this URL to wget the binaries.

wget https://hydra.iohk.io/build/21343721/download/1/cardano-node-1.35.4-linux.tar.gz

  • Unpackage the download

tar -xzvf cardano-node-1.35.4-linux.tar.gz

  • You can now cleanup and remove the download. I am also removing the configuration files, as I already have them.

rm cardano-node-1.35.4-linux.tar.gz
rm -r configuration/

  • We are now ready to stop the node. Confirm that the node is stopped.

sudo systemctl stop cnode
sudo systemctl status cnode

  • Copy the new binaries over to ~/.cabal/bin/ (Our working directory is ~/.cabal/hydra-binaries)

cp ./* ~/.cabal/bin/

(If you get the error here: “cp: cannot create regular file ‘~/.cabal/bin/cardano-submit-api’: Text file busy” then run the command:

sudo systemctl stop cnode-submit-api

and try again to copy the binaries. You can restart the submit api after restarting the node later.)

  • Check to confirm you have the correct version of the node and cli installed

cardano-cli --version
cardano-node --version

1.35.4 version

  • Restart your node. Confirm that your node has started.

sudo systemctl restart cnode
sudo systemctl status cnode

  • You can watch the node’s status in gLiveView

cd $CNODE_HOME/scripts
./gLiveView.sh

1.35.4 starting

And after a few minutes of start up time, your node should be back in business!

1.35.4 complete

1 Like

thanks again for this… steps work just fine for 1.35.5 as well

1 Like

Note that there has been some changes to CNTOOLS with 1.35.5

1 Like

Does this work for 1.35.5?

Yes, the boilerplate will work if you adjust for 1.35.5. Note that there are some changes to CNTOOLS, which are explained in the link i posted above.

It is worth noting that CNTOOLS now has the ability to download the latest binaries for you. All you need now is to run guild-deploy.sh (replaces prereqs.sh) with the proper flags.

./guild-deploy.sh -s d -b master

That will fetch, download, and unpack the newest IO binaries automatically for you. Pretty EZ!

I would follow Guild Opperators one-time upgrade guide for the first time you update to their new scripts. After the first upgrade, subsequent binary releases should be really quick and easy for operators using CNTOOLS.

Their 1-time upgrade guide can also be found via the link I posted above.

Cheers

1 Like

cncli: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by cncli) cncli: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33’ not found (required by cncli)
cncli: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34’ not found (required by cncli)
CNCLI current version () different from repo (v5.3.0), consider upgrading!.
getting this error when running gliveview now. any ideas?

Download the latest guild-deploy.sh (checkout new syntax with guild-deploy.sh -h ) to update all the scripts and files from the guild template. The scripts modified with user content (env , gLiveView.sh , topologyUpdater.sh , cnode.sh , etc) will be backed up before overwriting. The backed up files will be in the same folder as the original files, and will be named as

Where are these files? Why doesnt the script put them back where they belong?

ERROR: gLiveView failed to load common env file
Please verify set values in ‘User Variables’ section in env file or log an issue on GitHub

WHY WHY WHY MOVE THE FILES??? These instructions are giberish, I have no idea how to run this step…

  • Since one of the basic changes we start to recommend as part of this revamp is moving your binaries to "${HOME}/.local/bin, you would want to move the binaries below from current location:
    • “${HOME}”/.cabal/bin - Binaries built by cabal build all script (eg: cardano-node, cardano-cli, bech32, cardano-address, cardano-submit-api, cardano-db-sync
    • “${HOME}”/.cargo/bin - Binaries built by cardano install (eg: cncli)
    • “${HOME}”/bin - Downloaded binaries from previous prereqs.sh (eg: cardano-hw-cli)

so, the error is because the bin probably were compiled in ubuntu 22.04 version

which version do u run (OS)
the only one problem is with cncli?

inside env file the path for cncli is …/.local/bin ?
If yes can u set to CNCLI="${HOME}/.cargo/bin/cncli and uncomment the line + check cncli again? No need to restart the node

Debian 10, its my producer. It was working before I started trying to do the upgrade instructions.


Producer:~/tmp$ cardano-cli --version
cardano-cli 1.35.3 - linux-x86_64 - ghc-8.10
git rev 950c4e222086fed5ca53564e642434ce9307b0b9
Producer:~/tmp$ cardano-node --version
cardano-node 1.35.3 - linux-x86_64 - ghc-8.10
git rev 950c4e222086fed5ca53564e642434ce9307b0b9
Producer:~/tmp$ sudo systemctl status cnode
[sudo] password for nidnode:
Sorry, try again.
[sudo] password for nidnode:
● cnode.service - Cardano Node
   Loaded: loaded (/etc/systemd/system/cnode.service; enabled; vendor preset: en
   Active: activating (auto-restart) (Result: exit-code) since Tue 2023-02-07 21
  Process: 1864 ExecStart=/bin/bash -l -c exec /opt/cardano/cnode/scripts/cnode.
 Main PID: 1864 (code=exited, status=1/FAILURE)
lines 1-5/5 (END)

ok, and sudo journalctl -e -f -u cnode what do you see there?

Feb 07 21:59:57 vmi660486.contaboserver.net cnode[18373]: Please verify set values in ‘User Variables’ section in env file or log an issue on GitHub
Feb 07 21:59:57 vmi660486.contaboserver.net systemd[1]: cnode.service: Main process exited, code=exited, status=1/FAILURE
Feb 07 21:59:57 vmi660486.contaboserver.net systemd[1]: cnode.service: Failed with result ‘exit-code’.

no other errors?
try to start the node manually

./cnode.sh
any errors?

./cnode.sh

Guild scripts has now been upgraded to support cardano-node 1.35.5 or higher (1.35.3 found).
Please update cardano-node (note that you should ideally update your config too) or use tagged branches for older node version.

Guild scripts has now been upgraded to support cardano-node 1.35.5 or higher (1.35.3 found).
Please update cardano-node (note that you should ideally update your config too) or use tagged branches for older node version.

ERROR: Failed to load common env file
Please verify set values in ‘User Variables’ section in env file or log an issue on GitHub

exactly so, now… you can use the old scripts to start the node on 1.35.3 or you can download the bin cardano-cli and cardano-node files and run 1.35.5

what do you want?

type which cardano-cli the new path is /.local/bin ?

which cardano-cli
/home/user/.cabal/bin/cardano-cli

So this “UPGRADE” script makes backups of all of the customized files and installs… then you have to copy them all back install of the script doing it?

Ok, cabal

did u downlod the guild-deploy.sh script?

Yes and when I run it … it tells me I dont have these files anymore… Of course I dont have them the script made backup. overwrote them and then didnt restore them.

Forced full upgrade! Please edit scripts/env, scripts/cnode.sh, scripts/dbsync.sh, scripts/submitapi.sh, scripts/ogmios.sh, scripts/gLiveView.sh and scripts/topologyUpdater.sh (alongwith files/topology.json, files/config.json, files/dbsync.json) as required!

now run

./guild-deploy.sh -s d
it will download the bin (1.35.5) files as zip… unzip the archive and copy caradno-node and cardano-cli to /home/YOUR_USER/.cabal/bin/ restart the node and check again glive

If the scripts are keep asking for updates even u did … press No or to cancel this check edit inside env the line with updates… make it like


UPDATE_CHECK="N"

Thanks Alex, it started now 1.35.5 but as a relay.