الخطوات من 1 إلى 4 لتثبيت عقدة التحقق من الصحة

الخطوة 5: تثبيت عقدة التخزين

مجموعة الديسكورد: https://discord.gg/gk6Y7YqunR

مجموعة التليجرام: https://t.me/niuwuriji

قناة التليجرام : https://t.me/jiedubalaodi

0G هو أول نظام لإتاحة البيانات مزود بطبقة تخزين عالمية مدمجة وقابلة للتطوير للغاية ولا مركزية. تعتمد قابلية التوسع لـ 0G على فكرة تقسيم سير عمل توفر البيانات إلى مسار نشر البيانات ومسار تخزين البيانات. يحدث نقل البيانات المجمعة على قناة تخزين البيانات المدعومة بطبقة التخزين، مما يحقق قابلية التوسع الأفقي من خلال التقسيم المصمم جيدًا، بينما تضمن قناة نشر البيانات خصائص توفر البيانات من خلال الإجماع على أخذ عينات توفر البيانات، وهي عملية لا تتطلب سوى نقل البيانات الصغيرة من خلال بروتوكول الإجماع لتجنب اختناق بث المعاملات

سيرشدك هذا الدليل خطوة بخطوة لإكمال عملية إعداد عقدة المُحقق في 0g.AI. ستتعلم كيفية:

  • تثبيت وإعداد عقدة 0g.AI

  • استلام رموز الاختبار

  • إنشاء معلومات المُحقق (validator) والمشاركة في التحقق من العقدة

1. نظرًا لمتطلبات المشروع للأجهزة فهي متوسطة، يمكنك استخدام جهاز محلي، أو VPS (خادم عن بُعد) وما شابه لإعداد العقدة

إعدادات موصى بها للعقدة: معالجان نواتان + 8G + قرص صلب 300G

فيما يلي دليل الإعداد التفصيلي:

  1. تنفيذ سكربت نشر العقدة بنقرة واحدة


wget -O 0g.sh https://raw.githubusercontent.com/a3165458/0g.ai/main/0g.sh && chmod +x 0g.sh && ./0g.sh

2. استيراد محفظة/إنشاء محفظة جديدة (المثال هنا هو استيراد محفظة)

الحصول على عنوان EVM المقابل


أمر استخراج عنوان EVM:echo "0x$(evmosd debug addr $(evmosd keys show هنا استبدل ذلك باسم محفظتك -a) | grep hex | awk '{print $3}')"

3. إنشاء مُحقق (يتطلب استلام tokens من الـ faucet) (استلام DC عبر faucet غير متاح مؤقتًا، يمكن فقط عبر الويب)

موقع الاستلام الرسمي للـ faucet: https://faucet.0g.ai/ (يمكنك استلام 0.1 فقط، الوضع سيئ)

ادخل إلى رابط DC الرسمي: https://discord.com/invite/0glabs


Admin ، يا أخي هل يمكنك من فضلك إرسال بعض رموز اختبارية (testnet) لي

عنوان EVM المقابل المستخرج في الخطوة السابقة

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — -

يجب أن تكون قيمة التوكنات وارتفاع المزامنة (sync height) كلاهما متوافقين قبل الإنشاء، وإلا سيحدث خطأ

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

4. ادخل إلى الموقع للتحقق من وضع عمل مُحققك بنفسك:

متصفح المُحقق (Validator): https://explorer.validatorvn.com/OG-Testnet/uptime

اكتمل إعداد عقدة المُحقق حتى الآن

# إذا قمت بإنشاء مُحقق (validator) فتأكد من عمل نسخة احتياطية لملف `priv_validator_key.json` الموجود في المسار $HOME/.evmosd/config/



— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

5.

تحديث تثبيت عقدة التخزين

إعدادات موصى بها

ثنائي النواة + 8G + SSD بسعة 1T


wget -O 0g.sh https://raw.githubusercontent.com/a3165458/0g.ai/main/0g.sh && chmod +x 0g.sh && ./0g.sh


screen -list


ادخل إلى المسار المناسب لعرض معلومات logs

cd log
ls
tail -f zgs.log.2024-04-08

اكتمل نشر عقدة التخزين (storage) حتى الآن

— — — — — — — — — — — — — — — -

الأوامر الشائعة:

التحقق من حالة العقدة

evmosd status | jq

التحقق من مُحققَك

evmosd q staking validator $(evmosd keys show $WALLET_NAME --bech val -a

التحقق من عداد الكتل التي تم تفويتها لدى المُحقق وكذلك تفاصيل السجن (prison)

evmosd q slashing signing-info $(evmosd tendermint show-validator)

تحرير مُحققَك

evmosd tx slashing unjail --from $WALLET_NAME --gas=500000 --gas-prices=99999aevmos -y

تفويض الرموز إلى المُحقق الخاص بك

evmosd tx staking delegate $(evmosd keys show $WALLET_NAME --bech val -a) <AMOUNT<aevmos --from $WALLET_NAME --gas=500000 --gas-prices=99999aevmos -y

العنوان

evmosd status | jq -r '"\(.NodeInfo.id)@\(.NodeInfo.listen_addr)"'

تعديل مُحققك

evmosd tx staking edit-validator --website="<WEBSITE>" --details="<DESCRIPTION>" --new-moniker="<NEW_MONIKER>" --identity="<KEY BASE PREFIX>" --from=$WALLET_NAME --gas=500000 --gas-prices=99999aevmos -y

control-small-size, 28px); height: var( — control-small-size, 28px);”>

إرسال الرموز بين المحافظ

evmosd tx bank send $WALLET_NAME <TO_WALLET> <AMOUNT<aevmos --gas=500000 --gas-prices=99999aevmos -y

استعلام عن رصيد محفظتك

evmosd q bank balances $(evmosd keys show $WALLET_NAME -a)

مراقبة حمل الخادم

sudo apt update
sudo apt install htop -y
htop

التحقق من المُحققين النشطين

evmosd q staking validators -o json --limit=1000 \
| jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' \
| jq -r '.tokens + " - " + .description.moniker' \
| sort -gr | nl

التحقق من المُحققين غير النشطين

evmosd q staking validators -o json --limit=1000 \
| jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' \
| jq -r '.tokens + " - " + .description.moniker' \
| sort -gr | nl

عرض سجلات العقدة


pm2 logs evmosd

إعادة تشغيل العقدة


pm2 restart evmosd

إيقاف العقدة

pm2 stop evmosd

ترقية العقدة


cd 0g-evmos
git fetch
git checkout tags/
make install
evmosd version
# أعد تشغيل العقدة
pm2 restart evmosd && pm2 logs evmosd

حذف العقدة من الخادم

# إذا قمت بإنشاء مُحقق (validator) فتأكد من عمل نسخة احتياطية لملف `priv_validator_key.json` الموجود في المسار $HOME/.evmosd/config/

pm2 delete evmosd
rm -rf $HOME/.evmosd $HOME/0g-evmos

مثال لاستخدام gRPC

wget https://github.com/fullstorydev/grpcurl/releases/download/v1.7.0/grpcurl_1.7.0_linux_x86_64.tar.gz
tar -xvf grpcurl_1.7.0_linux_x86_64.tar.gz
chmod +x grpcurl
./grpcurl -plaintext localhost:$GRPC_PORT list

### تأكد من تفعيل gRPC في app.toml
# grep -A 3 "\[grpc\]" /home/og-testnet-validator/.evmosd/config/app.toml

مثال لاستعلام REST API

curl localhost:$API_PORT/cosmos/staking/v1beta1/validators
### تأكد من تفعيل API في app.toml
# grep -A 3 "\[api\]" /home/og-testnet-validator/.evmosd/config/app.toml