شغّل المدققين وعُقد RPC باستخدام erpc validator وerpc rpc

يشغّل erpc rpc عُقد RPC على 18 سلسلة، ويشغّل erpc validator مدققين على 13 منها. تستخدم كل السلاسل الأوامر الفرعية نفسها، وأوامر دورة حياة العُقد هذه مجانية ولا تحتاج إلى حساب.
تصف هذه الصفحة ERPC CLI v0.1.0-rc.4، وهو إصدار تمهيدي. ولا يزال اختبار القبول على مضيفات حقيقية جاريًا: يوضح قسم وضع كل سلسلة ودليل كل سلسلة حالةَ كل سلسلة.

نشر عقدة

يُعدّ init الخادم، ويثبّت deploy العقدة ويشغّلها. تبدأ عقدة RPC لـ Ethereum من خادم Ubuntu خالٍ، بالإصدار 24.04 أو أحدث:
bash
# check the server, pin the client releases, store the node in 1Password
erpc rpc --chain ethereum -n mainnet --name eth1 init --host <address> --vault <vault id> --ssh-key ~/.ssh/id_ed25519.pub
# install, fetch a snapshot, apply the firewall, start
erpc rpc --chain ethereum -n mainnet --name eth1 deploy --ssh-key ~/.ssh/id_ed25519.pub
# both layers, sync and head
erpc rpc --chain ethereum -n mainnet --name eth1 status --ssh-key ~/.ssh/id_ed25519.pub
تحتاج بعض السلاسل إلى تجهيز أمور أخرى أولًا، ويذكر دليل كل سلسلة ما هي. يحتاج مدقق Solana الجديد أو عقدة RPC الجديدة لـ Solana إلى ثلاثة أنظمة ملفات مركَّبة، وإلى أن تكون مفاتيح كلٍّ منهما موجودة مسبقًا في 1Password.

اختيار السلسلة والشبكة والمضيف

اختر السلسلة باستخدام --chain أو ERPC_CHAIN أو الإعداد default_chain، والشبكة باستخدام -n، والمضيف باستخدام --name. ويتطلب أي تغيير على mainnet كتابة --chain في سطر الأوامر.
  • يشغّل كلٌّ من erpc validator (الاسم المستعار v) وerpc rpc (الاسم المستعار r) وerpc node (الاسم المستعار n، لـ Avalanche وSui) أوامرَ العُقد.
  • شغّل مجموعة أوامر دون أمر فرعي (erpc validator) لسرد أوامرها الفرعية.
  • في أوامر العُقد، يجب أن يأتي --json قبل الأمر: erpc --json rpc ….

الأوامر التي تعمل على كل سلسلة

الأمر الفرعيما يفعله
initيفحص الخادم، ويحدد إصدارات العميل، ويحفظ العقدة في 1Password، ويُعدّ المضيف
deployيثبّت العميل أو يبنيه، ويجلب لقطة، ويطبّق جدار الحماية حيث يملك erpc جدار حماية لتلك العقدة، ثم يشغّل العقدة
list, status, logsالجرد والصحة والسجل
start, stop, restartالتحكم في الخدمة، بالترتيب الصحيح للعُقد ذات الطبقات المتعددة
updateينتقل إلى إصدار آخر من العميل؛ وتعتمد سياسة التراجع على العميل
update-configيطبّق تغييرات الإعدادات والوصول وفق قواعد إعادة التشغيل الخاصة بالسلسلة
planيعرض خطة النشر أو الإعدادات الخاصة بالسلسلة
destroyيوقف الخدمات التي يملكها أو يُخرجها من الخدمة؛ ويتبع الاحتفاظ بالبيانات والمفاتيح وجدار الحماية دليلَ عمليات السلسلة
أما مدقق Solana المسجَّل على الواجهة الخلفية solv، فلا يملك من هذه الأوامر إلا init وdeploy وlist وstatus.

السلاسل والأدلة

السلسلةعقدة RPCالمدققالشبكاتالأدلة
Solanaerpc rpc --chain solanaerpc validator --chain solanamainnet، testnetالعمليات، التسجيل، السلسلة
Ethereumerpc rpc --chain eth (mainnet، --type full أو archive)erpc validator --chain eth (Hoodi وmainnet)mainnet، HoodiRPC، المدقق، السلسلة
Baseerpc rpc --chain basemainnet، sepoliaالسلسلة
Avalancheerpc rpc --chain avax (وأيضًا erpc node)erpc validator --chain avaxmainnet، fujiالعمليات، السلسلة
Bitcoinerpc rpc --chain bitcoinmainnet، testnet4، signet، regtestRPC، السلسلة
Polygonerpc rpc --chain polygonerpc validator --chain polygonmainnet، amoyRPC، المدقق، السلسلة
BNB Chainerpc rpc --chain bscerpc validator --chain bscmainnet، chapelRPC، المدقق، السلسلة
Kaiaerpc rpc --chain kaiaerpc validator --chain kaiamainnet، kairosRPC، Core cell، السلسلة
Arbitrumerpc rpc --chain arbitrum (mainnet وnova وsepolia)erpc validator --chain arbitrum (شبكة Arbitrum One mainnet فقط)mainnet، nova، sepoliaRPC، المدقق، السلسلة
Optimismerpc rpc --chain optimismmainnet، sepoliaالعمليات، السلسلة
Hyperliquiderpc rpc --chain hyperliquiderpc validator --chain hyperliquidmainnet، testnetRPC، المدقق، AQA، السلسلة
Monaderpc rpc --chain monaderpc validator --chain monadmainnet، testnetالعمليات، السلسلة
TRONerpc rpc --chain tronerpc validator --chain tronmainnet، nileالعمليات، السلسلة
Suierpc rpc --chain sui (وأيضًا erpc node)erpc validator --chain suimainnet، testnetالعمليات، السلسلة
NEARerpc rpc --chain nearerpc validator --chain nearmainnet، testnetRPC، المدقق، السلسلة
Arcerpc rpc --chain arcmainnet، testnetبيئة تشغيل RPC، السلسلة
Robinhood Chainerpc rpc --chain robinhooderpc validator --chain robinhoodmainnet، testnetالقبول، المدقق، السلسلة
Soneiumerpc rpc --chain soneiummainnet، minatoالسلسلة
يضم تشغيل العُقد برامج العميل لكل سلسلة.

ما يحتاجه erpc على الخادم

  • يسجّل erpc الدخول عبر SSH بصفته مستخدم sudo (ubuntu افتراضيًا) باستخدام مفتاحك، من وكيل SSH في 1Password أو من SSH_AUTH_SOCK، ويثبّت مفتاح المضيف في المرة الأولى.
  • يحتاج الخادم إلى /usr/bin/python3 وإلى حساب دخول لا يطلب فيه sudo كلمة مرور.
  • يجب أن يكون /opt مسبقًا مجلدًا حقيقيًا يملكه root ولا تستطيع مجموعته ولا الآخرون الكتابة فيه، كما يأتي في Ubuntu؛ ولا ينشئه erpc. ويخضع /opt/erpc والمجلدان runs وuploads اللذان ينشئهما erpc داخله للقاعدة نفسها، ولا يجوز أن يكون أيٌّ منها رابطًا رمزيًا: لإبقائها على وحدة تخزين أخرى، ركِّب تلك الوحدة على /opt/erpc. وبالنسبة إلى العقدة، يجب أيضًا أن يحتفظ نظام الملفات الذي يحوي /opt/erpc بـ POSIX ACLs (وهذا ما يفعله ext4 وXFS افتراضيًا)، وإلا توقّف erpc.
  • يحتاج مضيف Solana الجديد إلى Ubuntu 24.04 وsystemd 255 ومعالج x86-64 بميزتي CPU هما AVX2 وSHA. يتطلب ERPC ما لا يقل عن 32 خيطًا منطقيًا و480 GiB من الذاكرة القابلة للاستخدام لعقدة RPC لـ Solana، و24 خيطًا و300 GiB لمدقق mainnet، و24 خيطًا و120 GiB لمدقق testnet.

كيف يشغّل erpc العقدة

  • في معظم السلاسل، يعمل العميل بمستخدم خاص به لا يستطيع تسجيل الدخول، ويُتحقَّق من كل إصدار مقابل مجموع اختباري محدد مسبقًا قبل تثبيته، ويُطبَّق جدار حماية nftables مع تراجع بمؤقِّت يجب أن يؤكده اتصال إدارة جديد. لكن ليست كلها كذلك: تُبنى عقدة Solana الجديدة على الخادم من commit محدد مسبقًا للمصدر، وتعمل عقدة Solana المسجَّلة على الواجهة الخلفية solv بمستخدم دخول لديه sudo دون كلمة مرور، وتجلب بعض الأدوات دون مجموع اختباري.
  • لا يطبّق erpc أي جدار حماية على مدققي Solana على الواجهة الخلفية solv، ولا على مدققي Ethereum، ولا على عُقد Bitcoin، لذا فإن تصفية الحركة إلى تلك المضيفات مسؤوليتك.
  • احتفظ بطريقة مستقلة للوصول إلى المضيف أثناء تغييرات الشبكة.
  • ما دام مجلد drop-in لخدمة محمية يحتوي على ملف آخر، مثل override.conf الناتج عن systemctl edit، ترفض خطوة جدار الحماية المتابعة ولا تغيّر شيئًا. انقل ملف drop-in الخاص بك خارج المجلد وشغّل الأمر مرة أخرى.
  • تصل الأسرار المرسلة من جهازك إلى الخادم عبر الإدخال القياسي، ولا تُمرَّر أبدًا في سطر أوامر.
  • يتزامن مدقق Solana الجديد بهوية منفصلة مع تعطيل التصويت. ينقل deploy --activate-validator مضيفًا يجتاز فحص الصحة إلى هويته الأصلية المسجَّلة بعد فحوصات التسجيل العام وnative BLS. يستأنف --backend solv مضيف solv موجودًا، ولا يستطيع إنشاء مضيف جديد.
  • لا تستعِد موقِّع مدقق Ethereum من نسخة احتياطية: انقل الموقِّع باستخدام erpc v --chain eth migrate.
يوضح تسجيل الدخول والمفاتيح المفاتيح التي تحتفظ بها كل عقدة في 1Password وعلى المضيف.

وضع كل سلسلة

لكل سلسلة في الجدول، يُتحقَّق من التنفيذ دون اتصال، ويُرجأ اختبار القبول المباشر على مضيفات حقيقية. يختبر فحص توجيه أوامر RPC الأوامر الفرعية المشتركة الاثني عشر كلها لجميع السلاسل الثماني عشرة، ولا يشغّل أيٌّ من هذه الفحوصات عقدة على مضيف حقيقي. وتذكر صفحة كل سلسلة في خريطة مصادر السلاسل وضعها.