DB同期ブートストラップ(Mithrilベータ版)¶
概要
- このマニュアルではMithril-Clientを使用したcardano-node DB同期ブートストラップを実行します。
- ノード初回起動時のDB同期時間を約2日から約30分以内にまで短縮できます。
- Mithrilプロトコルはまだベータバージョンのため、ご自身の責任で実施してください。
- この作業は 2.ノードインストールの2-1~2-7まで実施してから行って下さい。
- スナップショットノードバージョンとサーバーノードバージョンが異なる場合、DB再構築処理が入る場合がありDB同期までに数時間かかります。
1.依存環境インストール¶
1-1. システムアップデート¶
ノード停止
sudo systemctl stop cardano-node
sudo apt update -y && sudo apt upgrade -y
sudo apt install -y libssl-dev build-essential m4 jq
1-2. Rustインストール¶
確認
Rustがインストールされている場合、この項目は実施不要です。
rustc -V
Command 'rustc' not found, but can be installed with:
の戻り値がある場合は、以下の作業を実施して下さい。
RUST環境を準備します
mkdir $HOME/.cargo && mkdir $HOME/.cargo/bin
chown -R $USER $HOME/.cargo
touch $HOME/.profile
chown $USER $HOME/.profile
rustupインストール
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
1) Proceed with installation (default) 1を入力してEnter
source $HOME/.cargo/env
rustup install stable
rustup default stable
rustup update
rustup component add clippy rustfmt
rustup target add x86_64-unknown-linux-musl
2.Mithril-Clientインストール¶
cd $HOME/git
git clone https://github.com/input-output-hk/mithril.git
cd mithril
git fetch --all --prune
mithril_release="$(curl -s https://api.github.com/repos/input-output-hk/mithril/releases/latest | jq -r '.tag_name')"
git checkout tags/${mithril_release}
ビルド
cd mithril-client-cli
make build
バージョン確認
./mithril-client -V
Mithril Githubのリリースノート内にある
mithril-client-cli
のバージョンをご確認ください。
システムフォルダへコピー
sudo mv mithril-client /usr/local/bin/mithril-client
バージョン確認
mithril-client -V
3.DBブートストラップ¶
tmux作業ウィンドウを作成する
tmux new -s mithril
3-1.変数セット¶
export NETWORK=mainnet
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 SNAPSHOT_DIGEST=latest
3-2.最新スナップショットDL¶
既存DBフォルダ削除
rm -rf $NODE_HOME/db
最新スナップショットダウンロード及び解凍
mithril-client cardano-db download --download-dir $NODE_HOME latest
スナップショットダウンロード~解凍まで自動的に行われます。1/5~5/5が終了するまで待ちましょう
tmux作業ウィンドウを終了する
exit
その他のmithril-clientコマンド
Cardanoノードをブートストラップできる利用可能なスナップショットを一覧表示
mithril-client cardano-db snapshot list
戻り値
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
| Epoch | Immutable | Network | Digest | Size | Locations | Created |
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
| 438 | 4822 | mainnet | dfc05780e0aaefc0e0466cbf69f3c82561e99f8b208626b9870a2e69344199dc | 40337208527 | 1 | 2023-09-27 05:21:39.339429454 UTC |
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
| 438 | 4821 | mainnet | bbe08607a326c1d6e52c43897808b8ca4c02cc0fbb3d0248b341fd7bbc81f2e3 | 40328088621 | 1 | 2023-09-26 23:13:39.908538941 UTC |
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
| 438 | 4820 | mainnet | d993a6267fefa1c34c0f270337dc3fa5324bc399f908e4a38ec80bb3348e8fe1 | 40320340866 | 1 | 2023-09-26 17:31:56.927673920 UTC |
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
| 438 | 4819 | mainnet | f8dd9c7ee08c6dffebe851a19af44bcb82990d4c174dc366dfaa18e40c20b842 | 40316728370 | 1 | 2023-09-26 11:50:50.123658352 UTC |
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
| 438 | 4818 | mainnet | 70c5c6847116d0a4ca93f81ac193db9d2a17084065963ae298646a157825ab7e | 40314024073 | 1 | 2023-09-26 05:44:57.236767751 UTC |
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
| 438 | 4817 | mainnet | 0597ca3e7d699155ce73aaae53805ea32a981ff213f772dd70e9dbead626acf2 | 40299093577 | 1 | 2023-09-25 23:13:32.500760943 UTC |
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
| 438 | 4816 | mainnet | 074a576bce34006369837899ecdaaac69f18e31dd193aaa5527d32a7c36fb10e | 40285275527 | 1 | 2023-09-25 17:33:02.562751472 UTC |
+-------+-----------+---------+------------------------------------------------------------------+-------------+-----------+-----------------------------------+
スナップショット詳細表示
mithril-client cardano-db snapshot show (Digestハッシュ値指定)
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Info | Value |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Epoch | 438 |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Immutable File Number | 4821 |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Network | mainnet |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Digest | bbe08607a326c1d6e52c43897808b8ca4c02cc0fbb3d0248b341fd7bbc81f2e3 |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Size | 40328088621 |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Cardano node version | 8.1.2 |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Location 1 | https://storage.googleapis.com/cdn.aggregator.release-mainnet.api.mithril.network/mainnet-e438-i4821.bbe08607a326c1d6e52c43897808b8ca4c02cc0fbb3d0248b341fd7bbc81f2e3.tar.zst |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Created | 2023-09-26 23:13:39.908538941 UTC |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Compression Algorithm | Zstandard |
+-----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
4.ノード起動¶
sudo systemctl start cardano-node
ノード同期確認
gliveviewを起動し、最新ブロックと同期していることを確認する
glive