搭建Solana驗證者節點(全節點)的過程

陨落&新生發表於2024-11-22

系統要求

確保你的系統滿足以下要求:

作業系統:Ubuntu 22.04 LTS(推薦)。
CPU:16 核以上。
RAM:128 GB。
儲存:2TB NVMe SSD 或更大。
網路:1Gbps 頻寬。

安裝依賴

更新系統並安裝基礎依賴:

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git screen build-essential pkg-config libssl-dev

安裝 Solana CLI

從 Solana 的官方釋出頁下載 Solana CLI 工具:

sh -c "$(curl -sSfL https://release.solana.com/v1.16.4/install)"

驗證安裝

solana --version

示例輸出:

solana-cli 1.16.4

配置環境變數

將 Solana CLI 新增到系統路徑:

export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"
echo 'export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

獲取配置檔案

下載官方的節點配置檔案模板:

mkdir -p ~/solana-config && cd ~/solana-config
solana-genesis
solana-install init v1.16.4

設定節點身份

生成驗證者節點所需的身份金鑰:

solana-keygen new --outfile ~/solana-config/validator-keypair.json

同時生成投票賬戶金鑰和身份金鑰:

solana-keygen new --outfile ~/solana-config/vote-account-keypair.json

設定節點配置

啟動驗證者節點前需要配置啟動引數:

solana-validator \
  --identity ~/solana-config/validator-keypair.json \
  --vote-account ~/solana-config/vote-account-keypair.json \
  --ledger ~/solana-config/ledger \
  --rpc-port 8899 \
  --dynamic-port-range 8000-8020 \
  --entrypoint entrypoint.mainnet-beta.solana.com:8001 \
  --limit-ledger-size \
  --log ~/solana-config/validator.log

資料同步

首次執行時,節點需要從 Solana 網路同步資料。這會佔用大量儲存和頻寬:

solana-validator --ledger ~/solana-config/ledger --entrypoint entrypoint.mainnet-beta.solana.com:8001

啟動節點

同步完成後,啟動你的節點:

screen -S solana-validator
solana-validator --log ~/solana-config/validator.log

檢查節點狀態

透過 CLI 檢查節點是否執行正常:

solana catchup ~/solana-config/validator-keypair.json

示例輸出:

RPC: https://api.mainnet-beta.solana.com
Status: Fully synced

監控日誌

檢視節點的執行日誌,確保節點沒有錯誤:

tail -f ~/solana-config/validator.log

停止節點

如需停止節點,進入執行環境後按 Ctrl+A,然後按 D 退出 screen 會話,或直接殺死程序:

pkill solana-validator

常見問題

  • 初次同步時間較長:檢查網路速度和硬體效能。
  • 埠問題:確保伺服器上開放了必要的埠(如 8899 和動態埠範圍 8000-8020)。

此示例配置的是一個標準的主網驗證者節點,如果是測試網或開發網,需要調整 entrypoint--ledger 引數對應的值。

相關文章