Mantenimiento

Los Masternodes requieren mantenimiento regular para asegurar para asegurar que no interrumpe la cola de pago. Esto incluye la instalación inmediata de actualizaciones a Dash, así como el mantener la seguridad y rendimiento del servidor. En adición, los masternodes deben votar las propuestas y llevar a cabo otras tareas por el interés de la red y el valor de Dash que tienen.

Retiros de pagos

Una vez que tu masternode haya sido aceptado por la red, ingresará en la cola de pagos de masternodes y lentamente comenzará a moverse hacia arriba. Un masternode dentro del 10% superior de la lista se selecciona y recibe un pago cada vez que se mina un nuevo bloque de Dash. Para más detalles sobre este proceso, mira aquí. Estos pagos se envían a la misma dirección que usaste para iniciar tu masternode, lo que significa que debes tener cuidado al retirar los pagos. El pago de 1000 DASH original que usaste para iniciar tu masternode debe permanecer intacto en una única transacción no gastada (utxo) o tu masternode saldrá de la lista de pago - es posible que hayas visto esta identificación cuando te preparabas para enviar el comando de inicio del masternode. Los pagos aparecen en UTXOs por separado, por lo que necesitamos un método para solo gastar esos UTXOs y no el que contiene el 1000 DASH. Ten en cuenta que los pagos de masternodes solo pueden gastarse después de 100 confirmaciones.

Opción 1: Retiros con una billetera de hardware

Si usaste una billetera de hardware como Trezor para iniciar tu masternode, también debes usar este proceso para realizar retiros de pagos. Una vez más, utilizaremos la herramienta Dash Masternode (DMT) de Bertrand256 para seleccionar las salidas correctas. Con DMT, podemos seleccionar UTXOs específicos para retirar los pagos sin tocar la transacción de garantía original. Esto no es posible solo con la billetera web Trezor.

Abre DMT y verifica que las conexiones RPC y HW estén funcionando. Desde el menú Herramientas, selecciona Transferir fondos desde la dirección del masternode actual o ** Transferir fondos desde todas las direcciones de masternode**, si usas DMT para controlar múltiples masternodes.

../_images/maintenance-dmt-tools.png

Seleccionar la función de fondos de transferencia en DMT

DMT se cargará por un momento, luego mostrará una ventana que muestra los UTXOs disponibles que puedes usar en tu retiro. De forma predeterminada, se verifican todos los UTXOs que no se utilizan como garantía del masternode. Los UTXOs de garantía del masternode no solo están desactivados sino que también están ocultos para evitar el envío involuntario de fondos asociados con la garantía y la detención de tu masternode. Puedes mostrar estas entradas ocultas al desmarcar la opción Ocultar utxos de garantía. Ingresa tu dirección de destino para la transacción. La ventana debe aparecer de la siguiente manera:

../_images/maintenance-dmt-utxos.png

Seleccionar los UTXOs para usarlos como entradas en la transacción de retiro

Verifica la comisión de transacción y haz click en Enviar. Tu Trezor te pedirá que ingreses tu PIN y confirmes la transacción en el dispositivo. Una vez hecho esto, confirma una vez más a DMT que deseas transmitir la transacción a la red haciendo click en Si. Aparecerá una confirmación con la identificación de la transacción.

../_images/maintenance-dmt-broadcast.png
../_images/maintenance-dmt-sent.png

Confirmar la transmisión de la transacción a la red

Opción 2: Retiros desde la billetera Dash Core

Similar a DMT como se describió anteriormente, necesitamos un método en la billetera de Dash Core para restringir qué UTXOs se gastan cuando se realizan retiros de una dirección de masternode para garantizar que no se toque el UTXOs de garantía. En la billetera Dash Core, esta función se conoce como control de monedas, y debe estar habilitada antes de poder usarla. Haz click en Configuraciónes > Opciones > Billetera > Activar funciones de control de monedas. Ahora, cuando vayas a la pestaña Enviar en tu billetera, aparecerá un nuevo botón con la etiqueta Entradas …. Haz click en este botón para seleccionar qué UTXOs se pueden usar como entrada para cualquier transacción que quieras crear. La siguiente ventana aparecerá:

../_images/maintenance-dashcore-coin-selection.png

Ventana de selección de monedas en la billetera Dash Core, que muestra dos masternodes (red de prueba)

Haz click derecho en la(s) transacción(es) que muestra una cantidad de 1000 DASH, luego selecciona Bloquear sin gastar. Aparecerá un pequeño candado junto a la transacción. Luego haz click en OK. Ahora puedes crear transacciones de forma segura con sus fondos restantes sin afectar los UTXOs de garantía originales.

../_images/maintenance-dashcore-lock-unspent.png
../_images/maintenance-dashcore-locked.png

Bloquear UTXOs en la billetera Dash Core

Cómo actualizar un masternode

Periódicamente, el equipo de desarrollo de Dash Core lanzará actualizaciones para Dash. Como los nodos normales dependen de ellos para servicios y copias de la cadena de bloques, se espera que los masternodes se actualicen rápidamente a las nuevas versiones de Dash y Sentinel. En algunos casos, las actualizaciones de hardware (más CPU, RAM o espacio en disco, o incluso hardware GPU/ASIC personalizado) también pueden ser necesarias. Si no actualizas, el nodo maestro se eliminará de la cola de pagos. Si ejecutas un masternode alojado, tu proveedor de alojamiento se encargará de las actualizaciones por ti. De lo contrario, el método de actualización depende de cómo hayas instalado Dash.

Las actualizaciones menores de versiones de Dash (por ejemplo, de 0.12.3.1 a 0.12.3.2) no realizan cambios en la versión de protocolo, mientras que las actualizaciones mayores de versiones (por ejemplo, de 0.12.2.3 a 0.12.3.0) generalmente aumentarán la versión del protocolo de red. Si la versión del protocolo no cambió, NO es necesario que reinicies tu masternode si completas la actualización dentro de 60 minutos. Si la versión del protocolo cambió, debes emitir un comando de inicio desde tu billetera. No envíes comandos de inicio a tu masternode si no es necesario, ya que esto lo enviará al final de la cola de pagos.

Opción 1: actualización automatizada usando dashman

Para actualizar Dash usando dashman, inicia sesión en st servidor e ingresa los siguientes comandos:

~/dashman/dashman sync
~/dashman/dashman update

Revisa el estado de tu masternode:

~/dashman/dashman status

Si estás haciendo una actualización mayor de la versión y necesitas reiniciar tu masternode, actualiza la versión del software de la billetera que contiene la garantía a la última versión, siguiendo las instrucciones aquí. Continúa monitoreando tu masternode. Después de un tiempo, todos los estados deben tornarse verdes, en particular masternode iniciado: SI y estado de red de masternode: HABILITADO.

Opción 2: Actualización de manual

Para actualizar Dash manualmente, inicia sesión en tu servidor usando ssh o PuTTY. Primero tenemos que dejar de ejecutar Dash:

~/.dashcore/dash-cli stop

Para descargar e instalar manualmente los componentes de su masternode Dash, visite https://www.dash.org/wallets/ en su computador para encontrar el enlace a la ultima billetera Dash Core. Haga clic en Linux, luego clic derecho en Descargar TGZ para Dash Core Linux 64 Bit y seleccione Copiar dirección de enlace. Vaya de nuevo a la ventana terminal e ingrese el siguiente comando, pegando la dirección de la ultima version de Dash Core con clic derecho o presionando Ctrl + V:

cd ~
wget https://github.com/dashpay/dash/releases/download/v0.12.3.3/dashcore-0.12.3.3-x86_64-linux-gnu.tar.gz

Verifica la integridad de tu descarga ejecutando el siguiente comando y comparando la salida con el valor del archivo como se muestra en el sitio web de Dash en Hash File:

sha256sum dashcore-0.12.3.3-x86_64-linux-gnu.tar.gz
../_images/setup-manual-download.png

Enlaza el archivo hash para verificar la integridad de la descarga

Elimina los archivos binarios antiguos del directorio de trabajo, extrae el archivo comprimido, copia los archivos nuevos en el directorio y configúralos como ejecutables:

rm ~/.dashcore/dashd
rm ~/.dashcore/dash-cli
tar xfvz dashcore-0.12.3.3-x86_64-linux-gnu.tar.gz
cp dashcore-0.12.3/bin/dashd ~/.dashcore/
cp dashcore-0.12.3/bin/dash-cli ~/.dashcore/

Elimina los archivos innecesarios:

rm dashcore-0.12.3.3-x86_64-linux-gnu.tar.gz
rm -r dashcore-0.12.3/

Reinicia Dash:

~/.dashcore/dashd

Verás un mensaje que dice «Iniciando servidor Dash Core». Ahora actualizaremos Sentinel:

cd ~/.dashcore/sentinel/
git pull

Si la versión del protocolo cambió durante esta actualización, deberás emitir un comando de inicio desde tu billetera. Si estás utilizando una billetera de hardware, puedes ejecutar el comando de inicio simplemente haciendo click en el botón en DMT. Si estás utilizando la billetera Dash Core, actualízala a la última versión, abre la consola de depuración e ingresa este comando, donde MN1 es el alias de tu masternode:

masternode start-alias MN1

Mnitorea el estado de tu masternode a medida que se inicia:

~/.dashcore/dash-cli getblockcount
~/.dashcore/dash-cli getnetworkinfo
~/.dashcore/dash-cli mnsync status
~/.dashcore/dash-cli masternode status

En particular, el último comando debería devolver el estado Masternode iniciado con éxito. Si ves un error similar a Versión del protocolo no válida, entonces la versión del protocolo ha cambiado y debes enviar un comando de inicio desde tu billetera nuevamente. También puedes controlar el estado de tu masternode desde Sentinel. Si Sentinel detecta un masternode funcional, el siguiente comando no devolverá nada:

cd ~/.dashcore/sentinel
venv/bin/python bin/sentinel.py

Finalmente, puedes verificar tu masternode por su dirección de garantía usando DashNinja, o buscar en la lista de consenso de masternodes usando este comando e ingresando tu dirección IP de masternode:

~/.dashcore/dash-cli masternode list full | grep <your ip address>

Encontrar su posición en la cola de pago

Antes de Dash 0.12.4, cada masternode puede tener una vista ligeramente diferente de la red. En adición, la selección del top 10% de masternodes en la lista en la selección del grupo es al azar. Esto significa que no hay una respuesta definitiva de cuando puede su masternode ser seleccionado para pago. Sin embargo, es posible hacer una aproximación basada en el tiempo en que su masternode ingreso al final de la cola.

Los miembros de la comunidad xkcd, Bertrand256 y moocowmoo han publicado varios bots y herramientas que puede ejecutar para determinar su posición aproximada en la cola de pago, que están disponibles en Discord y Slack.

Votación, verificación y monitoreo de DashCentral

DashCentral es un sitio web compatible con la comunidad administrado por el miembro de la comunidad Rango. Se ha convertido en un sitio de facto para la discusión de propuestas presupuestarias y para facilitar la votación desde una interfaz gráfica de usuario, pero también ofrece funciones para monitorear los masternodes.

Agregar tu masternode a DashCentral

Dashcentral te permite votar propuestas desde la comodidad de tu navegador. Después de completar el registro, ve a la página masternodes <https://www.dashcentral.org/masternodes> _ y haz click en el botón**Agregar masternode ahora**. Ingresa tu dirección de garantía en la siguiente pantalla:

../_images/maintenance-dc-add-masternode.png

Agregar un masternode a DashCentral

Haz click en Agregar masternode. Tu masternode ha sido agregado a DashCentral.

Habilitar votación desde DashCentral

Haz click en Editar en Llaves privadas de votación para ingresar la llave privada de tu masternode y permitir la votación a través de la interfaz web de DashCentral. Ingresa una contraseña de votación (no la mismo contraseña de tu inicio de sesión, pero igualmente importante de recordar) e ingresa la llave privada (la misma llave que utilizaste en el archivo dash.conf en tu masternode) en la siguiente pantalla:

../_images/maintenance-dc-add-privkey.png

Agregar llaves privadas de votación a DashCentral

Es importante tener en cuenta que la llave privada para iniciar tu masternode no está relacionada con las llaves privadas de la dirección de la garantía que almacena tus 1000 DASH. Estas llaves se pueden usar para emitir comandos en nombre del masternode, como votar, pero no se pueden usar para acceder a la garantía. Las llaves están encriptadas en tu dispositivo y nunca se almacenan como texto sin formato en los servidores de DashCentral. Una vez que hayas ingresado la llave, haz click en Almacenar llaves privadas de votación encriptadas en el servidor. Ahora puedes votar propuestas desde la interfaz web de DashCentral.

Verificación de propiedad

También puedes emitir un mensaje desde tu dirección para verificar la propiedad de tu masternode a DashCentral. Haz click en No verificado en Propiedad y aparecerá la siguiente pantalla:

../_images/maintenance-dc-verify.png

Verificar la propiedad de tu masternode en DashCentral

Aparecerán instrucciones sobre cómo firmar tu dirección de garantía utilizando una billetera de software. Si estás usando una billetera de hardware que no sea Trezor, deberás usar la aplicación DMT para firmar la dirección. Si estás utilizando la billetera de hardware de Trezor, ve a Billeteria Trezor <https://wallet.trezor.io/> _, copia la dirección de la garantía y haz click en Firmar y verificar. Aparecerá la siguiente pantalla, donde puedes ingresar el mensaje proporcionado por DashCentral y la dirección que deseas firmar:

../_images/maintenance-dc-sign.png

Firmar un mensaje desde la billetera Trezor

Haz click en Firmar, confirma en su dispositivo Trezor e ingresa tu PIN para firmar el mensaje. Aparecerá una firma de mensaje en el cuadro Firma. Copia esta firma y pégala en el recuadro de DashCentral y haz click en Verificar propiedad. La verificación ahora está completa.

../_images/maintenance-dc-verified.png

La propiedad del masternode ha sido verificada exitosamente

Instalación de la secuencia de comandos de supervisión de DashCentral

DashCentral ofrece un servicio para monitorear tu masternode, reiniciar automáticamente dashd en caso de falla y enviar un correo electrónico en caso de error. Ve a la página Configuración de cuenta y genera una nueva llave API, agregando un PIN a tu cuenta si es necesario. Desplázate a la siguiente pantalla:

../_images/maintenance-dc-monitoring.png

Configuración de la secuencia de comandos de supervisión de DashCentral

Copia el enlace a la versión actual de la secuencia de comandos de dashcentral haciendo click derecho y seleccionando Copiar dirección de enlace. Abre PuTTY y conéctate a tu masternode, luego escribe:

wget https://www.dashcentral.org/downloads/dashcentral-updater-v6.tgz

Reemplaza el enlace con la versión actual del actualizador de dashcentral según sea necesario. Descomprime el archivo usando el siguiente comando:

tar xvzf dashcentral-updater-v6.tgz

Revisa los detalles de configuración de tu masternode escribiendo:

cat .dashcore/dash.conf

Copia los valores para rpcuser y rpcpassword. Luego edita la configuración de dashcentral escribiendo:

nano dashcentral-updater/dashcentral.conf

Reemplaza los valores para api_key, tu dirección de garantía de masternode, rpc_user, rpc_password, daemon_binary y daemon_datadir de acuerdo a tu sistema. Una configuración común, donde lwhite es el nombre del usuario de Linux, puede verse así:

../_images/maintenance-dc-update-config.png

Archivo de configuración del actualizador de DashCentral

################
# 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'
    }
);

Presiona Ctrl + X para salir, confirma que deseas guardar con Y y presiona ** Entrar**. Prueba tu configuración ejecutando el script dashcentral, luego verifica el sitio web. Si fue exitoso, verás que se ha enviado una actualización:

dashcentral-updater/dcupdater
../_images/maintenance-dc-update.png

Probar manualmente el actualizador de DashCentral

../_images/maintenance-dc-success.png

El actualizador de DashCentral ha enviado datos exitosamente al sitio de DashCentral

Una vez que hayas verificado que tu configuración está funcionando, podemos editar el crontab en tu sistema para programar el script dcupdater para que se ejecute cada 2 minutos. Esto permite que el sistema te avise con anticipación en caso de falla e incluso reiniciará el daemon dashd si se cuelga. Esta es una forma efectiva de asegurarte de no dejar la cola de pagos. Escribe el siguiente comando:

crontab -e

Selecciona un editor si es necesario y agrega la siguiente línea a tu crontab después de la línea para sentinel, reemplazando lwhite con tu nombre de usuario en tu sistema:

*/2 * * * * /home/lwhite/dashcentral-updater/dcupdater
../_images/maintenance-dc-crontab.png

Editar crontab para ejecutar automáticamente el actualizador de DashCentral

Presiona Ctrl + X para salir, confirma que deseas guardar con Y y presiona Entrar. El script dcupdater ahora se ejecutará cada dos minutos, reiniciará dashd siempre que sea necesario y te enviará un correo electrónico en caso de error.

Herramientas de monitoreo de masternodes

Varios sitios operados por miembros de la comunidad están disponibles para monitorear información clave y estadísticas relacionadas con la red de masternodes.

Exploradores de bloques

Dado que Dash es una cadena de bloques pública, es posible usar exploradores de bloques para ver los saldos de cualquier dirección pública de Dash, así como examinar las transacciones ingresadas en cualquier bloque dado. Cada transacción única también se puede buscar por su txid. Existen varios exploradores de bloques disponibles para la red Dash.

Herramienta Dash Masternode

https://github.com/Bertrand256/dash-masternode-tool

Escrito y mantenido por Bertrand256, miembro de la comunidad, la herramienta Dash Masternode (DMT) te permite iniciar un masternode desde todas los principales billeteras de hardware como Trezor, Ledger y KeepKey. También admite funciones para votar propuestas y retirar pagos de masternode sin afectar la transacción de garantía.

DASH Ninja

https://www.dashninja.pl

DASH Ninja, operado por elbereth, miembro del foro y desarrollador Dash Core, ofrece estadísticas clave sobre la adopción de diferentes versiones de Dash en la red de masternodes. También están disponibles varias funciones para supervisar la governanza de Dash, el calendario de pagos de masternodes y la distribución geográfica de masternodes, así como un explorador simple de la cadena de bloques.

DashCentral

https://www.dashcentral.org

DashCentral, operado por rango, miembro del foro, ofrece un servicio avanzado para monitorear los masternodes y votar propuestas de presupuesto a través de una interfaz web avanzada. Una aplicación Android también está disponible.

Masternode.me

https://stats.masternode.me

Masternode.me, operado por el miembro del foro y desarrollador de Dash Core, moocowmoo, ofrece informes secuenciales sobre el precio, la tasa de generación, información sobre la cadena de bloques y algo de información sobre los masternodes.

Información sobre masternodes

http://178.254.23.111/~pub/Dash/Dash_Info.html

Este sitio, operado por crowning, miembro del foro y desarrollador de Dash Core, ofrece una representación visual de muchas estadísticas clave de la red de masternodes de Dash, incluyendo gráficos del recuento total de masternodes a lo largo del tiempo, información de precios y distribución de red.