سلستیا یک شبکه با طراحی ماژولاره و برخلاف اتریوم که یک بلاکچین یکپارچه است، در شبکه ماژولار اجزای بلاکچین و نودها هرکدوم جداگانه وظایفی رو به عهده دارند
شبکه سلستیا از 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
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
حالا برای دریافت فاست به دیسکورد پروژه جوین شید و در کانال فاست تست نت “مچا” درخواست توکن تستی کنید
این دستور مهمترین بخش نود هست که مشکل اکثر کاربرا تو همین قسمته پس با دقت نکات رو بخونید:
ما در این قسمت با یک دستور، یک فایل “سرویس” میسازیم و کانفیگ یا تنظیمات نود رو برای راه اندازیش داخل فایل قرار میدیم
اول کلیت دستور زیر رو ببینید و قبل از اجراش، توضیحات بعدش رو بخونید
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- این یکی اسم ولتی که ساختید رو باید قرار بدید و اگر با دستور من ولتتون رو ساخته یا ریکاور کرده باشید اگر برگردید به همون دستور میبینید که همین اسم یعنی “مای ولت” رو براش انتخاب کردیم و میتونید تغییرش ندید
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
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
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 نود لایت + فول رو رو تست نت مچا شبکه سلستیا راه اندازی کردید*

