in ,

Celestia: установка ноды

Тестнет Celestia

Первая модульная сеть консенсуса и данных для поддержки масштабируемых и безопасных приложений Web3.

Ссылки:

Рекомендуем подписаться сразу на все социальные сети проекта для получения последних обновлений.

Статус и дополнительная информация

  • Статус проекта: Активен
  • Даты тестенета: Не анонсировано
  • Сложность железа: Слабое
  • Сложность установки: Базовая
  • Вознаграждение: Не анонсировано
  • Лок токенов: Не

Системные требования к проекту Celestia:

  • CPU: 2 cores
  • RAM: 2GB
  • SSD: 60GB

Рекомендуем хостинги для установки ноды:

  • Hetzner (20$ на счет при регистрации)
  • Digital Ocean
  • PQ Hosting (можно оплачивать криптой)
  • VDSina (можно оплачивать криптой и картой мир)

Как попасть в testnet Celestia

Перейдите по ссылке для регистрации в тестнете.

Регистрация в тестнете Celestia
Регистрация в тестнете Celestia

Нажимаем «Join the waitlist».

Введите свой адрес и выберите галочки Run a node on testnet, Developer beta и Newsletter. Нажмите Sign Up.

Подтвердите Email
Подтвердите Email

Подтвердите подписку.

Установка ноды Celestia

У Celestia на данный момент 3 вида нод. Две из них мы можем установить на один сервер, для другой, нужно арендовать второй сервер.

Мы будем запускать ноду Celestia на хостинге DigitalOcean, который дает 100$ на 60 дней. Переходим по ссылке для регистрации. 100$ будет доступно только по переходу по нашей ссылке!

Аренда VPS сервера на DigitalOcean читайте на сайте.

После регистрации на DigitalOcean, заходим в Create — Droplets.

Создаем сервер для ноды Celestia
Создаем сервер для ноды Celestia

Операционную систему для ноды Celestia выбираем Ubuntu 20.04 (LTS) x64.

Выбираем Ubuntu 20.04
Выбираем Ubuntu 20.04

Переходим к выбор сервера для Celestia.

Выбираем нужную конфигурацию, 2 GB RAM, 2 CPUs, 60 GB SSD.

Выбираем расположение сервера
Выбираем расположение сервера

Выбираем расположение сервера, не имеет значение где.

Указываем надежный пароль
Указываем надежный пароль

Даем название серверу, лучше по название проекта и нажимаем Create Droplet.

Устанавливаем Celestia Application (validator node). Devnet-2

Для установки сервера Celestia, можете использовать консоль DigitalOcean, а можете использовать PuTTY. Мы будем использовать консоль DigitalOcean.

После создания сервера, заходим на него и нажимаем Console.

Консоль DigitalOcean
Консоль DigitalOcean

Команды выполняем по блокам. Если в блоке несколько команд, не забываем после последней команды в консоле нажимать Enter для выполнения, после выполнения предыдущих команд.

Первоисточник мануала — https://mzonder.notion.site/Celestia-Application-validator-node-Install-devnet-2-3a3087806d8b492ca937133c1fbca947

Устанавливаем обновления:

sudo apt update && sudo apt upgrade -y

Нажимаем Enter.

Результат работы команды

Устанавливаем файлы:

sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu -y
Результат работы команды

Устанавливаем GO 1.17.2

cd $HOME
ver="1.17.2"
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" >> $HOME/.bash_profile
source $HOME/.bash_profile

Не забывайте, когда выполнение дойдет до последней строчки source $HOME …. нужно нажать Enter. Предыдущие команды выполняются автоматически.

Результат работы команды

Проверяем версию GO:

go version
Результат работы команды

Устанавливаем Celestia App build

cd $HOME
rm -rf celestia-app
git clone https://github.com/celestiaorg/celestia-app.git
cd celestia-app/
git checkout 63519ec
make install
Результат выполнения команды

Проверяем:

celestia-appd version --long
Результат выполнения команды

Устанавливаем параметры сети

cd $HOME
rm -rf networks
git clone https://github.com/celestiaorg/networks.git
Результат выполнения команды

Указываем имя кошелька и имя ноды:

Вместо MY_NODE — имя ноды, вместо MY_WALLET имя кошелька.

CELESTIA_NODENAME="MY_NODE"
CELESTIA_WALLET="MY_WALLET"

Пример:

CELESTIA_NODENAME="InsidePC"
CELESTIA_WALLET="InsidePC_wallet"
Результат выполнения команды

Устанавливаем celestia chain:

CELESTIA_CHAIN="devnet-2"
Результат выполнения команды

Сохраняем переменные на сервер:

echo 'export CELESTIA_CHAIN='$CELESTIA_CHAIN >> $HOME/.bash_profile
echo 'export CELESTIA_NODENAME='${CELESTIA_NODENAME} >> $HOME/.bash_profile
echo 'export CELESTIA_WALLET='${CELESTIA_WALLET} >> $HOME/.bash_profile
source $HOME/.bash_profile
Результат выполнения команды

Делаем инициализацию:

celestia-appd init $CELESTIA_NODENAME --chain-id $CELESTIA_CHAIN
Результат выполнения команды
  • node_id — айди вашей ноды.
  • moniker — название вашей ноды
  • chain_id — убедитесь что там devnet-2

Копируем devnet-2 genesis:

cp $HOME/networks/devnet-2/genesis.json $HOME/.celestia-app/config/
Результат выполнения команды

Обновляем seeds и peers:

SEEDS="74c0c793db07edd9b9ec17b076cea1a02dca511f@46.101.28.34:26656"
PEERS="34d4bfec8998a8fac6393a14c5ae151cf6a5762f@194.163.191.41:26656"
Результат выполнения команды

Выполняем команду:

sed -i.bak -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.celestia-app/config/config.toml
Результат выполнения команды

Добавляем external:

external_address=$(wget -qO- eth0.me)
sed -i.bak -e "s/^external-address = \"\"/external-address = \"$external_address:26656\"/" $HOME/.celestia-app/config/config.toml
Результат выполнения команды

Открываем rpc:

sed -i 's#"tcp://127.0.0.1:26657"#"tcp://0.0.0.0:26657"#g' $HOME/.celestia-app/config/config.toml
Результат выполнения команды

Устанавливаем значения по умолчанию:

sed -i 's/timeout_commit = "5s"/timeout_commit = "15s"/g' $HOME/.celestia-app/config/config.toml
sed -i 's/index_all_keys = false/index_all_keys = true/g' $HOME/.celestia-app/config/config.toml
Результат выполнения команды

Открываем api:

sed -i '/\[api\]/{:a;n;/enabled/s/false/true/;Ta};/\[api\]/{:a;n;/enable/s/false/true/;Ta;}' $HOME/.celestia-app/config/app.toml
Результат выполнения команды

Config pruning:

pruning="custom"
pruning_keep_recent="100"
pruning_keep_every="5000"
pruning_interval="10"
Результат выполнения команды

Выполняем следующий блок команд:

sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.celestia-app/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.celestia-app/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.celestia-app/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.celestia-app/config/app.toml
Результат выполнения команды

Сброс состояния:

celestia-appd unsafe-reset-all
Результат выполнения команды

Добавляем адресную книгу:

wget -O $HOME/.celestia-app/config/addrbook.json "https://raw.githubusercontent.com/maxzonder/celestia/main/addrbook.json"
Результат выполнения команды

Конфигурируем клиент

celestia-appd config chain-id $CELESTIA_CHAIN
celestia-appd config keyring-backend test
Результат выполнения команды

Запускаем сервис

sudo tee /etc/systemd/system/celestia-appd.service > /dev/null <<EOF
[Unit]
  Description=celestia-appd Cosmos daemon
  After=network-online.target
[Service]
  User=$USER
  ExecStart=$(which celestia-appd) start
  Restart=on-failure
  RestartSec=3
  LimitNOFILE=4096
[Install]
  WantedBy=multi-user.target
EOF
Результат выполнения команды

Выполняем следующие команды по очереди:

sudo systemctl enable celestia-appd
sudo systemctl daemon-reload
sudo systemctl restart celestia-appd && journalctl -u celestia-appd.service -f

Из последней команды выходим нажав CTR+C. Когда пойдет поток логов.

Получаем адрес кошелька и мнемоническую фразу

Новый кошелек:

celestia-appd keys add $CELESTIA_WALLET
Результат выполнения команды

name: InsidePC_wallet
type: local
address: celes1rm5s0gcaglrz254y3ccvvmwe8fp2pfzck9c9wr
pubkey: ‘{«@type»:»/cosmos.crypto.secp256k1.PubKey»,»key»:»AjZCKnXs6srEbmLbPVG24NaW5q11gamqlKGIea3RJcaj»}’
mnemonic: «»

Important write this mnemonic phrase in a safe place.
It is the only way to recover your account if you ever forget your password.

february flavor fade rack shield deposit snow coral raw film arrow fall veteran lyrics club vote news remove stuff annual input lonely blame few

Копируем и сохраняем результат работы этой команды, все что выше. Это адрес кошелька и мнемонические фразы ниже.

В отличии от мен, мнемонические фразы никому не показываем.

Сохраняем адрес и valoper на сервер:

CELESTIA_ADDR=$(celestia-appd keys show $CELESTIA_WALLET -a)
echo $CELESTIA_ADDR
echo 'export CELESTIA_ADDR='${CELESTIA_ADDR} >> $HOME/.bash_profile
Результат выполнения команды

Выполняем следующий блок:

CELESTIA_VALOPER=$(celestia-appd keys show $CELESTIA_WALLET --bech val -a)
echo $CELESTIA_VALOPER
echo 'export CELESTIA_VALOPER='${CELESTIA_VALOPER} >> $HOME/.bash_profile
source $HOME/.bash_profile
Результат выполнения команды

Мы установили Application Node. Далее создаем валидатор.

Получение тестовых токенов Celestia

Присоединяемся к дискорд группе Celestia. Ссылка вверху статьи.

Проходим верификацию в дискорде что вы не бот и находим ветку faucet. Вставляем следующий код в нее, после !faucet имя_вашего_кошелька.

!faucet celes1rm5s0gcaglrz254y3ccvvmwe8fp2pfzck9c9wr

Пока токены будут начисляться, идем дальше.

Прежде чем продолжить, нужно убедится что наша нода Celestia полностью синхронизировалась с блокчейном:

curl -s localhost:26657/status | jq .result.sync_info
Результат выполнения команды

Ждем пока результат будет False. Это может занять несколько часов.

Рекомендуем хостинги для установки ноды:

  • Hetzner (20$ на счет при регистрации)
  • Digital Ocean
  • PQ Hosting (можно оплачивать криптой)
  • VDSina (можно оплачивать криптой и картой мир)

Остались вопросы или что то не понятно?

Заходите к нам в telegram канал и мы все обсудим. Помимо общения, публикуем то, чего нет на сайте. Будьте в курсе лучших возможностей заработка на криптовалюте!

Автор Volodymyr Polkovnichenko

Владимир - CEO InsidePC. Более 15ти лет в IT индустрии, 5 лет исключительно в крипто индустрии. В фокусе портфельное инвестирование, спотовая торговля, ретродропы, сейлы (IDO,ICO,IEO), DeFi, анализ крипто проектов и ноды. Держу руку на пульсе криптовалютной индустрии. В крипте 24/7. Индивидуальные вопросы по криптовалюте или по приват группе в личку - Telegram.