Запуск і налаштування валідатора мережі Cudos:

Запуск і налаштування валідатор мережі:
Знадобиться встановлений Docker і Docker-Composer а також Git і текстовий редактор який як правило є на всіх сучасних базових збірках.
1. Встановлюємо docker для ubuntu з офіційного сайту
https://docs.docker.com/engine/install/ubuntu/
2. Встановлюємо docker-composer
https://docs.docker.com/compose/install/
3. Встановлюємо Git:
sudo apt install git
Налаштовуємо середу перед установкою Ноди
Після установки всіх необхідних компонентів можна приступити до налаштування середовища:
Створіть каталог для використання в якості робочого простору:
mkdir ~ / cudos
cd ~ / cudos

2. Переконайтеся, що ви перебуваєте в правильному каталозі (в цьому прикладі каталог cudos)
Клонуйте по черзі і вставляйте в каталог
git clone — depth 1 — branch gravity / sdk-0.43 https://github.com/CudoVentures/cudos-node.git CudosNode
git clone — depth 1 — branch sdk-0.43 https://github.com/CudoVentures/cudos-builders.git CudosBuilders
git clone — depth 1 — branch cosmos-sdk-0.43 https://github.com/CudoVentures/cosmos-gravity-bridge.git CudosGravityBridge

3. Перейдіть в каталог CudosBuilders.
Створіть докер-образ binary-builder, виконавши команду:
cd docker / binary-builder && sudo docker-compose — env-file binary-builder.arg -f binary-builder.yml -p cudos-binary-builder up — build — detach

Створюємо гаманець Keplr

Створюємо змінну командою
alias CUDOS_NODED = ‘sudo docker exec -it binary-builder cudos-noded’
2. Створіть обліковий запис, виконавши команду (напишіть мнемонік фразу в безпечному місці):
CUDOS_NODED keys add <myKeyName>

Запускаємо ноду валідатори

Всього в Cudos є три типи нод, і в якості валідатора вам необхідно мати як мінімум:
sentry і full ноду
Ви можете форматувати full ноду наступним чином:

  1. Перейдіть в каталог
    CudosBuilders / docker / full-node
    2.Найдіте файл
    full-node.env.example і створіть його копію.
    3.Переіменуйте скопійований файл в
    full-node.client.testnet.public01.env
    4.Откройте файл, який ви перейменували,
    full-node.client.testnet.public01.env в будь-якому редакторі.
    5.Знайдіть атрибут «MONIKER» і прапор «SHOULD_USE_GLOBAL_PEERS» і встановіть їх в такий спосіб:
    MONIKER = MyFullNodeName
    SHOULD_USE_GLOBAL_PEERS = false

    6.Оставьте інші змінні, такі як «PERSISTENT_PEERS» і «SEEDS» порожніми, і збережіть зміни, внесені в файл.
    7.Убедітесь, що ви як і раніше перебуваєте в правильному каталозі CudosBuilders / docker / full-node
    Ініціалізуйте вузол, виконавши цю команду:
    sudo docker-compose — env-file full-node.client.testnet.public01.arg -f init-full-node.yml -p cudos-init-full-node-client-testnet-public-01 up — build
    Якщо всі кроки виконані успішно, ви повинні побачити новостворену папку CudosData в тому ж каталозі, де ви розмістили CudosBuilders і CudosNode. У підкаталозі cudos-data-full-node-client-testnet-public-01 папки CudosData “є файл з ім’ям tendermint.nodeid. Цей файл містить ідентифікатор вашого вузла, щоб побачити ідентифікатор вашого вузла, ви можете відкрити цей файл в будь-якому редакторі коду . і ви отримаєте один рядок, що представляє ідентифікатор вашого вузла, наприклад 13f359c90582b12e291311980a855854668d80pc.

Запуск Sentry Ноди

Sentry потрібно запускати на окремому сервері
1. Перейдіть в каталог CudosBuilders / docker / sentry-node
2. Знайдіть файл sentry-node.env.example і створіть його копію
3. Перейменуйте скопійований файл в sentry-node.client.testnet.public01.env
4. Відкрийте файл, який ви перейменували, sentry-node.client.testnet.public01.env в будь-якому редакторі
5. Знайдіть атрибут «MONIKER» і надайте йому наступне ім’я:
MONIKER = MySentryNodeName
6. Вставте Id своєї Ноди в рядок PERSISTENT_PEERS. За наявності кількох ідентифікаторів, розділіть їх коми, наприклад:
PERSISTENT_PEERS = <sentry-node1-id> @ <sentry-node1-ip>: 26656, <sentry-node2-id> @ <sentry-node2-ip>: 26656
7. Переконайтеся, що ви як і раніше перебуваєте в правильному каталозі CudosBuilders / docker / sentry-node
Ініціалізуйте ноду, виконавши цю команду:
sudo docker-compose — env-file full-node.client.testnet.public01.arg -f config-full-node.yml -p cudos-config-full-node-client-testnet-public-01 up — build
8. Запустіть ноду, виконавши цю команду:
sudo docker-compose — env-file full-node.client.testnet.public01.arg -f start-full-node.yml -p cudos-start-full-node-client-testnet-public-01 up — build — detach
9.Обратіте увагу, що ви можете переглянути логи, виконавши команду:

sudo docker logs -f cudos-start-seed-node-client-testnet-public-01

Тепер повертаємося до нашої основної ноді
1 .Перейдіте в каталог
CudosBuilders / docker / full-node
2. Відкрийте файл,
full-node.client.testnet.public01.env в будь-якому редакторі.
3. Знайдіть атрибут «PERSISTENT_PEERS» і вставте ID та адресу sentry Ноди
PERSISTENT_PEERS = <sentry-node1-id> @ <sentry-node1-ip>: 26656, <sentry-node2-id> @ <sentry-node2-ip>: 26656
4. Cохроняем і запускаємо ноду
sudo docker-compose — env-file full-node.client.testnet.public01.arg -f start-full-node.yml -p cudos-start-full-node-client-testnet-public-01 up — build -d
чекаємо синхронізації і вперед

Створюємо валідатора

Нам знадобиться нода Ethereum у себе я запускав її з Sentry на одному сервері, важлива умова щоб вона не стояла поруч з нашою основною нодой. Запускать будемо в гілці CudosBuilders, можете просто скопіювати її чи запустити в уже скачав.
Кроки по запуску:
git clone — depth 1 — branch sdk-0.43 https://github.com/CudoVentures/cudos-builders.git CudosBuilders
потім
cd CudosBuilders / docker / ethereum && sudo docker-compose -f ethereum-full.yml -p ethereum up — build — detach
і дивимося логи командою
sudo docker logs -f ethereum
Крок який нам створить валідатор
переконайтеся що нода запущена і синхронізована
Потрібно запросити маркери на адресу який ми створювали https://explorer.cudos.org/faucet
1. Переходимо в наш контейнер з нодою
sudo docker exec -it cudos-start-full-node-client-testnet-public-01 bash
2. Прописуємо змінні сердитися
export STAKE = “1000000000000000000acudos”
export CHAIN_ID = “cudos-testnet-public”

3. Вставляємо ключі які ми створювали поза контейнера
cudos-noded keys add validator — recover — keyring-backend = “os”
4. Створюємо валідатора командою:
cudos-noded tx staking create-validator — amount = $ STAKE \
— from = validator \
— pubkey = $ (cudos-noded tendermint show-validator) \
— moniker = $ MONIKER \
— chain-id = $ CHAIN_ID \
— commission-rate = “0.10” \
— commission-max-rate = “0.20” \
— commission-max-change-rate = “0.01” \
— min-self-delegation = “1” \
— gas = “auto” \
— gas-prices = “0.025acudos” \
— gas-adjustment = “1.80” \
— keyring-backend = “os” \
-y

Якщо все було здолати правильно ми повинні побачити хеш успішної транзакції.

Установка Orchestrator’а

Оркестратор — це програма, яка запускається на кожному валідаторі крім коду Cudos. Валідатори, які запускають ланцюжок з встановленим модулем Gravity, використовують оркестратор для підпису повідомлень або транзакцій за допомогою унікального ключа валідатора.
1. Перевіряємо адреса валідтора
cudos-noded q staking validators
2. Це видасть вам список валідаторів ви повинні знайти адресу свого

3. Нам треба окремий гаманець для Orchestrator створюємо і незабутній поповнити монетки через кран
cudos-noded keys add orchestrator

Регiструемо Orechestrator

1. Додаємо змінні середовища
export VALIDATOR_ADDRESS = “<* operator_address * адреса оператора>”
export ORCH_ADDRESS = “<* address * адреса з попереднього кроку”
export ETH_ADDRESS = “<eth address, почнеться одразу з 0x, запросите ETH з крана rinkeby test network faucet>”

2. Регiструемо
cudos-noded tx gravity set-orchestrator-address $ VALIDATOR_ADDRESS $ ORCH_ADDRESS $ ETH_ADDRESS — from validator — keyring-backend “os” — chain-id $ CHAIN_ID

Налаштовуємо міст Gravity

Обов’язково запускайте бінарник моста Gravity на тому ж комп’ютері, на якому працює ваша нода валідатора.
1. Заходимо в папку CudosBuilders / docker / orchestrator
2. Копіюємо orchestrator.env.example
3. Переіміновиваем на orchestrator.client.testnet.public01.env
4. Редагуємо файл orchestrator.client.testnet.public01.env будь-яким редактором
5. Видаляємо все коментарии з #, GRPC це значення порту нашої Sentry Ноди. І вставляємо наші значення
ADDRESS_PREFIX = “cudos” # залишити як є
FEES = “100acudos” # залишити як є
GRPC = “http: // <айпі вашої Ноди тут>: 9090” # порт повинен бути 9090
ETHRPC = “http: // айпі вашої ETH Ноди: 8545” # порт повинен бути 8545
CONTRACT_ADDR = “0xb22F2A4c231e69703FC524Eb2E3eb7B83C316F42” # залишити як є
COSMOS_ORCH_MNEMONIC = “<mnemonic вашого orchestrator акаунта>”
ETH_PRIV_KEY_HEX = “<приватний ключ з гаманця ETH>” # формат HEX без 0x

6. Запускаємо Orchestrator
sudo docker-compose — env-file orchestrator.client.testnet.public01.arg -f orchestrator.release.yml -p cudos-orchestrator-client-testnet-public-01-release up — build — detach
7. Список дивимося командою
sudo docker logs -f cudos-orchestrator-client-testnet-public-01-release
Надсилайте кошти через міст
Відкрийте Gravity Bridge (http://35.192.177.142:4000/). Потім ви можете використовувати Kelpr (https://wallet.keplr.app/) і Metamask (https://metamask.io/) для відправки коштів між двома блокчейнамі.

--

--

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store