Полный гайд по тестнетам и нодам
В этом «мини-курсе» постараюсь простыми словами объяснить новичку несколько сложных вещей так, как если бы объяснял это своему другу, на пальцах:
— «что такое тестнеты или нодерство» , «чем мы занимаемся и почему»;
— где найти проект для участия;
— где и как купить сервер для установки ноды, начать участвовать в тестнете;
— как подключиться к серверу для «поднятия» ноды.
Вся суть работы — это «поднятие» и содержание нод (узлов) различных крипто-проектов, находящихся на этапе тестирования.
Иначе говоря: перед тем, как любой адекватный проект выходит на рынок, он должен пройти несколько этапов тестирования: от каких-то первоначальных тестов, выполняемых самой командой разработчиков, до публичных тестов, где сеть (продукт) тестируется всеми (или не всеми) желающими пользователями, так называемыми тестерами.
Это помогает команде увидеть, как ведёт себя продукт под реальной нагрузкой и пофискить возникающие ошибки, чтобы не сильно ударить в грязь лицом на выходе (релизе) продукта.
Тестирование большей части проектов подразумевает «поднятие» и содержание ноды.
В этой статье термин «тестирование» подразумевает установку ноды на сервер и дальнейшее её поддержание (нужно будет следить за обновлениями программного обеспечения, своевременно устанавливать новую версию ПО, перезапускать ноду, в случае ошибок, искать эти ошибки и пытаться их решить).
Про ноды
Нода — простыми словами: это сервер, удалённый (или не очень) «компьютер», на который устанавливается специальное программное обеспечение.
После того, как мы арендовали и настроили удалённый сервер, мы получаем узел, который общается с другими участниками (нодами) сети и хранит, отправляет и получает информацию об её транзакциях.
Децентрализация, в первую очередь, необходима для обеспечения высокого уровня безопасности сети.
Каждая транзакция подтверждается несколькими независимыми узлами (нодами), что делает невозможным подмену данных.
Мероприятие, где мы «поднимаем» ноды, называется в простонародье тестнетом, иногда ивентом.
Участники тестирования — тестерами.
Награда за участие в тестнете
В благодарность за проделанную работу и предоставленные команде разработчиков данные, они могут поблагодарить нас, участников тестнета, каким-то количеством монет.
Стоит отметить, что есть несколько видов тестнетов: вознаграждаемые и невознаграждаемые.
Если в первом случае мы точно знаем, сколько монет, когда и при каких условиях мы получим, то второй тип ивентов предполагает безвозмездную помощь.
Ради справедливости должен сказать, что не всегда вознаграждаемые тестнеты платят. Ровно, как и проекты, не анонсировавшие никаких наград, могут отблагодарить участников неким количеством монет.
Чаще всего, монета или токен тестируемого продукта не торгуется ни на биржах, ни на дексах и соответственно не имеет цены.
Иногда, но реже, команда проекта продолжает тестировать свой продукт после листинга и в награду мы получаем токены, которые уже имеют определённую цену.
Необходимо понимать, что:
- проект может не выплатить ничего, даже если обещал;
- проект может выплатить, даже если не обещал;
- проект может выплатить токенами, которые ещё какое-то время будут стоить ровно ничего;
- проект может выплатить токенами, которые уже торгуются и имеют реальную цену.
На первый взгляд, может показаться, что имеет смысл участвовать только в вознаграждаемых тестнетах, где монета проекта уже торгуется и имеет реальную цену.
Но, как показывает практика, награда в таких ивентах намного ниже, чем, если бы вы тестировали только что созданный продукт.
Попробую объяснить.
Когда монета торгуется по условному доллару и вам говорят: «Каждый участник тестнета получит по 100 монет», вы понимаете: «Хорошо, я получу $100».
Когда монета ничего не стоит (не торгуется на биржах) и вам обещают те же 100 монет, то через месяц-два-год, когда проект выйдет на рынок вместе со своим продуктом и, соответственно, монетой, каждая может оцениваться в $0.001, в $0.2, в $1, в $100 и так далее.
Работа с проектами, у которых есть своя монета с определённой стоимостью — это «здесь и сейчас».
Работа с только что запустившимся проектом и молодой командой — это, прежде всего, риски (никто не гарантирует, что команда доведёт свой продукт до ума), но и большая перспектива, на мой скромный взгляд.
Затраты на участие в тестнете
Чтобы «поднять» ноду (помимо желания и свободного времени), нужно иметь железо, где эту ноду поднимать.
Если вы уважаете свой компьютер, то не станете делать из него узел.
Нам нужен сервер (удалённый «компьютер»), который будет шуметь где-то далеко и за который никто не будет переживать.
Цена аренды такого «компьютера» зависит от характеристик железа. Требуемые характеристики для каждой ноды зависят от проекта.
Средние затраты на аренду одного сервера для одной ноды составляют от $5 до $50 в месяц.
Есть проекты, требующие более дорогостоящего оборудования, например, видеокарты. Тогда ценник за аренду сервера поднимается до $200-300 в месяц.
Многие начинающие (и не только) тестировщики используют бесплатные сервера от Amazon или Google Cloud, это тоже надо учитывать.
От Фармера. Способ работает лишь на тех хостингах, где сервер нужной мощности может прожить хотя бы месяц, желательно 2. Но учитывайте, что при работе на больших 10-15 используемых серверов, нужно постоянно поддерживать сами ноды, обновлять их, регулярно поднимать и так далее.. Для Amazon AWS сервер конфигурации 8 CPU 32 RAM может жить месяц-другой, но это если вам повезет, и вы сможете зарегистрировать аккаунт правильно.
Для Linode регистрация проходит несколько сложнее, нужно учитывать много тонкостей для обхода фрода и успешного подтверждения реги аккаунта. Но если вы сможете зарегать аккаунт, то получите сервер 6 CPU 16 RAM который проживет 25-30+ дней.
Аккаунты или дедики также можно скупать на форумах, от 150 до 350+ рублей за готовый аккаунт с trial подпиской для AWS и Linode соответственно. Аккаунты Azure и Google Cloud продаются за 400 и 700+ рублей/штука.
Реальный профит за участие в тестнете
Со среднестатистическими наградами сложнее.
Самая мизерная награда, которую я получал, даже не отбивала затраты на аренду сервера. «Iris» — в награду мы получали монету, которая уже торговалась на момент тестнета.
В то же время мою самую высокую награду можно измерять в поддержанных мустангах 2015 года. «Hopr» — был невознаграждаемым тестнетом без торгующейся монеты, но копеечка, вопреки условиям, всё же перепала.
Не могу не упомянуть один из самых «жирных» тестнетов — «Mina Protocol», где на данный момент стоимость аккаунтов, попавших в генезис, измеряют в «ламбах».
Достойная часть тестнетов, в принципе, себя не окупает. Но наткнуться на «гем» раз в год, раз в полгода, вполне себе, вероятно.
Как найти тестнет для участия
Для того, чтобы участвовать в тестировании более или менее сильных проектов, советую добавить себе в закладки такие сайты, как dropsearn.com и nodes.guru.
Я собрал все ресурсы, которыми сам пользуюсь ежедневно в специальной статье. Рекомендую к ознакомлению.
Участвуя в ивентах, представленных на этих ресурсах, вы увеличите возможность «залететь на вкусный ужин и урвать кусочек пирога».
Как итог
Мы тестируем криптовалютные проекты, специализируясь на «поднятии» и содержании нод.
В награду нас могу похлопать по плечу, подарить кепку или же «ламбу».
Стоит или не стоит, думайте сами. Если всё же решились попробовать «нодерство», то представляю вниманию ещё 2 вводных раздела, после прочтения которых вы сможете поднять свою первую ноду.
Но просто прочитать мои статьи — мало.
Самое важное — это погрузиться в атмосферу и стать частью коммьюнити. Не вылезать из чата nodes.guru, спамить «F5» страницу dropsearn’a и гуглить, гуглить, гуглить.
Цель статьи — лишь заинтересовать вас тематикой нод и дать необходимые источники информации. Я сделал всё, что мог. Теперь ваша очередь.
Как и где арендовать сервер для ноды /// v1.1
Если же вы уже выбрали свой первый проект, в тестировании которого хотите принять участие, то первое, с чем нужно определиться — это с техническими характеристиками сервера.
Требования к железу всегда можно найти в официальной документации к установке ноды.
Условно я разделяю требования по железу для ноды на 2 вида:
- подойдёт слабенький VPS (virtual private server — виртуальный сервер);
- необходим мощный DS (dedicated server — выделенный сервер).
Если мне нужен сервер от 1 CPU, 1GB RAM, 50GB HDD до 8 CPU, 32GB RAM, 512GB SSD, то я выберу VPS.
Если же мне нужен террабайт пространства или больше 32GB оперативной памяти, я предпочту DS (дедик).
В статье термины VPS и DS используются лишь для обозначения и грубого разграничения. Для изучения более детальной разницы между VPS, VDS и DS — советую прочитать следующую статью.
В большинстве случаев, нам подойдут относительно дешёвые VPS.
«2 ядра, 4GB оперативки и 50GB SSD» — можно считать стандартными требованиями к железу. Реже требуется 8 и более ядер, 16 и более оперативы.
Хостинги
Если мне нужен VPS:
- DigitalOcean.com — быстрый и удобный зарубежный сервис;
- VDSina.ru — быстрый и удобный отечественный сервис;
Если мне нужен DS:
- OVH.com — дорогой зарубежный сервис с хорошими отзывами;
- ReliableSite.Net - дорогой зарубежный сервис с возможностью доплатить за "майнинг" и не иметь проблем с банами.
- HostKey.com — дорогой зарубежный сервис с возможностью аренды дедика с видеокартой.
Не забываем, что никто не запрещает использовать бесплатные пробные периоды от Amazon или Google Cloud.
Я перечислил только используемые мной хостинги. Их существует огромное количество с разными достоинствами и недостатками.
Путём перебора я остановился на вышеперечисленных сервисах. Никто не ограничивает вас в выборе, можете арендовывать сервера на любых удобных вам хостингах.
Далее я покажу, как покупать на VDSina.ru (при регистрации по моей реферальной ссылке получите скидку в 10% на все услуги) и DigitalOcean.com (бесплатные $100 на тестирование сервиса).
Не вижу смысла показывать, как покупать на OVH и HostKey.
Те, кто нуждается в услугах данных сервисов, мои гайды не читают.
DigitalOcean
Первым делом, нужно зарегистрировать аккаунт по ссылке:
![](/file/e66ba836f8c68411557db.png)
Во вкладке "Billing" привязываем карту:
![](/file/2dd218d35f257f560eede.png)
Переходим во вкладку "Droplets" и нажимаем "Create Droplet":
![](/file/d18a0ea2b83a8e69bacbd.png)
После чего выбираем необходимую конфигурацию:
![](/file/184c640ed8d93389a692b.png)
Выбираем расположение сервера, добавляем по необходимости IPv6, задаём пароль для подключения к серверу:
![](/file/953b1ce52a3c898cf9011.png)
Выбираем "hostname" — имя сервера, вбиваем "tags" — для быстрого поиска, и выбираем проект. "Create Droplet":
![](/file/5999198ff9594b471af4b.png)
Ждём, пока обработается заказ:
![](/file/252a855726111a5d4e4a8.png)
Во вкладке только что созданного сервера можно им управлять — переустанавливать ОС, подключать динамический IP, создавать бэкапы, редактировать конфигурацию железа:
![](/file/c37b07a0df0e90da7a5a8.png)
Для подключения к серверу нам необходимо знать его IP и пароль.
В случаях, если мы подключаемся к графической оболочке сервера, то ещё и порт.
VDSINA
Первым делом, нужно зарегистрировать аккаунт по ссылке:
![](/file/356076b690c18c739ea43.png)
Затем перейти во вкладку "Финансы", создать платёж и пополнить счёт любым из представленных методов:
![](/file/2991d35d3f84bad67ae9b.png)
После чего нажимаем на кноку "Создать Сервер" и выбираем необходимую конфигурацию сервера.
Каждый тип отличается доступной конфигурацией железа и ценой его аренды, поклацайте и выберите удобный вам:
![](/file/d204fd9fdb9e4476ac32a.png)
![](/file/c460f3457e1dd6eb7c3ae.png)
Оплата снимается ежесуточно.
Нажимаем "Создать" и ожидаем несколько минут, пока сервер не подготовят:
![](/file/d9041b5bba2514f17ee75.png)
После того, как сервер подготовлен, нажимаем на него и попадаем на страницу управления сервером.
Здесь мы можем перезагружать сервер, переустанавливать ОС, докупать IP-адреса и много чего ещё.
Сохраним IP сервера и его пароль:
![](/file/7727c7bef663362c8c741.png)
Порт VNC необходим для подключения к графической оболочке через VNC.
Заключение
Теперь нам осталось самое трудное: подключиться к серверу и «поднять» ноду.
Подключение к серверу можно выполнять разными способами.
Я предпочитаю использовать программу MobaXterm для администрирования своих удалённых машин.
Чтобы узнать, где скачать программу, как её настроить и подключиться уже, наконец-таки, к серверу, я написал полноценный гайд, который будет ниже.
Если с подключением к серверу всё понятно, то можно переходить к установке самой ноды.
Гайд (пошаговая инструкция) для установки ноды на сервер каждый раз уникальна.
Вы можете найти крутые гайды на портале nodes.guru. Надеюсь, вы уже подписаны на эти два ресурса, раз купили свой первый сервер.
Всё, что теперь осталось — это выполнить «step-by-step» команды из выбранного гайда и получить, как результат, свою первую ноду.
Гайд по MobaXterm /// v1.0
![](/file/d5749b9f9995b71219c47.png)
Мы подробно рассмотрим программу MobaXterm: что это за штука, где её скачать, как установить и как настроить «мобу» для комфортной работы с удалёнными серверами.
Что такое MobaXterm
Это программа, предназначенная для удаленного администрирования компьютеров и серверов.
С ее помощью пользователи могут совершать практически любые операции с удаленными системами.
Интегрированный в программу терминал дает возможность выполнять Unix-команды посредством скриптов оболочки Bash.
Также MobaXterm включает в себя инструмент работы с макросами, которые можно одновременно запускать сразу на нескольких системах.
Где скачать MobaXterm
Выдумывать ничего не будем. Программа условно бесплатная. Для наших потребностей хватит и домашней версии.
На данный момент программа адаптирована только под Windows OS.
Скачиваем последнюю версию с официального сайта и устанавливаем как обычную программу: next, next, next, install.
![](/file/a7d5d32e1d45753e487a7.png)
![](/file/a5a5bc1fdffd31ba0348d.png)
Настройки программы
Запускаем мобу и переходим в Settings > Configuration > Display.
Выбираем тему, иконки и т. п. Можно поиграться и настроить всё под себя. Выбор скудный, но есть тёмная тема для трушных криптанов.
Вот к чему я пришёл:
![](/file/77bb031c58d65d433e856.png)
![](/file/88ed674d04042eddb62ec.png)
Во вкладке SSH нажимаем галочку напротив Remote-monitoring.
Эта функция позволяет отслеживать нагрузку на сервер в режиме реального времени:
![](/file/bd347f0f54ababc4d107a.png)
Функции программы
В левой части экрана есть 2 прекрасные вкладки — Sessions и Macros.
Переходим во вкладку Sessions и удаляем дефолтные сессии:
![](/file/cf4be05f51490e67d6811.png)
![](/file/dbe6f354abe7c848f37c4.png)
Создание сессии
Например, сейчас идёт ивент от Swarm Bee и я хочу установить несколько нод для участия в этом ивенте.
Создаём папку с названием ноды или тестнета, в котором мы хотим участвовать, кликнув правой кнопкой мыши по пустому месту:
![](/file/35a308b3861cf75020212.png)
![](/file/a5f720b8c18ce653db568.png)
Далее правой кнопкой мыши кликаем по только что созданной папке, чтобы добавить в неё первую сессию:
![](/file/fecbbe73557874e608d18.png)
Выбираем тип сессии. Для меня это SSH:
При подключении к серверу с Windows OS — выбираем RDP.
При подключении к Linux OS с графической оболочкой — VNC.
При подключении к Linux OS без графической оболочки — SSH.
![](/file/626902fd0c2633c1d7cc2.png)
Вводим IP нашего сервера в первую форму, редактируем имя сессии (чтобы в будущем быстро найти нужную), по желанию редактируем иконку и добавляем ссылку на сессию на рабочий стол:
![](/file/c27c05dd0bd4ccc0e8892.png)
Когда всё настроили, нажимаем OK. Откроется наш терминал:
![](/file/6ce8228884c04ce9c5dd4.png)
Вводим логин (обычно root) и пароль.
Пароль лучше скопировать из информации о сервере и просто вставить в терминал.
Чтобы вставить какой-либо текст в терминал, нужно нажать колёсико мыши. «Ctrl + V» в MobaXtermне является сочетанием клавиш для вставки текста. По умолчанию, за эту функцию отвечает колёсико мыши.
Пароль не отображается при вводе в терминал. Вставили с помощью щелчка колёсиком, нажали Enter. Всё, вы залогинились.
![](/file/1e88ce46198b8d8eab60d.png)
В левой части экрана откроется файловый менеджер, аналог проводника в Windows.
В этом блоке можно удобно загружать файлы на сервер, скачивать целые папки с сервера на свою локальную машину, создавать файлы и директории — в общем, всё, что вы можете делать на обычной машине, вы можете теперь делать и на сервере, буквально в пару кликов.
![](/file/acbc63a4a4f08aa5f51b5.png)
При долгом отсутствии взаимодействия с окном терминала, будет обрываться сессия. Чтобы её рестартануть, нажимаем клавишу «R».
![](/file/81468e8add50da0cc1fbc.png)
Macros
Макрос — это такая штука, которая позволяет записать все ваши действия в одной сессии (например, ввод всех команд для установки какой-либо ноды) и применить все записанные в макросе команды в другой сессии, что сильно экономит время.
Например, вы хотите установить 3 ноды Swarm Bee. Включаем запись макроса:
![](/file/0eed4800fb973c2130053.png)
Вводим все команды для установки, настройки и запуска ноды, останавливаем запись макроса, придумываем для него название и сохраняем:
![](/file/83443ad6ed42cbdcb16c8.png)
![](/file/16fe6756d1fd12716e06b.png)
Теперь создаём новую сессию, для другого сервера. Логинимся в неё, открываем вкладку макроса и просто запускаем записанный ранее макрос.
И всё. Макрос повторит все записанные в него команды и нода установится автоматически, без вашего вмешательства.
Удобно? Не то слово. Особенно, если вы любитель мультиаккаунтов.
Заключение
Это именно то решение, которым я сам пользуюсь при работе с удалёнными серверами. Возможно, что-то я пропустил, чему-то уделил не так много внимания.
В целом, программа очень простая и интуитивно-понятная.