ノード 11.0.1 アップグレード
現在インストールされているノードバージョンを確認する
echo $(cardano-node version | grep cardano-node)
注意
cardano-node v10.6.4 以下の方はこのマニュアルの対象外となります!
システムアップデート
sudo apt update -y && sudo apt upgrade -y
ノードアップデート
アップデート方法について
ビルド済みバイナリを使用する方法とソースコードからビルドする方法がありますが、このマニュアルではビルド済みバイナリを使用する方法のみを解説します。
作業ディレクトリ作成
mkdir -p $HOME/git/cardano-node2
cd $HOME/git/cardano-node2
ここでエラーが発生する場合
ここで何かしらのエラーが発生する場合、前回のアップグレード時にディレクトリの名称変更をしていない可能性があります。 以下を実行してください。
cd $HOME/git
rm -rf cardano-node-old
mv cardano-node/ cardano-node-old/
mv cardano-node2/ cardano-node/
mkdir -p $HOME/git/cardano-node2
cd $HOME/git/cardano-node2
バイナリをダウンロード
wget -q --show-progress https://github.com/IntersectMBO/cardano-node/releases/download/11.0.1/cardano-node-11.0.1-linux-amd64.tar.gz
バイナリを解凍する
tar xvf cardano-node-11.0.1-linux-amd64.tar.gz ./bin/cardano-node ./bin/cardano-cli
バイナリのバージョンを確認
$(find $HOME/git/cardano-node2 -type f -name "cardano-cli") version
$(find $HOME/git/cardano-node2 -type f -name "cardano-node") version
以下の戻り値を確認してください
cardano-cli 11.0.0.0 - linux-x86_64 - ghc-9.6
git rev 97036a66bcf8c89f687ae57a048eecc0389977ef
cardano-node 11.0.1 - linux-x86_64 - ghc-9.6
git rev 97036a66bcf8c89f687ae57a048eecc0389977ef
ノードを停止する
sudo systemctl stop cardano-node
バイナリをシステムディレクトリにコピー
sudo cp $(find $HOME/git/cardano-node2 -type f -name "cardano-cli") /usr/local/bin/cardano-cli
sudo cp $(find $HOME/git/cardano-node2 -type f -name "cardano-node") /usr/local/bin/cardano-node
コピーされたノードバージョンを確認
cardano-cli version
cardano-node version
以下の戻り値を確認してください
cardano-cli 11.0.0.0 - linux-x86_64 - ghc-9.6
git rev 97036a66bcf8c89f687ae57a048eecc0389977ef
cardano-node 11.0.1 - linux-x86_64 - ghc-9.6
git rev 97036a66bcf8c89f687ae57a048eecc0389977ef
設定ファイル更新
ノードバージョン 10.6.4 以降からアップグレードする場合は更新する必要がありません。
- BPノード
- リレーノード
mkdir -p $NODE_HOME/backup
cp $NODE_HOME/${NODE_CONFIG}-config.json $NODE_HOME/backup/${NODE_CONFIG}-config.json.bak
wget --no-use-server-timestamps -q \
https://raw.githubusercontent.com/IntersectMBO/cardano-node/11.0.1/configuration/cardano/mainnet-config.json \
-O $NODE_HOME/${NODE_CONFIG}-config.json
wget --no-use-server-timestamps -q \
https://raw.githubusercontent.com/IntersectMBO/cardano-node/11.0.1/configuration/cardano/mainnet-checkpoints.json \
-O $NODE_HOME/${NODE_CONFIG}-checkpoints.json
jq '. + {
"UseTraceDispatcher": false,
"EnableP2P": true,
"hasEKG": 12788,
"hasPrometheus": ["0.0.0.0", 12798],
"defaultBackends": ["KatipBK"],
"defaultScribes": [["FileSK", "./logs/node.json"], ["StdoutSK", "stdout"]],
"minSeverity": "Info",
"setupBackends": ["KatipBK"],
"setupScribes": [
{"scFormat": "ScJson", "scKind": "FileSK", "scName": "./logs/node.json"},
{"scFormat": "ScText", "scKind": "StdoutSK", "scName": "stdout", "scRotation": null}
],
"rotation": {"rpKeepFilesNum": 30, "rpLogLimitBytes": 5000000, "rpMaxAgeHours": 48},
"options": {
"mapBackends": {
"cardano.node.metrics": ["EKGViewBK"],
"cardano.node.resources": ["EKGViewBK"]
},
"mapSubtrace": {
"cardano.node.metrics": {"subtrace": "Neutral"}
}
}
}' $NODE_HOME/${NODE_CONFIG}-config.json > /tmp/config-tmp.json && \
mv /tmp/config-tmp.json $NODE_HOME/${NODE_CONFIG}-config.json
mkdir -p $NODE_HOME/backup
cp $NODE_HOME/${NODE_CONFIG}-config.json $NODE_HOME/backup/${NODE_CONFIG}-config.json.bak
wget --no-use-server-timestamps -q \
https://raw.githubusercontent.com/IntersectMBO/cardano-node/11.0.1/configuration/cardano/mainnet-config.json \
-O $NODE_HOME/${NODE_CONFIG}-config.json
wget --no-use-server-timestamps -q \
https://raw.githubusercontent.com/IntersectMBO/cardano-node/11.0.1/configuration/cardano/mainnet-checkpoints.json \
-O $NODE_HOME/${NODE_CONFIG}-checkpoints.json
jq '. + {
"UseTraceDispatcher": false,
"EnableP2P": true,
"hasEKG": 12788,
"hasPrometheus": ["127.0.0.1", 12798],
"defaultBackends": ["KatipBK"],
"defaultScribes": [["FileSK", "./logs/node.json"], ["StdoutSK", "stdout"]],
"minSeverity": "Info",
"setupBackends": ["KatipBK"],
"setupScribes": [
{"scFormat": "ScJson", "scKind": "FileSK", "scName": "./logs/node.json"},
{"scFormat": "ScText", "scKind": "StdoutSK", "scName": "stdout", "scRotation": null}
],
"rotation": {"rpKeepFilesNum": 30, "rpLogLimitBytes": 5000000, "rpMaxAgeHours": 48},
"options": {
"mapBackends": {
"cardano.node.metrics": ["EKGViewBK"],
"cardano.node.resources": ["EKGViewBK"]
},
"mapSubtrace": {
"cardano.node.metrics": {"subtrace": "Neutral"}
}
}
}' $NODE_HOME/${NODE_CONFIG}-config.json > /tmp/config-tmp.json && \
mv /tmp/config-tmp.json $NODE_HOME/${NODE_CONFIG}-config.json
DB更新
要チェック
ノードバージョン 10.7.1 からのアップデートの場合、DBの更新は必要ありません。
Mithril-Client ダウンロード
cd $HOME/git
curl --proto '=https' --tlsv1.2 -sSf \
https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh \
| sh -s -- -c mithril-client -d latest -p $(pwd)
Mithril-Client インストール
sudo install -m 755 mithril-client /usr/local/bin/mithril-client
ダウンロードファイルを削除
rm mithril-client
Mithril-Client バージョン確認
mithril-client -V
tmux を起動
tmux new -s mithril-client
Mithril 環境変数設定
export AGGREGATOR_ENDPOINT=https://aggregator.release-mainnet.api.mithril.network/aggregator
export GENESIS_VERIFICATION_KEY=$(wget -q -O - https://raw.githubusercontent.com/input-output-hk/mithril/main/mithril-infra/configuration/release-mainnet/genesis.vkey)
export ANCILLARY_VERIFICATION_KEY=$(wget -q -O - https://raw.githubusercontent.com/input-output-hk/mithril/main/mithril-infra/configuration/release-mainnet/ancillary.vkey)
export SNAPSHOT_DIGEST=latest
既存DBを削除
rm -rf $NODE_HOME/db
最新スナップショットをダウンロード
mithril-client cardano-db download \
--download-dir $NODE_HOME \
--include-ancillary \
$SNAPSHOT_DIGEST
tmux を終了
exit
作業ディレクトリの整理
旧バイナリを削除
rm -rf $HOME/git/cardano-node-old/
ディレクトリの名称変更
cd $HOME/git
mv cardano-node/ cardano-node-old/
mv cardano-node2/ cardano-node/
サーバーを再起動
サーバーを再起動する
sudo reboot
ノードの同期状態を確認する
sudo journalctl -u cardano-node -f