Upgrade to 10.5.3 - Another guide

Hi all,

Here’s another upgrade guide for 10.5.3 for Coincashew users that like following along this way.
There may be some corrections needed to the guide, so let me know if you find any issues.

Thanks again to Coincashew for their updated guides too!

This is an important upgrade as announced by IOG. I am moving from 10.3.1 to 10.5.3, so you might need some different steps along the way if you have a different starting version.

As always, test first, then deploy.

Update your instance:

sudo apt-get update && sudo apt-get upgrade

Update your packages and tools, as there’s been a few new requirements since 10.3.1, e.g.

sudo apt-get install autoconf automake build-essential curl g++ git jq libffi-dev libgmp-dev libncurses-dev libssl-dev libsystemd-dev libtool make pkg-config tmux wget zlib1g-dev liblmdb-dev -y

You also need to install v0.3.14 of blst

cd $HOME/git
git clone https://github.com/supranational/blst
cd blst
git checkout v0.3.14
./build.sh
cat > libblst.pc << EOF
prefix=/usr/local
exec_prefix=\${prefix}
libdir=\${exec_prefix}/lib
includedir=\${prefix}/include

Name: libblst
Description: Multilingual BLS12-381 signature library
URL: https://github.com/supranational/blst
Version: 0.3.14
Cflags: -I\${includedir}
Libs: -L\${libdir} -lblst
EOF
sudo cp libblst.pc /usr/local/lib/pkgconfig/
sudo cp bindings/blst_aux.h bindings/blst.h bindings/blst.hpp /usr/local/include/
sudo cp libblst.a /usr/local/lib
sudo chmod u=rw,go=r /usr/local/{lib/{libblst.a,pkgconfig/libblst.pc},include/{blst.{h,hpp},blst_aux.h}}

Download latest cardano-node git and checkout latest branch:

cd $HOME/git
git clone https://github.com/IntersectMBO/cardano-node.git cardano-node2
cd cardano-node2/
git fetch --all --recurse-submodules --tags
git checkout tags/10.5.3

Then upgrade ghcup and do a cabal update. Just a note, you can now use GHC 9.6.7 and cabal version 3.12.1.0

ghcup upgrade
ghcup install ghc 9.6.7
ghcup set ghc 9.6.7
ghcup install cabal 3.12.1.0
ghcup set cabal 3.12.1.0
cabal update
ghc --version
cabal --version

Note: make sure you have ghc 9.6.7 and cabal 3.12.1.0 before proceeding.

Build the node:

cd $HOME/git/cardano-node2
cabal configure -O0 -w ghc-9.6.7
cabal build cardano-node cardano-cli

Check cardano-cli and cardano-node that the build was successful:

$(./scripts/bin-path.sh cardano-node) version
$(./scripts/bin-path.sh cardano-cli) version

The cardano-node version should be 10.5.3 and cardano-cli is 10.11.0.0

Go get the new config files from Mainnet - The Cardano Operations Book (assuming mainnent, other get your relevant environment files)

Stop your node

sudo systemctl stop cardano-node

Then copy over the new executables

sudo cp -p "$(./scripts/bin-path.sh cardano-node)" /usr/local/bin/cardano-node
sudo cp -p "$(./scripts/bin-path.sh cardano-cli)" /usr/local/bin/cardano-cli

Again, check that successful version is reported:

cardano-node version
cardano-cli version

Then start your node.

sudo systemctl start cardano-node

Monitor the progress by either using gliveview or journalctl, and check if there’s any errors starting:

journalctl --unit=cardano-node --follow

Warning - this requires a full replay, so make sure you have many hours free for your relays or BP to work through it. You could also grab a mithril snapshot, but make sure you get the right one given the recent forking issue.

Then a quick clean up:

cd $HOME/git/
rm -rf cardano-node-old
mv cardano-node cardano-node-old
mv cardano-node2 cardano-node
3 Likes

Hi. I tried to upgrade the node to 10.5.3 version however there seem to be an error with gLiveView. As soon as I updated it to the latest version it keeps giving me error “Could not find Prometheus Host and Port in the provided config”. I have cross checked the host and port in config.json and it seems correct. Config.json is also reflected correctly in env file. Anyone has same issue?

Yeah, i had a similar problem. I uncommented (removed the #) from the Prometheus and EKG variables in the env file and got it running.

1 Like