Convirtiéndose en un Validador
Ejecutando un Validador
Sugerimos primero probar unirse a una testnet pública. La información sobre cómo unirse a la testnet más reciente se puede encontrar aquí.
Antes de configurar un nodo validador, asegúrese de haber completado la guía Unirse a Mainnet.
Si planea usar un KMS (sistema de gestión de claves), deberá seguir estos pasos primero: Usar un KMS.
¿Qué es un Validador?
Los validadores son responsables de confirmar nuevos bloques en la blockchain a través de un proceso de votación automatizado. La participación de un validador puede ser reducida si no están disponibles o firman bloques en la misma altura. Dado que hay riesgo de reducción, sugerimos que lea sobre la Arquitectura de Nodo Centinela para proteger su nodo de ataques DDOS y garantizar alta disponibilidad.
Si desea convertirse en un validador de la 'mainnet' del Hub, debería aprender más sobre seguridad.
Las siguientes instrucciones asumen que ya ha configurado un nodo completo y está sincronizado al último bloque.
Cree su Validador
Su mpvalconspub
puede ser utilizado para crear un nuevo validador apostando tokens. Puede encontrar su llave pública de validador ejecutando:
crossfid tendermint show-validator
Para crear su validador, simplemente use el siguiente comando:
¡No use más mpx
del que tiene!
crossfid tx staking create-validator \
--amount=1000000000000000000mpx \
--pubkey=$(crossfid tendermint show-validator) \
--moniker="elija un apodo" \
--chain-id= \
--commission-rate="0.10" \
--commission-max-rate="0.20" \
--commission-max-change-rate="0.01" \
--min-self-delegation="1000000" \
--gas="auto" \
--gas-prices="10000000000000mpx" \
--gas-adjustment=1.5 \
--from=
Al especificar los parámetros de comisión, el commission-max-change-rate
se usa para medir el cambio de punto en el commission-rate
. Por ejemplo, de 1% a 2% es un aumento del 100%, pero solo un punto porcentual.
Min-self-delegation
es un entero estrictamente positivo que representa la cantidad mínima de poder de voto autodelegado que su validador debe tener siempre. Un min-self-delegation
de 1000000
significa que su validador nunca tendrá una autodelegación inferior a 1 MPX
.
Es posible que no tenga suficiente MPX para ser parte del conjunto activo de validadores al principio. Los usuarios pueden delegar a validadores inactivos (aquellos fuera del conjunto activo) usando la XFI Console. Puede confirmar que está en el conjunto de validadores usando un explorador de terceros como XFI Scan..
Editar la Descripción del Validador
Puede editar la descripción pública de su validador. Esta información es para identificar a su validador y será usada por delegadores para decidir a qué validadores apostar. Asegúrese de proporcionar entrada para cada bandera a continuación. Si una bandera no se incluye en el comando, el campo se establecerá en vacío (--moniker
predetermina al nombre de la máquina) si el campo nunca se ha configurado o permanece igual si se ha configurado en el pasado.
La \ especifica qué validador estás editando. Si elige no incluir algunas de las banderas a continuación, recuerde que la bandera --from debe incluirse para identificar el validador que se va a actualizar.
El --identity
se puede usar para verificar la identidad con sistemas como Keybase o UPort. Al usar Keybase, --identity
debe ser completado con una cadena de 16 dígitos generada con una cuenta de keybase.io. Es un método criptográficamente seguro para verificar su identidad en múltiples redes en línea. La API de Keybase nos permite recuperar su avatar de Keybase. Así es como puede agregar un logo al perfil de su validador.
crossfid tx staking edit-validator
--moniker="elija un apodo" \
--website="https://google.com" \
--identity=6A0D65E29A4CBC8E \
--details="¡Hacia el infinito y más allá!" \
--chain-id= \
--gas="auto" \
--gas-prices="10000000000000mpx" \
--gas-adjustment=1.5 \
--from= \
--commission-rate="0.10"
Advertencia Tenga en cuenta que algunos parámetros como commission-max-rate
y commission-max-change-rate
no se pueden cambiar una vez que su validador está funcionando.
Nota: El valor de commission-rate
debe adherirse a las siguientes reglas:
- Debe estar entre 0 y el
commission-max-rate
del validador - No debe exceder el
commission-max-change-rate
del validador, que es el cambio máximo de punto porcentual por día. En otras palabras, un validador solo puede cambiar su comisión una vez por día y dentro de los límites decommission-max-change-rate
.
Ver Descripción del Validador
Vea la información del validador con este comando:
crossfid query staking validator
Seguimiento de la Información de Firma del Validador
Para realizar un seguimiento de las firmas de un validador en el pasado puede hacerlo utilizando el comando signing-info
:
crossfid query slashing signing-info \
--chain-id=
Desbloquear Validador
Cuando un validador es encerrado por inactividad, debe enviar una transacción Unjail
desde la cuenta del operador para poder recibir nuevamente las recompensas del proponente del bloque (depende de la distribución de tarifas de la zona).
crossfid tx slashing unjail \
--from= \
--chain-id=
Confirme que su Validador está Funcionando
Su validador está activo si el siguiente comando devuelve algo:
crossfid query tendermint-validator-set | grep "$(crossfid tendermint show-address)"
Ahora debería ver su validador en uno de los exploradores de CrossFi Chain. Está buscando la dirección
codificada bech32
en el archivo ~/.crossfi/config/priv_validator.json
.
Detener su Validador
Al intentar realizar un mantenimiento rutinario o planificar una próxima actualización coordinada, puede ser útil detener su validador de forma sistemática y ordenada. Puede lograr esto configurando el halt-height
a la altura a la que quiera que su nodo se apague o pasando la bandera --halt-height
a crossfid
. El nodo se apagará con un código de salida cero a esa altura dada, después de confirmar el bloque.
Configuración Avanzada
Puede encontrar más información avanzada sobre la ejecución de un nodo o un validador en la documentación de Tendermint Core.
Problemas Comunes
Problema #1: Mi validador tiene voting_power: 0
Su validador ha sido encarcelado. Los validadores son encarcelados, es decir, eliminados del conjunto activo de validadores, si no votan en al menos 500
de los últimos 10,000
bloques, o si firman dos veces.
Si ha sido encarcelado por inactividad, puede recuperar su poder de voto para su validador. Primero, si no está utilizando Cosmovisor y crossfid
no está ejecutándose, inícielo de nuevo:
crossfid start
Espere a que su nodo completo se ponga al día con el último bloque. Luego, puede liberar a su validador.
Después de haber enviado la transacción de desbloqueo, compruebe su validador de nuevo para ver si su poder de voto ha regresado.
crossfid status
Puede notar que su poder de voto es menor de lo que solía ser. ¡Eso es porque recibió una reducción por inactividad!
Problema #2: Mi crossfid
se bloquea debido a demasiados archivos abiertos
El número predeterminado de archivos que Linux puede abrir (por proceso) es 1024
. Se sabe que crossfid
abre más de 1024
archivos. Esto causa que el proceso se bloquee. Una solución rápida es ejecutar ulimit -n 4096
(aumente el número de archivos abiertos permitidos) y luego reiniciar el proceso con crossfid start
. Si está usando systemd
u otro gestor de procesos para iniciar crossfid
(como Cosmovisor) esto puede requerir alguna configuración a ese nivel. Un archivo systemd
de ejemplo para solucionar este problema se muestra a continuación:
# /etc/systemd/system/crossfid.service
[Unit]
Description=CrossFi Chain Node
After=network.target
[Service]
Type=simple
User=ubuntu
WorkingDirectory=/home/ubuntu
ExecStart=/home/ubuntu/go/bin/crossfid start
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target