Solana adalah chain yang paling menuntut untuk dijalankan sendiri. Validator atau node RPC penuh membutuhkan CPU yang sangat cepat, RAM dalam jumlah besar, dan disk NVMe yang cepat, dan persyaratannya terus berubah. Panduan ini menjelaskan artinya dalam praktik, sehingga kamu bisa memutuskan apakah membutuhkan node sendiri atau pengaturan yang lebih kecil.
Validator, node RPC, atau bukan keduanya?
- Validator. Memberikan suara pada blok dan membutuhkan spesifikasi perangkat keras penuh, akun vote yang didanai, dan uptime konstan.
- Node RPC. Melayani permintaan untuk aplikasi, bot, dan indexer. Node ini tidak memberikan suara, tetapi tetap membutuhkan perangkat keras yang serupa, dan lebih banyak RAM jika kamu mengaktifkan account index.
- Penggunaan ringan. Jika kamu hanya mengirim beberapa transaksi atau membaca sedikit data, endpoint RPC berbayar biasanya lebih murah daripada menjalankan node.
Periksa persyaratan validator Solana resmi sebelum membeli. Persyaratan itu dipublikasikan dalam dokumentasi Solana dan Agave dan berubah mengikuti jaringan. Sebagai gambaran kasar, harapkan RAM ratusan GB untuk node RPC yang sibuk dan beberapa drive NVMe yang cepat. Itu wilayah server dedicated, bukan VPS kecil. Halaman hosting node Solana kami mencantumkan pilihan dengan ukuran yang sesuai.
Langkah 1: siapkan server
Gunakan Ubuntu LTS dan langkah-langkah di cara mengamankan VPS baru. Buat pengguna khusus dan letakkan ledger dan accounts di drive NVMe terpisah jika kamu memiliki lebih dari satu.
sudo adduser --disabled-password --gecos "" sol
sudo mkdir -p /mnt/ledger /mnt/accounts
sudo chown -R sol:sol /mnt/ledger /mnt/accounts
Langkah 2: naikkan batas sistem
Solana membuka banyak file dan menggunakan memory map yang besar. Tambahkan ini ke /etc/sysctl.d/21-solana.conf dan ke unit systemd-mu:
vm.max_map_count=1000000
net.core.rmem_max=134217728
net.core.wmem_max=134217728
# in the systemd unit:
LimitNOFILE=1000000
Terapkan dengan sudo sysctl --system.
Langkah 3: instal perangkat lunak validator
Instal rilis Agave terbaru (klien validator Solana) menggunakan metode di dokumentasi resmi, dan verifikasi. Lalu periksa versinya:
agave-validator --version
solana --version
Langkah 4: mulai node RPC
Ini adalah bentuk umum perintah start untuk node RPC yang tidak memberikan suara. Gunakan known validator dan entrypoint dari dokumentasi resmi untuk cluster-mu.
agave-validator \
--identity /home/sol/identity.json \
--ledger /mnt/ledger \
--accounts /mnt/accounts \
--entrypoint ENTRYPOINT:8001 \
--known-validator KNOWN_VALIDATOR_PUBKEY \
--only-known-rpc \
--rpc-port 8899 \
--private-rpc \
--no-voting \
--full-rpc-api \
--limit-ledger-size \
--log /var/log/solana/validator.log
Ganti placeholder dengan nilai dari dokumentasi. --private-rpc mencegah port RPC diiklankan ke jaringan, dan kamu tetap harus menutupnya dengan firewall.
Langkah 5: pantau hingga tersusul
solana catchup --our-localhost
solana-validator --ledger /mnt/ledger monitor
Mengejar ketertinggalan dari snapshot memakan waktu dari beberapa menit hingga beberapa jam. Jika node tertinggal dan tidak pernah pulih, penyebabnya biasanya disk atau jaringanmu.
Firewall
Izinkan rentang port gossip dan TPU yang dijelaskan di dokumentasi (rentang default adalah 8000 hingga 10000) dan jaga RPC (8899 dan 8900) tetap privat. Pasang reverse proxy dengan autentikasi di depannya jika kamu harus melayani RPC ke mesin lain.