
solana mainnet validator 用 便利コマンド集(solv用)
このnoteはcamaoさんのノード鯖などで投稿されたsolana validator用のcliコマンドまとめになります。
solv使用かつjito mainnetを選択した場合を想定しています。
solv update用コマンド
source ~/.profile
//環境変数読み込み
pnpm install -g @epics-dao/solv
//pnpmから最新のsolvを取得
solv update && solv update -b
//solvの更新とバリデーター本体の更新
もしくは
solv s
//solv設定コマンド内からアップデート
solana leader-schedule | grep "validator identity" > schedule_for_validator.txt
//リーダースケジュールを調べてリーダースロットに被らない時間を確認
上述した方法でsolv updateが上手くいかなかった場合
agave-install init 1.xx.xx-jito && solana-validator --ledger /mnt/ledger exit -m
//solana公式の方法
agave-install init 2.xx.xx && agave-validator --ledger /mnt/ledger exit -m
//testnet
rocksdbおよびsnapshotの削除
sudo rm -rf /mnt/ledger/rocksdb
sudo rm -rf /mnt/ledger/incremental-snapshot*
sudo systemctl daemon-reload
validator起動状況の確認
solv get monitor
//ステータスの確認
solv -V
//solv バージョン確認
agave-validator --ledger /mnt/ledger/ monitor
//ledgerの読み込み確認
solana catchup --our-localhost
//キャッチアップ確認
solana catchup -ut --our-localhost=8899 --log --follow --commitment recent
//キャッチアップを時間をかけて確認
実際に更新できているか確認
agave validators | grep <validator address>
//mainnet-validator-keypair.jsonのアドレスを代入すると外部から見た自分のステータスを確認できる
ステーク用コマンド ※ mainnet-authority-keypair.jsonで自己バリデーターに対してステークしたsolが自己ステークになる
基準は100sol
solana create-stake-account ~/stake-keypair.json 100 --keypair mainnet-authority-keypair.json
//セルフステーク用アカウント作成
solana delegate-stake ~/stake-keypair.json ~/mainnet-vote-account-keypair.json --keypair mainnet-authority-keypair.json
//デリゲート
solv設定コマンド集
solv s
//solv設定
solv setup
//solvの初期構築 ※危険
solv stop
//solana validator 停止
solv start
//solana validator 開始
solv restart
//solana validator 再起動
solv restart --snapshot
//snapshotをダウンロードし再起動
commissionの変更
solana vote-update-commission [FLAGS] [OPTIONS] <VOTE_ACCOUNT_ADDRESS> <PERCENTAGE> <AUTHORIZED_KEYPAIR>
//公式https://docs.solanalabs.com/cli/usage#solana-vote-update-commission
solana vote-update-commission <VOTE_ACCOUNT_ADDRESS> 7 <AUTHORIZED_KEYPAIR>
//commissionを7%にする場合
jito-mev commission の変更
※更新反映は次のエポックから
※leader slotによって更新が反映されるため、遅れが生じる場合がある
※下記リンクから自分のvote account を検索することで他サイト反映前でもjito-mev commission を確認可能
https://kobe.mainnet.jito.network/api/v1/validators
Jito Solana Validators | Retool
sudo nano start-vlidator.sh
//start-vlidator.shの中に--commission-bps 10000 とあるので数字部分を変更 bpsのため10000が100%
sudo nano jito.config.json
//jito.config.jsonの 中に "commissionBps": 10000 とあるので同じく数字部分を変更
Solana Snapshot Finder with docker を使用
※solv4.1.0(2024/5/22)で追加された機能
不具合が起こったときに使用、ノードを一旦停止するので注意
古いsolvをインストールしアップデートした場合はdockerインストールが必要
dockerインストール手順
https://qiita.com/yoshiyasu1111/items/17d9d928ceebb1f1d26d
solv stop
solv rm:snapshot
solv get snapshot
solv start
#snapshot-finder(大元)の使用
sudo docker pull c29r3/solana-snapshot-finder:latest; \
sudo docker run -it --rm \
-v /mnt/ledger:/solana/snapshot \
--user $(id -u):$(id -g) \
c29r3/solana-snapshot-finder:latest \
--snapshot_path /solana/snapshot
ディスク容量の確認など
df -h
//ディスク容量の確認
lsblk
//ブロックデバイスを一覧表示
du -h -d 1 | sort -h
//カレントディレクトリのファイル容量を確認し降順でソート
sol送金
solana withdraw-from-vote-account -k mainnet-validator-keypair.json --commitment finalized voteアカウントアドレス 送り先アカウントアドレス 数量(SOL) --authorized-withdrawer authority-keypair.json
//voteアカウントからのsol送金
solana transfer -k mainnet-validator-keypair.json --commitment finalized 送り先 数量
//mainnet-validator-keypairからのsol送金
ポート確認
sudo ufw status
//ポート開放状況確認
sudo ufw allow 53
//tcp開放例
sudo ufw allow 8000:8020/udp
//udp開放例
sudo ufw enable
//有効化
エラーの確認
solv log | grep '\(WARN\|ERR\)'
//warn errorの確認
その他
solana-keygen recover 'ASK'
//solana-keygen newで作成したニーモニックをsolana-keygen recoverで復元した際にもとのpubkey
//と一致しないときに使用
solana block-production | grep <mainnet-pubkey>
//現在のエポックのリーダースロット割当を表示
tail -f /home/solv/solana-validator.log | grep '\(WARN\|ERR\)'
//ログのエラー確認(solv未使用)
sudo chmod 777
//ファイルのパーミッション権限をすべて許可
sudo chmod 755
//solv ubuntu などのhome下のフォルダーのデフォルト権限
指定例
権限 数値 概要
rw-r--r-- 644 オーナー以外は読み取り専用
rw-rw-rw- 666 テキストファイルなど
rwxr-xr-x 755 実行スクリプトなど
//参考元
https://qiita.com/koara-local/items/185838ea3fa37d9007f7