POLKADOT
March 22, 2024

Tanssi

🪓 Telegram канал UTSA 🪓 Telegram чат UTSA

Web Discord Docs Telemetry

Details

  • Binary: tanssi-node
  • Working directory: .tanssi

Валидаторы (также известные как операторы) отвечают за обеспечение безопасности во всех сетях, работающих на Tanssi, проверяя целостность и достоверность транзакций. Они участвуют в механизме консенсуса NPoS (номинальный Proof-of-Stake), который улучшает децентрализацию и способствует добросовестному поведению с помощью экономических стимулов

Минимальные требования:

  • Рекомендуемые процессоры — Intel Ice Lake или более новые (серии Xeon или Core) или AMD Zen3 или более новые (EPYC или Ryzen). Восемь физических ядер с частотой 3,4 ГГц без гиперпоточности (SMT для процессоров AMD)
  • Рекомендуемый NVMe - твердотельный накопитель NVMe емкостью 500 ГБ
  • Рекомендуемая ОПЕРАТИВНАЯ ПАМЯТЬ - 32 ГБ ECC RAM
  • Рекомендуемая сеть - подключение со скоростью 1 Гбит / с

Подготовка сервера

# обновляем репозитории
apt update && apt upgrade -y

# устанавливаем необходимые утилиты
apt install curl iptables build-essential git wget jq make gcc nano tmux htop nvme-cli pkg-config libssl-dev libleveldb-dev libgmp3-dev tar clang bsdmainutils ncdu unzip llvm libudev-dev make protobuf-compiler libclang-dev -y

Сеть Tanssi = 30333 (TCP)

Всего нам понадобиться 3 файла ключа (кошелька):

  1. node-key, который мы сгенерируем для нашей ноды и этот файл будет отвечать за peer-id для нашей ноды
  2. Отдельный кошелек Substrate, который мы впишем в форму и будем ждать дальнейших инструкций.

1. Запуск ноды

Создаем необходимые каталоги

mkdir -p /root/.tanssi-data
mkdir -p /root/.tanssi-data/bin
mkdir /root/.tanssi-data/dancelight-data

Скачиваем бинарные файлы

wget https://github.com/moondance-labs/tanssi/releases/download/v0.14.0-para/tanssi-node && chmod +x ./tanssi-node
mv ./tanssi-node /root/.tanssi-data/bin

/root/.tanssi-data/bin/tanssi-node --version
#tanssi-node 0.14.0-77200a65234

Скачиваем json

wget -O /root/.tanssi-data/dancelight-raw-specs.json "https://raw.githubusercontent.com/moondance-labs/tanssi/75e576add204abd321c48cded556c8de14d65618/chains/orchestrator-relays/node/tanssi-relay-service/chain-specs/dancelight-raw-specs.json"

Генерируем nodekey и сохраняем его

/root/.tanssi-data/bin/tanssi-node key generate-node-key --file /root/.tanssi-data/node-key
#

Создаем сервисный файл

Предварительно меняем <IP_SERVER> и <MONIKER> на свои значения

nano /etc/systemd/system/tanssi.service
[Unit]
Description="Dancelight systemd service"
After=network.target
StartLimitIntervalSec=0

[Service]
Type=simple
Restart=on-failure
RestartSec=10
User=root
SyslogIdentifier=tanssi
SyslogFacility=local7
KillSignal=SIGHUP
ExecStart=/root/.tanssi-data/bin/tanssi-node solo-chain \
--name="NAME-SEQUENCER" \
--base-path=/root/.tanssi-data/dancelight-data/container \
--node-key-file=/root/.tanssi-data/node-key \
--telemetry-url='wss://telemetry.polkadot.io/submit/ 0' \
--pool-type=fork-aware \
--database=paritydb \
--rpc-port=9944 \
--prometheus-port=9615 \
--prometheus-external \
--listen-addr=/ip4/0.0.0.0/tcp/30333 \
--state-pruning=2000 \
--blocks-pruning=2000 \
--db-cache=1024 \
--trie-cache-size=1073741824 \
--collator \
--in-peers=13 \
--detailed-log-output \
-- \
--chain=/root/.tanssi-data/dancelight-raw-specs.json \
--name="NAME" \
--sync=fast \
--base-path=/root/.tanssi-data/dancelight-data/relay \
--node-key-file=/root/.tanssi-data/node-key \
--keystore-path=/root/.tanssi-data/dancelight-data/session \
--rpc-methods=unsafe \
--database=paritydb \
--rpc-port=9945 \
--prometheus-port=9616 \
--prometheus-external \
--listen-addr=/ip4/0.0.0.0/tcp/30334 \
--pool-limit=0 \
--db-cache=128 \
--out-peers=15 \
--state-pruning=2000 \
--blocks-pruning=2000 \
--telemetry-url='wss://telemetry.polkadot.io/submit/ 0' \
--bootnodes=/dns4/qco-dancelight-boot-1.rv.dancelight.tanssi.network/tcp/30334/p2p/12D3KooWCekAqk5hv2fZprhqVz8povpUKdJEiHSd3MALVDWNPFzY \
--bootnodes=/dns4/qco-dancelight-rpc-1.rv.dancelight.tanssi.network/tcp/30334/p2p/12D3KooWEwhUb3tVR5VhRBEqyH7S5hMpFoGJ9Anf31hGw7gpqoQY \
--bootnodes=/dns4/ukl-dancelight-rpc-1.rv.dancelight.tanssi.network/tcp/30334/p2p/12D3KooWPbVtdaGhcuDTTQ8giTUtGTEcUVWRg8SDWGdJEeYeyZcT

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable tanssi
systemctl restart tanssi && journalctl -u tanssi -f -o cat

Заполняем форму - ххх

Создаем кошелек или используем любой существующий - tanssi-node key generate -w 24

Для заполнения формы нам понадобятся Public key (SS58): вашей учетной записи, а не Public key (hex):

2. Регистрация ключей - https://docs.tanssi.network/node-operators/sequencers/onboarding/account-setup/

Полезные команды

Информация

# просмотреть логи
journalctl -u tanssi -f -o cat

# 

Удалить ноду

systemctl stop tanssi && \
systemctl disable tanssi && \
rm /etc/systemd/system/tanssi.service && \
systemctl daemon-reload

cd $HOME
rm -rf .tanssi-data
Поддержим природу вместе: 0xa7476EC14cD663C742d527113638C77a1631Cc89 cosmos1m2mm7kzvw6m3464h94ryqg8xvr6tyeyyecppnq