Что такое Мастернода?
Мастернода – это полный узел (сервер или просто компьютер с запущенной программой и кошельком с криптовалютой), который синхронизирован с блокчейн любой цифровой валюты, которую вы выбираете. Обязательное условие – компьютер должен быть включен 24 часа в сутки, перебои связи должны быть минимальными. Функционально Мастерноды отличаются от обычных узлов несколькими параметрами.
Помимо поддержания работы сети, формирования блоков и подтверждения транзакций (как это происходит в Биткоине и Лайткоине), они выполняют следующие функции:
1. повышение уровня конфиденциальности транзакций;
2. увеличение скорости транзакций, вплоть до мгновенного перевода;
3. участие в управлении системой и голосовании при принятии важных решений;
4. участвуют в распределении «бюджетных» средств для развития сети. и.т.д.
Как выбрать криптовалюту для создания Мастерноды
Итак, теперь начинается рутинная исследовательская работа. Этот процесс происходит примерно так:
Проверяем сайты https://masternodes.online или http://www.mnrank.com.
Ищем монету с хорошей инвестиционной рентабельностью и комфортной стоимостью (чтобы иметь возможность купить нужное для создания Мастерноды количество).
Заходим на сайт криптовалюты, чтобы изучить дорожную карту и особенности системы (в том числе, узнать, какое количество токенов необходимо для статуса МН).
Заходим на форум Bitcoin Talk и читаем, что об этой валюте говорят в криптосообществе.
Посетим Github, чтобы посмотреть, активны ли разработчики проекта.
Проверяем группы в соцсетях, чтобы оценить «движуху» сообщества.
Если все результаты устраивают такого исследования, если я вижу, что экосистема развивается, а монета выглядит как перспективный инвестиционный актив, тогда я направляюсь на биржу, чтобы купить криптовалюту. Я обычно выставляю ордера на покупку по цене, ниже рыночной, и жду, пока майнеры или те, кому нужно продать быстро, ответят на мои заявки. Не покупайте по рыночной цене, если можно купить дешевле!
Я купил криптовалюту, что дальше?
Теперь детально рассмотрим настройку узла. Для примера я возьму Chaincoin CHC на Cryptopia, так как эта криптовалюта довольно дешевая (но, к сожалению, имеет низкий потенциал доходности).
Настройка локального кошелька
Заходим на официальный сайт Chaincoin, загружаем и устанавливаем последнюю версию кошелька для Windows. Как только кошелек загружен, нужно запустить полную синхронизацию с блокчейн. Затем, как только кошелек синхронизируется, мы можем отправить монеты с биржевого аккаунта на наш местный кошелек.
Как только транзакция будет подтверждена нужное количество раз, можно зашифровать кошелек с помощью безопасного защищенного пароля и сделать резервную копию вашего файла wallet.dat.
Настройка, которую я всегда стараюсь выбрать для своей МН – это «горячий» кошелек на VPS и «холодный» локальный кошелек на вашем ПК / ноутбуке. Это значит, что ваши монеты будут в полной безопасности на вашем локальном домашнем кошельке, и его нужно будет только подгружать раз в несколько дней, чтобы синхронизировать с сетью и собирать вознаграждения.
Настройка контрольного кошелька
Загрузите и установите кошелёк, затем дождитесь синхронизации.
Для каждой Мастреноды, которую вы хотите создать, создайте принимающий адрес: если вы настраиваете 2 МН – создаете 2 принимающих адреса. Для этого нужно пройти по следующей цепочке: «File - Receiving Addresses – New» в своем кошельке. Используйте кодовые имена в качестве метки, чтобы идентифицировать ваши Мастерноды, например, MN1, MN2 и т. д.
Для каждой МН создайте мастернод-ключ. Для этого нужно перейти в консоль RPC в кошельке (Tools - Debug Console) и ввести «masternode genkey», в котором должна быть предусмотрена для этого длинная строка. Обратите внимание на кнопки, с помощью которых мы осуществляли эти операции, они нам понадобятся позднее. Помните, что эти действия нужно проделать для каждой Масерноды, так как для работы с каждой из них потребуется отдельный уникальный ключ.
Теперь у вас есть один адрес для приема и один мастернод-ключ «Per MasterNode*». Проверьте их еще раз, потому что далее мы переместим их в файл masternode.conf (процесс описан ниже).
Настройка файла masternode.conf
Обратите внимание, где вы устанавливаете каталог по умолчанию при первом запуске кошелька.
Перейдите в каталог ChainCoin. По умолчанию он расположен по этому адресу: C:\Users\username\AppData\Roaming\ChainCoin
Там вы увидите папку резервного копирования, блок, цепочку состояний и chaincoin.conf.
В вашем каталоге ChainCoin создайте файл с именем masternode.conf, если его там еще нет. Вы можете создать этот файл, открыв блокнот и сохранив пустой файл в каталоге ChainCoin как masternode.conf.
Именно в файле masternode.conf мы будем размещать информацию на каждом мастерноде в следующем формате:
https://github.com/chaincoin/chaincoin/blob/master/doc/masternode_conf.md
# Masternode config file
# Format: alias IP:port masternodeprivkey collateral_output_txid collateral_output_index
# Example: mn1 127.0.0.2:51474 93HaYBVUCYjEMeeH1Y4sBGLALQZE1Yc1K64xiqgX37tGBDQL8Xg 2bcd3c84c84f87eaa86e4e56834c92927a07f9e18718810b92e0d0324456a67c 0
<MASTERNODE_ALIAS> <SERVER_IP_ADDRESS>:11994 <MASTERNODE_PRIVATE_KEY> <TX_OUTPUT_ID> <TX_10K_OUTPUT_INDEX>
Давайте определим параметры:
Alias – кодовое название (для простоты использования), которое вы хотите задать для Мастерноды (например, MN1) IP/Port – это будет IP-адрес вашего сервера VPS, а порт будет 11994 Masternode Private Key – это уникальный ключ, который мы будем генерировать для каждой Мастерноды, используя команду «masternode genkey» на экране «Tools - Debug Console», расположенном в кошельке.
TXID Collateral – это идентификатор транзакции для 1000 CHC, которые вы отправили на адрес кошелька.
TX Output Index: Это будет либо «0», либо «1», с его помощью 1000 CHC подтверждают транзакцию. В приведенном ниже примере мы можем видеть, что 1000 CHC являются вторыми, поэтому вывод TX будет равен «1». Если бы наша мастернода была выше, идентификатор был бы «0».
Используйте блокчейн-explorer блоков ChainCoin, чтобы найти индексs TXID и TX Output (http://104.238.153.140:3001/).
Пошаговый алгоритм
1. Настройте файл masternode.conf, который мы только что создали, используя приведенную выше информацию, для каждой Мастерноды.
Он должен выглядеть так:
2. Помните, что IP-адрес будет IP-адресом VPS, который мы установили ниже.
3. Сохраните файл masternode.conf.
Настройка виртуального частного сервера Hosted Masternode VPS
Теперь переходим к части, которая повергает в панику большинство людей, но, на самом деле, она довольно несложная. Начать настройки учетной записи можно на https://www.vultr.com. Они делают хостинг примерно за 5 долларов в месяц, и они принимают Биткоины в качестве оплаты. Я использую vultr для всех своих МН, поскольку мне кажется, что сервис прост в использовании, а цены за услуги не высокие.
Я постараюсь описать все максимально просто. Я не эксперт Linux, поэтому сам следовал пошаговым руководствам, опубликованным на каждом хорошем сайте, посвященном Мастернодам, и у меня до сих пор все хорошо работает.
Скажу по опыту, что лучше четко следовать инструкциям и повторять все шаги, описанные далее:
1. После того как вы зарегистрируетесь, создайте новый VPS-сервер, нажав кнопку «+» на «Deploy a New Server».
2. Выберите предпочтительное место для своего VPS-сервера.
3. Выберите сервер Ubuntu x64bit 14.04. Версия Ubuntu должна быть 14.04.
4. Выберите объем памяти вашего сервера, рекомендуемый размер – 1 ГБ, сейчас его стоимость составляет 5 долларов США в месяц.
5. Назначьте ему имя, например, ChainCoin MN1, у вас также есть возможность включить автоматическое резервное копирование, если хотите.
6. Если у вас есть несколько Мастернод для настройки, нужно будет создать один VPS на МН, полностью следуя инструкции, а затем по шаблону быстро создать все остальные.
7. Нам нужно зайти на новый VPS-сервер и загрузить кошелек, но сначала нужно получить к нему доступ. Существуют различные программы для доступа к VPS Linux, я использую Putty, возьмем ее в качестве примера.
8. Перейдите на сайт Putty, загрузите и установите клиент.
9. Установите и запустите Putty. Теперь нам нужно ввести учетные данные VPS для входа в систему.
10. Имя пользователя будет «root», пароль можно определить, открыв VPS на сайте Vultr.
11. После того как мы вошли в систему, нам нужно будет ввести последовательность команд, чтобы начать работу, чтобы создать файл Swap.
Запустите эти команды, чтобы создать swap:
sudo dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
sudo mkswap /var/swap.img
sudo swapon /var/swap.img
Чтобы swap не слетел после перезагрузки:
sudo chmod 0600 /var/swap.img
sudo chown root:root /var/swap.img
sudo nano /etc/fstab
Добавьте в конец файла следующую строку:
/var/swap.img none swap sw 0 0
Сохраните файл с помощью «Ctrl + S» и подтвердите изменения.
Установите зависимости, необходимые для компиляции Мастерноды:
sudo apt-get update
sudo apt-get install automake
sudo apt-get install libdb++-dev
sudo apt-get install build-essential libtool autotools-dev
sudo apt-get install autoconf pkg-config libssl-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libminiupnpc-dev
sudo apt-get install git
sudo apt-get install software-properties-common
sudo apt-get install python-software-properties
sudo apt-get install g++
Загрузите и скомпилируйте базу данных Berkely DB v4.8:
sudo add-apt-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8++-dev -y
Загрузите исходный код chaincoin:
cd ~
git clone https://github.com/chaincoin/chaincoin.git
Скомпилируйте masternode с помощью Berkely DB v4.8 и без GUI
cd ~/chaincoin/
./autogen.sh
./configure --without-gui
make
sudo make install
Примечания
Если вы настраиваете несколько Мастернод, на данном этапе будет удобно создать моментальный снимок VPS-сервера, чтобы ускорить процесс и установить следующие МН по шаблону.
Чтобы создать снимок, выполните следующие настройки:
1. Перейдите на панель инструментов Vultr и, выбрав VPS-сервер, который вы хотите сделать исходным, перейдите в меню моментальных снимков.
2. Дайте вашему снимку имя, например, ChainCoin_seed.
3. Нажмите «Take Snapshot» и дождитесь завершения процесса. Во время написания этого руководства моментальные снимки на Vultr бесплатны.
4. Когда моментальный снимок будет сделан, вы сможете использовать его для создания новых VPS-серверов для новых Мастернод.
Чтобы создать новый VPS-сервер с помощью снимка, который мы только что создали, сделайте следующее:
1. Откройте новый сервер, щелкнув по значку «+», чтобы развернуть окно.
2. Выберите предпочтительный регион.
3. При выборе типа сервера найдите вкладку «Snapshot» и выберите моментальный снимок. Размер нового сервера должен быть равен или больше того, на котором был создан моментальный снимок.
Это ускорит настройку новых Мастернод, позволяя вам сразу перейти к следующим этапам. Важный момент: вам нужно будет изменить «Host Name» моментального снимка для каждого нового сервера в соответствии с его именем.
Вы можете сделать это, введя в командной строке следующее:
sudo nano /etc/hosts
sudo nano /etc/hostname
1. Отредактируйте файл конфигурации для Мастерноды.
2. Перейдите в папку конфигурации: «cd ~/.chaincoin/».
3. Если папка не существует, создайте ее: «mkdir ~/.chaincoin/», а затем используйте ее «cd ~/.chaincoin/» для перехода в папку конфигурации.
4. Перечислите содержимое и найдите chaincoin.conf.
5. Если файл не существует, создайте его так: «touch chaincoin.conf».
6. Отредактируйте файл: «nano chaincoin.conf».
Добавьте эти строки в файл, если они еще не существуют:
rpcuser=(create a username)
rpcpassword=(enter a strong password)
rpcallowip=127.0.0.1
daemon=1
server=1
listen=1
maxconnections=256
masternode=1
externalip=(VPS IP Address)
bind=(VPS IP Address)
masternodeaddr=(VPS IP Address):11994
masternodeprivkey=(Insert your masternode key we generated above)
Значения «rpcuser» и «rpcpassword» предназначены для интерфейса RPC, что позволяет вам взаимодействовать с Мастернодой из командной строки. Вы можете экспериментировать с любыми значениями, которые вам нравятся, но сохраните их копию в запасном файле.
Запустите chaincoind и дождитесь его синхронизации. Это может занять некоторое время, так как необходимо загрузить большой файл. Как только ваша Мастернода будет синхронизирована с блочной цепью, мы будем готовы начать со следующего шага, который запускает МН из вашего Windows-кошелька.
Запуск новой Мастерноды
Перейдите в свой кошелек Windows и откройте консоль RPC, выбрав «Инструменты - Панель управления». Введите следующую команду в консоль RPC: «masternode start-many» (wallet password). Если ваш кошелек зашифрован, что я рекомендую вам сделать, вы вместо этого введите пароль.
В консоли должно появиться сообщение:
“overall” : “Successfully started masternode, failed to start 0, total 1”,
“detail” :
“status” :
“alias” : “masternode1”,
“result” : “successful”
Done.
Проверка работы вашей Мастерноды:
1. Вы можете проверить, запущена ли ваша Мастернода, открыв консоль RPC, перейдя в меню «Инструменты - Отладочная консоль» и введя «masternode list status IPAddress».
2. Для получения полного списка Мастернод введите «masternode list».
3. Чтобы остановить работу вашей Мастерноды введите «masternode stop-many» или «masternode stop-alias mnAlias»
4. Чтобы просмотреть счетчик Мастернод – «masternode count».
5. Чтобы начать использование конкретной мастерноды – «masternode start-alias mnAlias»
И в завершение
У вас теперь есть своя первая Мастернода, и вы можете начать пожинать плоды уже через несколько дней. Если вы правильно выполните шаги, описанные в этом руководстве, и придерживайтесь инструкций по установке, доступных на каждом веб-сайте по Местернодам, вы быстро сможете эффективно настраивать узлы.
Я начал с одного узла для Memetic несколько недель назад, и с тех пор я добавил:
Innova;
Vivo;
HarvestCoin;
Chaincoi;
Crave.
Так что вперед! Надеюсь, это руководство поможет вам в мире Мастернод.