Обслуживание#
Мастреноды требуют регулярного обслуживания, это необходимо для того, чтобы не выпасть из очереди на выплату наград. Обслуживание включает в себя своевременное обновление Dash и поддержку уровня безопасности и производительности сервера на должном уровне. Также мастерноды должны голосовать по бюджетным предложениям и выполнять другие задачи в интересах сети и для поддержки стоимости DASH, заложенных в них.
Обновление программного обеспечения мастерноды#
Программное обеспечение Dash Core требует регулярного обновления, чтобы оставаться в соответствии с текущим сетевым консенсусом. Чтобы вручную обновить свою мастерноду, выполните описанную ниже процедуру. Если вы все еще используете устаревшую программу установки dashman, обратитесь к документации по обновлению устаревшей версии <https://docs.dash.org/en/0.15.0/masternodes/maintenance.html#masternode-software-update>`__.
Ручное обновление#
Для обновления Dash вручную, войдите в учётную запись вашего сервера, использовав ssh или PuTTY. Если в вашем файле crontab содержится запись для автоматического перезапуска dashd, запустите crontab -e и пропишите соответствующую строку добавлением символа #. Это должно выглядеть вот так:
# * * * * * pidof dashd || ~/.dashcore/dashd
После этого остановите работу Dash:
~/.dashcore/dash-cli stop
Visit the GitHub releases page and copy the link to the latest x86_64-linux-gnu version. Go back to your terminal window and enter the following command, pasting in the address to the latest version of Dash Core by right clicking or pressing Ctrl + V:
cd /tmp
wget https://github.com/dashpay/dash/releases/download/v19.3.0/dashcore-19.3.0-x86_64-linux-gnu.tar.gz
Убедитесь в подлинности загруженного файла, сверив его подпись с открытым ключом, опубликованным командой разработчиков Dash Core. Все выпуски Dash подписываются с помощью GPG одним из следующих ключей:
Александр Блок (codablock) с ключом
63A9 6B40 6102 E091, ``верифицируемый здесь на Keybase <https://keybase.io/codablock>`__Pasta с ключом
5252 7BED ABE8 7984, ``верифицируемым здесь на Keybase <https://keybase.io/pasta>`__
curl https://keybase.io/codablock/pgp_keys.asc | gpg --import
curl https://keybase.io/pasta/pgp_keys.asc | gpg --import
wget https://github.com/dashpay/dash/releases/download/v19.3.0/dashcore-19.3.0-x86_64-linux-gnu.tar.gz.asc
gpg --verify dashcore-19.3.0-x86_64-linux-gnu.tar.gz.asc
Распакуйте архив и скопируйте новые файлы в следующую папку:
tar xfv dashcore-19.3.0-x86_64-linux-gnu.tar.gz
cp -f dashcore-19.3.0/bin/dashd ~/.dashcore/
cp -f dashcore-19.3.0/bin/dash-cli ~/.dashcore/
Перезапустите Dash:
~/.dashcore/dashd
Вы увидите сообщение «Dash Core server starting». Сейчас мы обновим Sentinel:
cd ~/.dashcore/sentinel/
git checkout master
git pull
venv/bin/pip install -r requirements.txt
В завершение, раскомментируйте строку для автоматического перезапуска Dash в файле crontab повторным запуском crontab -e и удалением символа #.
Теперь программное обеспечение Dash на мастерноде обновлено до последней версии.
Информация по обновлению мастеноды#
Периодически может возникнуть необходимость обновить информацию о мастерноде, если какие-либо данные о владельце или операторе мастерноды изменились. Например, это может быть IP адрес, изменение адреса выплат владельца/оператора или изменение назначенных для голосующего/оператора ключей. Также есть возможность отозвать зарегистрированный статус мастерноды (например, в случае проблем с безопасностью) для того, чтобы принудить и владельца, и оператора обновить данные.
Смена ключа оператора BLS или создание нового ProTx на основе той же операции обеспечения приведет к сбросу позиции в очереди на выплату. Смена IP-адреса или внесение изменений в адреса голосования или различных выплат не приведет к сбросу позиции в очереди на выплату.
ProUpServTx#
Служебная Транзакция Обновления Информации о Поставщике Услуг или Provider Update Service Transaction (ProUpServTx) используется для обновления информации, касающейся оператора. Оператор может обновить IP адрес и входящие порты мастерноды. Если в изначальном ProRegTX была выставлена operatorReward отличная от нуля, то оператор может настроить поле operatorPayoutAddress в ProUpServTx. Если operatorPayoutAddress не установлен или operatorReward равен нулю, то владелец получает полную награду. ProUpServTx можно создать из DMT, нажав кнопку Update service, или из Dash Core, используя следующий синтаксис:
protx update_service proTxHash ipAndPort operatorKey (operatorPayoutAddress feeSourceAddress)
Где:
proTxHash: id транзакции изначального ProRegTxipAndPort: IP и порт из «ip:port»operatorKey: BLS приватный ключ оператора, привязанный к зарегистрированному публичному ключу оператораoperatorPayoutAddress(необязательно): Адрес, используемый для выплат вознаграждений операторам. Допускается только в том случае, если ProRegTx имел ненулевое значениеoperatorReward. Введите"", чтобы использовать последний адрес выплаты вознаграждения оператора, или в качестве заполнителя при указанииfeeSourceAddress.feeSourceAddress(по желанию): адрес, использующийся для оплаты комиссии за ProTx. Будет использоватьсяoperatorPayoutAddress, если не указано другое.
Пример:
protx update_service d6ec9a03e1251ac8c34178f47b6d763dc4ea6d96fd6eddb3c7aae2359e0f474a 140.82.59.51:10002 4308daa8de099d3d5f81694f6b618381e04311b9e0345b4f8b025392c33b0696 yf6Cj6VcCfDxU5yweAT3NKKvm278rVbkhu
fad61c5f21cf3c0832f782c1444d3d2e2a8dbff39c5925c38033730e64ecc598
Теперь мастернода удалена из бан-списка PoSe, а IP:port и адрес награды оператора обновлены.
ProUpRegTx#
Регистрационная транзакция обновления информации о провайдере или Provider Update Registrar Transaction (ProUpRegTx) используется для обновления информации, касающейся владельца. Владелец может обновить публичный BLS ключ оператора (например, чтобы назначить нового оператора), адрес голосования и адреса выплат операторов. ProUpRegTx можно создать из DMT, нажав кнопки Update operator key, Update voting key или Update payout addr., или из Dash Core, используя следующий синтаксис:
protx update_registrar proTxHash operatorKeyAddr votingKeyAddr payoutAddress (feeSourceAddress)
Предупреждение
After v19 hard fork activation, protx update_registrar_legacy must
be used if a legacy scheme BLS key is being used to registrar update a
masternode.
Где:
proTxHash: id транзакции изначального ProRegTxoperatorKeyAddr: Обновленный BLS публичный ключ или значение""для использования ключа последнего оператора в цепи.votingKeyAddr: обновлённый адрес для ключа голосования или значение""для использования ключа последнего голосующего в блокчейне.payoutAddress: обновлённый адрес для выплат владельцу или значение""для использования ключа последнего оператора в цепи.feeSourceAddress(по желанию): адрес для оплаты комиссии за ProTx. Если не указано иное, то будет использоваться``PayoutAddress``.
Пример обновления адреса выплат:
protx update_registrar cedce432ebabc9366f5eb1e3abc219558de9fbd2530a13589b698e4bf917b8ae "" "" yi5kVoPQQ8xaVoriytJFzpvKomAQxg6zea
ProUpRevTx#
Транзакция отзыва обновления информации о провайдере или Provider Update Revocation Transaction (ProUpRevTx) используется оператором для прекращения услуг или сигнализации владельцу о том, что необходим новый BLS ключ. Данная транзакция немедленно поместит мастерноду в бан PoSe. Владелец должен будет отправить ProUpRegTx для назначения нового ключа оператора. После того как ProUpRegTX будет включена в блок, новый оператор должен будет отправить ProUpServTx для обновления метаданных и исключения из бана PoSe (восстановить мастерноду). ProUpRevTx можно создать из DMT, нажав кнопку Revoke operator, или из Dash Core, используя следующий синтаксис:
protx revoke proTxHash operatorKey reason (feeSourceAddress)
Где:
proTxHash: id транзакции изначального ProRegTxoperatorKey: BLS приватный ключ оператора, привязанный к зарегистрированному публичному ключу оператораreason: целочисленное значение, обозначающее причину отзываfeeSourceAddress(по желанию): адрес, использующийся для оплаты комиссии за ProTx. Будет использоватьсяoperatorPayoutAddress, если не указано другое.
Пример:
protx revoke 9f5ec7540baeefc4b7581d88d236792851f26b4b754684a31ee35d09bdfb7fb6 565950700d7bdc6a9dbc9963920bc756551b02de6e4711eff9ba6d4af59c0101 0
Proof of Service Bans#
Если ваш мастернода не может обеспечить обслуживание сети в соответствии с действующими правилами консенсуса, он получит Proof of Service Ban. Если ваша мастернода находится в статусе POSE_BANNED, необходимо проверить правильность следующих настроек:
Убедитесь, что вы используете последнюю версию Dash.
Убедитесь, что мастерноде достаточно памяти, свопа, вычислительной мощности и места на жестком диске
Убедитесь, что вы полностью синхронизированы с корректной высотой блока, и что вы находитесь в правильной цепочке, а не в вилочном соединении
Убедитесь, что закрытый ключ BLS указан с помощью опции
masternodeblsprivkeyв файлеdash.confмастернодыУбедитесь, что закрытый ключ BLS мастерноды уникален в сети и не используется совместно с другими узлами.
Убедитесь, что закрытый ключ BLS мастерноды соответствует открытому ключу BLS, зарегистрированному на блокчейне в
ProRegTxилиProUpRegTx.Убедитесь, что
externalip(иport, если используется testnet) указаны правильно и не заблокированы брандмауэром или службой переадресации портовУбедитесь, что Sentinel установлен, обновлен, не завершается с ошибкой и внесен в crontab для запуска каждые 1-2 минуты
Убедившись в правильности этих настроек, можно обновить статус обслуживания в сети и вернуться к действительному набору мастернод, создав ProUpServTx. После восстановления обслуживания внимательно следите за состоянием своего мастерноды с помощью masternode status и/или файла debug.log. Эта информация поможет определить конкретную неправильную конфигурацию, из-за которой мастер-узел был запрещен. Если мастернода продолжает отказываться от обслуживания, он будет снова запрещен.
Голосование, проверки и слежение за мастернодами на DashCentral#
Сайт Dash Central имеет поддержку сообщества и управляется пользователем Rango. Этот сайт стал местом, на котором «де-факто» обсуждаются бюджетные предложения, для чего там предлагается графический интерфейс, но, кроме этого, там можно следить за мастернодами.
Добавление вашей мастерноды на Dash Central#
Dashcentral позволяет вам голосовать по бюджетным предложениям прямо из браузера. После завершения регистрации, пройдите на страницу мастерноды и нажмите кнопку Add masternode now. Введите адрес, на котором находится залоговое подтверждение на этом экране:
Добавление мастерноды на Dash Central#
Нажмите Add masternode. Теперь ваша мастернода добавлена на DashCentral.
Включение системы голосования из Dash Central#
Нажмите Edit под Voting privkeys и введите приватный ключ вашей мастерноды для подключения голосования через веб-интерфейс DashCentral. Введите кодовую фразу для голосования (она отличается от вашего пароля для входа на сайт и её также важно помнить!) и введите приватный ключ (тот же самый ключ, что вы использовали в файле dash.conf вашей мастерноды) на этом экране:
Добавление приватных ключей для голосования на Dash Central#
Важно обратить внимание на то, что приватный ключ для запуска мастерноды не имеет отношения к приватным ключам адреса с залоговым подтверждением в 1000 DASH. Эти ключи могут использоваться для отдачи команд от имени мастерноды, например, на голосование и не могут использоваться для доступа к залоговому подтверждению. Эти ключи зашифрованы на вашем устройстве и не хранятся в текстовом формате на серверах DashCentral. Как только вы ввели ключ, нажмите Store encrypted voting privkeys on server. Теперь вы можете голосовать по бюджетным предложениям из веб-интерфейса DashCentral.
Подтверждение владения#
Вы можете создать сообщение из своего адреса для подтверждения владения мастернодой для DashCentral. Нажмите Unverified под Ownership и появится следующий экран:
Подтверждение владения мастернодой для DashCentral#
Инструкция по подписи адреса с залоговым подтверждением через программу, связанную с кошельком. Если вы используете физический кошелёк, отличный от Trezor, то необходимо использовать приложение DMT для подписи адреса. Если вы используете физический кошелёк Trezor, то зайдите в него, скопируйте адрес суммы с залоговым подтверждением и нажмите Sign & Verify. Далее появится экран, где вы можете ввести сообщение, предоставленное Dash Central и адрес, который вы хотите подписать:
Подпись сообщения из кошелька Trezor#
Нажмите Sign, подтвердите ваш Trezor и введите PIN для подписи сообщения. Подпись сообщения появится в окне Signature. Скопируйте эту подпись, вставьте её в окно на DashCentral и нажмите Verify ownership. Процедура подтверждения завершена.
Владение мастернодой было успешно подтверждено#
Установка скрипта наблюдения за мастернодой DashCentral#
DashCentral предлагает сервис для наблюдения за вашей мастернодой, автоматический перезапуск dashd в случае отключения и отправку письма по e-mail в случае ошибки. Пройдите на страницу Account settings и создайте новый ключ API, добавив к своему профилю PIN, при необходимости. Проследуйте на этот экран:
Настройка скрипта наблюдения DashCentral#
Скопируйте ссылку на текущую версию скрипта dashcentral, нажав правой кнопкой мыши и выбрав Copy link address. Откройте PuTTY, присоединитесь к своей мастерноде и напечатайте:
wget https://www.dashcentral.org/downloads/dashcentral-updater-v6.tgz
Заместите ссылку ссылкой с текущей версией dashcentral-updater, если необходимо. Разархивируйте архив, используя следующую команду:
tar xvzf dashcentral-updater-v6.tgz
Подробную информацию о конфигурации вашей мастерноды можно увидеть напечатав:
cat .dashcore/dash.conf
Скопируйте значения для rpcuser` и ``rpcpassword. Далее, отредактируйте конфигурацию dashcentral, написав:
nano dashcentral-updater/dashcentral.conf
Замените значения api_key, адреса залогового подтверждения вашей мастерноды, rpc_user, rpc_password, daemon_binary и daemon_datadir в соответствии с вашей системой. Чаще всего, конфигурация выглядит следующим образом, где lwhite это имя пользователя Linux:
Конфигурационный файл DashCentral updater#
################
# dashcentral-updater configuration
################
our %settings = (
# Enter your DashCentral api key here
'api_key' => 'api_key_from_dashcentral'
);
our %masternodes = (
'masternode_collateral_address' => {
'rpc_host' => 'localhost',
'rpc_port' => 9998,
'rpc_user' => 'rpc_user_from_dash.conf',
'rpc_password' => 'rpc_password_from_dash.conf',
'daemon_autorestart' => 'enabled',
'daemon_binary' => '/home/<username>/.dashcore/dashd',
'daemon_datadir' => '/home/<username>/.dashcore'
}
);
Нажмите Ctrl + X для выхода, подтвердите, что хотите сохранить, нажав Y , далее нажмите Enter. Протестируйте свою конфигурацию, запустив скрипт dashcentral, затем проверьте сайт. Если всё прошло успешно, вы увидете, что было отправлено обновление:
dashcentral-updater/dcupdater
Тестирование DashCentral updater вручную#
DashCentral updater успешно отправил данные на сайт DashCentral#
Как только вы убедились, что ваша конфгурация работает, то можно отредактировать crontab вашей системы для задачи расписания работы скрипта dcupdater каждые 2 минуты. Это позволит системе выдать вам раннее предупреждение в случае неполадок и перезапустит dash daemon в случае его зависания или прекращения работы. Это эффективный способ обрести уверенность в том, что вы не выпадите из очереди на выплаты. Напечатайте следующую команду:
crontab -e
При необходимости, выберите редактор и добавьте следующую строку в ваш crontab после строки для sentinel, заменив lwhite вашим именем пользователя системы:
*/2 * * * * /home/lwhite/dashcentral-updater/dcupdater
Редактирование crontad для автоматического запуска DashCentral updater#
Нажмите Ctrl + X для выхода, подтвердите, что хотите сохранить, нажав Y , далее нажмите Enter. Теперь скрипт dcupdater будет запускаться каждые 2 минуты, перезапускать dashd, когда это будет необходимо и отправлять вам e-mail в случае ошибки.
Интсрументы за наблюдением за мастернодой#
Некоторые сайты, управляемые членами сообщества Dash, могут использоваться для слежения за ключевой информацией и статистикой, относящейся к сети мастернод.
Обозреватели блоков#
Поскольку Dash является публичным блокчейном, то для просмотра балансов публичных адресов Dash возможно использование обозревателей блоков. Также возможно исследовать транзакции в любом блоке. Каждая уникальная транзакция доступна к поиску через txid. Для сети Dash существует несколько обозревателей блоков.
Blockchair предлагает обозреватель блоков с подробными визуальными данными для анализа блокчейна Dash.
CryptoID предлагает Dash blockchain explorer и функцию для просмотра местоположения мастернод Dash.
BitInfoCharts предлает страницу со статистикой по ценам и обозреватель блоков.
CoinCheckup предоставляет ряд статистических данных и информации по большинству блокчейнов, включая Dash.
Dash.org включает в себя обозреватели блокчейна по адресу explorer.dash.org и insight.dash.org.
Trezor operates a blockchain explorer powered by a Dash fork of insight, an advanced blockchain API tool
Dash Masternode Tool#
Bertrand256/dash-masternode-tool
Программа написана и поддерживается членом сообщества Dash Bertrant256. Dash Masternode Tool (DMT) позволяет осуществлять запуск мастерноды со всех ведущих физических кошельков, таких как Trezor, Ledger и KeepKey. Дополнительно, программа поддерживает функцию голосования по бюджетным предложениям и вывода выплат для мастернод, не затрагивая залоговое подтверждение.
DASH Ninja#
DASH Ninja управляется участником форума и разработчиком Dash Core под именем elbereth. Предлагается ключевая статистика по применению различных версий Dash во всей сети мастернод. Есть несколько функций для наблюдения за управлением Dash, расписанием вылат и географическим распределением мастернод. Доступен простой обозреватель блоков.
DashCentral#
DashCentral, operated by forum member rango, offers an advanced service to monitor masternodes and vote on budget proposals through an advanced web interface.
Masternode.me#
Masternode.me управляется членом коммьюнити Dash под именем moocowmoo. Предлагается информация по цене, скорости генерации блоков, информация по блокчейну и некоторая информация по мастернодам.
Информация о мастерноде#
http://178.254.23.111/~pub/Dash/Dash_Info.html
Этот сайт управляется членом форума и разработчиком Dash Core под именем crowning. Он предлагает визуализацию различной важной статистики сети мастернод Dash, включая графики общего числа мастернод, информацию по цене и распределение сети.