# Celestia Light & Full Node on the Mocha Testnet **Published by:** [Moei](https://paragraph.com/@0xmoei-2/) **Published on:** 2023-01-08 **URL:** https://paragraph.com/@0xmoei-2/celestia-light-full-node-on-the-mocha-testnet ## Content آموزش قدم به قدم راه‌اندازی نودهای لایت + فول شبکه سلستیا روی تست نت مچا Resources: Docs Explorer Twitter Discord سلستیا یک شبکه با طراحی ماژولاره و برخلاف اتریوم که یک بلاکچین یکپارچه است، در شبکه ماژولار اجزای بلاکچین و نودها هرکدوم جداگانه وظایفی رو به عهده دارند شبکه سلستیا از 2 لایه تشکیل شده که هرکدوم دارای نودهای متفاوتیه: Consensus Nodes 1.Validator Nodes 2.Consensus Full Nodes Data Availability Nodes 1.Bridge Nodes 2.Full Storage Nodes 3.Light Nodes از اونجایی که درحال حاضر تعداد زیادی نود ولیدیتور روی شبکه تست‌نت وجود داره و فقط 150 نفر با بیشترین تعداد توکن به عنوان ولیدیتور “فعال” انتخاب میشن، پیشنهاد تیم برای شرکت در تست‌نت راه‌اندازی یک یا هر دو نودهای "لایت" و "فول" است آموزش و دستورات کدنویسی در محیط سیستم عامل لینوکس اوبونتو انجام میشه و برای اطلاعات بیشتر برای نحوه ایجاد محیط اوبونتو میتونید این توییت رو مطالعه کنید در این آموزش ابتدا “لایت نود” رو راه میندازیم و بعدش “فول نود” رو در کنارش راه اندازی میکنیم راه اندازی لایت نود نود لایت باتوجه به اینکه سبکه میتونید روی کامپیوتر هم راه اندازیش کنید و حتما نیازی به سرور مجازی ندارید. من برای اینکه همیشه نودم فعال باشه روی یک سرور مجازی اوبونتو راه اندازیش کردم Requirements: PC or VPS, 1 core, 2 GB RAM and Hard SSD 5 GB سیستم رو آپدیت کنید sudo apt update && sudo apt upgrade -y موارد مورد نیاز رو نصب کنید sudo apt install curl tar clang pkg-config libssl-dev jq build-essential git make ncdu -y زبان go رو نصب کنید if ! [ -x "$(command -v go)" ]; then ver="1.19.1" cd $HOME wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" sudo rm -rf /usr/local/go sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" rm "go$ver.linux-amd64.tar.gz" echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash_profile source ~/.bash_profile fi بعد از نصب ورژنش رو چک کنید و از نصبش اطمینان حاصل کنید go version نصب سلسیتا git clone https://github.com/celestiaorg/celestia-node.git cd celestia-node/ git checkout tags/v0.6.0 make install make cel-key ورژن رو برای اطمینان از نصب چک کنید آماده سازی لایت نود celestia light init ساخت ولت لایت نود ./cel-key add mywallet --keyring-backend test --node.type light کلمات بازیابی که بهتون میده رو سیو کنید. برای کپی کردن متن از پوتی از کلید میانبر زیر استفاده کنید Ctrl + Shift + C اگر از قبل ولت داشتید برای بازیابی دستور زیر ./cel-key add mywallet --keyring-backend test --node.type light --recover مشاهده لیست ولت های لایت نود موجود در سیستم یا سرور ./cel-key list --node.type light --keyring-backend test حالا برای دریافت فاست به دیسکورد پروژه جوین شید و در کانال فاست تست نت “مچا” درخواست توکن تستی کنید راه اندازی لایت نود توسط SystemD این دستور مهمترین بخش نود هست که مشکل اکثر کاربرا تو همین قسمته پس با دقت نکات رو بخونید: ما در این قسمت با یک دستور، یک فایل “سرویس” میسازیم و کانفیگ یا تنظیمات نود رو برای راه اندازیش داخل فایل قرار میدیم اول کلیت دستور زیر رو ببینید و قبل از اجراش، توضیحات بعدش رو بخونید sudo tee <<EOF >/dev/null /etc/systemd/system/celestia-lightd.service [Unit] Description=celestia-lightd Light Node After=network-online.target [Service] User=root ExecStart=/usr/local/bin/celestia light start --core.ip https://rpc-mocha.pops.one:9090 --keyring.accname mywallet Restart=on-failure RestartSec=3 LimitNOFILE=4096 [Install] WantedBy=multi-user.target EOF طبق عکس زیر مواردی که شماره گذاری کردم قابل کانفیگ شدن هستند و به ترتیب هرشماره توضیحاتشو مینویسم 1- این قسمت آدرس فایلی به اسم سلستیا هست در سیستمتون که باید در دستور بالا جاگذاری بشه بعضا ممکنه فایل سلستیاتون در آدرسی که من قرار دادم نباشه؛ پس با دستور زیر، آدرس فایل سلستیا رو میتونید پیدا کنید و اگر با دستور بالا متفاوت بود جایگزینش کنید which celestia 2- نوع نود هست که میتونه لایت باشه یا فول 3- باید یک آر پی سی ولیدیتور رو برای نود لایتمون ست کنیم که بهش وصل شه و اونی که من در دستور بالا انتخاب کردم یک ولیدیتور اصلی شبکه است و میتونید تغییرش ندید اکثرا به مشکل بر نخوردند با این آر پی سی 4- این یکی اسم ولتی که ساختید رو باید قرار بدید و اگر با دستور من ولتتون رو ساخته یا ریکاور کرده باشید اگر برگردید به همون دستور میبینید که همین اسم یعنی “مای ولت” رو براش انتخاب کردیم و میتونید تغییرش ندید استارت لایت نود توسط SystemD systemctl daemon-reload systemctl enable celestia-lightd systemctl start celestia-lightd مدیریت سرویس لایت نود چک کردن لاگ لایت نود journalctl -u celestia-lightd.service -f کمی صبر کنید تا نود سینک شه و بعد اگر خطوط با عبارات زیر گرفتید یعنی نود فعاله Info / sampled / header / new header خروج از لاگ Ctrl + C چک کردن وضعیت لایت نود systemctl status celestia-lightd ریستارت لایت نود systemctl restart celestia-lightd پاک کردن لایت نود sudo systemctl stop celestia-lightd sudo systemctl disable celestia-lightd sudo rm /etc/systemd/system/celestia* -rf sudo rm $HOME/.celestia* -rf sudo rm $HOME/celestia* -rf مشاهده یا ویرایش پورت لایت نود به هر نود باید یک پورت اختصاص داده بشه با دستور زیر منوی ویرایش فایل “کانفیگ” لایت نود رو باز کنید و پورت طبق تصویر رو مشاهده یا بر حسب نیاز ویرایش کنید nano /root/.celestia-light-mocha/config.toml برای خروج از منوی ویرایش: Ctrl + X Y Enter باز کردن پورت های مورد نیاز پورتی که توی فایل کانفیگ ست شده رو با این دستور باز کنید مثلا برای من 26656 بود apt install ufw -y ufw allow ssh ufw allow https ufw allow http ufw allow 9090 ufw allow 26656 ufw enable البته یک خطش مربوط به باز کردن اون پورته و میتونید برای پورت های بعدی خط دستور رو تکی بزنید اگر فول نود یا نود دیگه ای در کنار لایت نود قراره راه اندازی کنید باید حواستون باشه نودها تداخل پورت نداشته باشند. در مورد تداخل این نود با فول نود در انتهای آموزش فول نود بهش میپردازیم راه اندازی “فول نود” در کنار لایت نود فول نود کمی سنگین تره و اگر سرور مجازی دارید در کنار لایت نود راه بندازیدش اما اجباری نیست و میتونید به لایت نود هم بسنده کنید دستورات در ادامه برای نصب فول نود در کنار لایت نود هست Requirements: VPS, 4 core, 8 GB RAM and Hard SSD 50 Gb آماده سازی فول نود celestia full init برای ریکاوری ولت لایت نود روی فول نود ./cel-key add mywallet --keyring-backend test --node.type full --recover مشاهده لیست ولت های فول نود موجود در سیستم یا سرور ./cel-key list --node.type full --keyring-backend test راه اندازی فول نود توسط SystemD sudo tee <<EOF >/dev/null /etc/systemd/system/celestia-full.service [Unit] Description=celestia-full Cosmos daemon After=network-online.target [Service] User=root ExecStart=/usr/local/bin/celestia full start --core.ip https://rpc-mocha.pops.one:9090 --keyring.accname mywallet Restart=on-failure RestartSec=3 LimitNOFILE=4096 [Install] WantedBy=multi-user.target EOF استارت فول نود توسط SystemD systemctl enable celestia-full systemctl start celestia-full مدیریت سرویس فول نود چک کردن لاگ فول نود journalctl -u celestia-full.service -f چک کردن وضعیت فول نود systemctl status celestia-full ریستارت فول نود systemctl restart celestia-full استاپ فول نود sudo systemctl stop celestia-full sudo systemctl disable celestia-full مشاهده یا ویرایش پورت فول نود nano /root/.celestia-full-mocha/config.toml برای رفع تداخل 2 نود لایت + فول پورت هاشون نباید تداخل داشته باشه که طبق دستور ویرایش پورت اونارو میتونید اونارو تغییر بدید (مثلا به اضافه یا منهای 1 کنید) باز کردن پورت مورد نظر برای مثال حالا هر 2 نود رو بعد ازینکه تداخل پورت ها رو رفع کردید می تونید ریستارت کنید systemctl daemon-reload systemctl enable celestia-lightd systemctl restart celestia-lightd systemctl enable celestia-full systemctl restart celestia-full * تبریک میگم شما هر 2 نود لایت + فول رو رو تست نت مچا شبکه سلستیا راه اندازی کردید* ## Publication Information - [Moei](https://paragraph.com/@0xmoei-2/): Publication homepage - [All Posts](https://paragraph.com/@0xmoei-2/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@0xmoei-2): Subscribe to updates - [Twitter](https://twitter.com/0xMoei): Follow on Twitter