見出し画像

solana mainnet validator 用 便利コマンド集(solv用)

このnoteはcamaoさんのノード鯖などで投稿されたsolana validator用のcliコマンドまとめになります。
solv使用かつjito mainnetを選択した場合を想定しています。


solv update用コマンド

source ~/.profile
//環境変数読み込み

npm i -g @epics-dao/solv
//npmから最新のsolvを取得

solv update && solv update -b
//solvの更新とバリデーター本体の更新

もしくは

solv s
//solv設定コマンド内からアップデート


上述した方法でsolv updateが上手くいかなかった場合

solana-install init 1.xx.xx-jito && solana-validator --ledger /mnt/ledger exit -m
//solana公式の方法


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 バージョン確認

solana-validator --ledger /mnt/ledger/ monitor
//ledgerの読み込み確認

solana catchup --our-localhost
//キャッチアップ確認

solana catchup -ut --our-localhost=8899 --log --follow --commitment recent
//キャッチアップを時間をかけて確認


実際に更新できているか確認

solana 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

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

ディスク容量の確認など

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>
//現在のエポックのリーダースロット割当を表示

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



この記事が気に入ったらサポートをしてみませんか?