Solana پرنیازترین زنجیره برای اجرای شخصی است. اعتبارسنج (validator) یا نود RPC کامل به CPU بسیار سریع، مقدار زیادی RAM و دیسکهای سریع NVMe نیاز دارد و الزامات مدام تغییر میکنند. این راهنما توضیح میدهد در عمل چه معنایی دارد تا بتوانید تصمیم بگیرید نود خودتان لازم است یا پیکربندی کوچکتری کافی است.
اعتبارسنج، نود RPC یا هیچکدام؟
- اعتبارسنج. روی بلوکها رأی میدهد و به مشخصات کامل سختافزار، یک حساب رأی شارژشده و آپتایم دائمی نیاز دارد.
- نود RPC. به درخواستهای برنامهها، رباتها و ایندکسرها پاسخ میدهد. رأی نمیدهد، ولی همچنان به سختافزار مشابه نیاز دارد و اگر ایندکس حسابها را فعال کنید RAM بیشتری هم میخواهد.
- استفاده سبکتر. اگر فقط چند تراکنش میفرستید یا کمی داده میخوانید، معمولاً یک نقطهٔ پایانی RPC پولی ارزانتر از اجرای نود است.
پیش از خرید، الزامات رسمی اعتبارسنج Solana را بررسی کنید. آنها در مستندات Solana و Agave منتشر شدهاند و با شبکه تغییر میکنند. بهعنوان راهنمای تقریبی، برای نود RPC پرکار صدها GB RAM و چند درایو سریع NVMe انتظار داشته باشید. این قلمرو سرور اختصاصی است، نه VPS کوچک. صفحهٔ هاستینگ نود Solana ما گزینههای متناسب را فهرست کرده است.
گام ۱: آمادهسازی سرور
از Ubuntu LTS و مراحل ایمنسازی یک VPS جدید استفاده کنید. یک کاربر اختصاصی بسازید و اگر بیش از یک درایو NVMe دارید، لجر و حسابها را روی درایوهای جداگانه بگذارید.
sudo adduser --disabled-password --gecos "" sol
sudo mkdir -p /mnt/ledger /mnt/accounts
sudo chown -R sol:sol /mnt/ledger /mnt/accounts
مرحله 2: افزایش محدودیتهای سیستم
Solana فایلهای زیادی باز میکند و از نگاشتهای حافظهٔ بزرگ استفاده میکند. اینها را به /etc/sysctl.d/21-solana.conf و به unit سیستمدی خود اضافه کنید:
vm.max_map_count=1000000
net.core.rmem_max=134217728
net.core.wmem_max=134217728
# in the systemd unit:
LimitNOFILE=1000000
با sudo sysctl --system اعمال کنید.
مرحله 3: نصب نرمافزار اعتبارسنج
نسخهٔ فعلی Agave (کلاینت اعتبارسنج Solana) را با روش مستندات رسمی نصب کنید و آن را تأیید کنید. سپس نسخه را بررسی کنید:
agave-validator --version
solana --version
مرحله 4: راهاندازی نود RPC
این شکل متداول دستور شروع برای نود RPC بدون رأی است. اعتبارسنجهای شناختهشده و entrypointها را از مستندات رسمی برای کلاستر خود استفاده کنید.
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
جاینگهدارها را با مقادیر مستندات جایگزین کنید. --private-rpc مانع اعلام پورت RPC به شبکه میشود و باز هم باید آن را با فایروال بسته نگه دارید.
مرحله 5: تماشای رسیدن به زنجیره
solana catchup --our-localhost
solana-validator --ledger /mnt/ledger monitor
رسیدن به زنجیره از روی snapshot از چند دقیقه تا چند ساعت طول میکشد. اگر نود عقب بماند و هرگز جبران نکند، معمولاً علت دیسک یا شبکهٔ شماست.
فایروال
بازهٔ پورتهای gossip و TPU را که در مستندات آمده باز کنید (بازهٔ پیشفرض 8000 تا 10000) و RPC (یعنی 8899 و 8900) را خصوصی نگه دارید. اگر باید RPC را به ماشینهای دیگر ارائه کنید، یک reverse proxy با احراز هویت جلوی آن بگذارید.