Lista de verificação do validador

Esta lista de verificação o ajudará a entender o papel de um validador e o preparará para a função.Visite o EthStaker no Discord ou Reddit a qualquer momento durante a configuração para obter uma ajuda agradável!

Seção 1 - Antes de começar

Revise essa seção antes de continuar com a configuração do validador.

Aviso de isenção sobre recomendação

As sugestões de hardware são um objetivo em constante evolução. Os requisitos mínimos atuais provavelmente aumentarão em uma ordem de magnitude após a introdução do Danksharding. Faça sua própria pesquisa antes de depositar fundos.

Disco rígido

  • Você precisa executar um cliente de execução, bem como um cliente de consenso.
  • Desde a Fusão, os provedores de terceiros (como Infura e Alquimia) não são mais opções viáveis para externalizar responsabilidades de camadas de execução. Todos os participantes devem executar tanto um cliente consensual quanto um cliente de execução para atestar corretamente a rede.
  • A partir de fevereiro de 2025, só os dados da cadeia de execução da Mainnet se aproximarão de 2TB (crescendo em >1GB/dia). Um SSD de 2TB é um requisito mínimo, enquanto 4TB agora é recomendado.
  • O Ethereum nasceu no dia 30 de julho de 2015. Ele tem crescido ao longo do tempo e a introdução do Danksharding também aumentará os requisitos de armazenamento, memória e largura de banda.
  • Você precisará de armazenamento SSD para lidar consistentemente com as velocidades de leitura/gravação necessárias.
  • Certifique-se de reservar espaço suficiente na sua unidade até executar a manutenção no seu nó.

CPU e RAM

  • Normalmente, é necessário um mínimo de 32 GB de RAM, sendo recomendado 64 GB.
  • Verifique com a documentação do cliente para garantir que o hardware que você deseja usar é suficiente e suportado.
  • O uso de recursos pode variar significativamente entre os clientes. Pesquise os diferentes clientes se você estiver trabalhando com restrições de recursos.

Internet

  • Idealmente, sua conexão com a internet deve ser confiável e o mais próximo de ter uma conexão 24/7 sem interrupções.
  • Certifique-se de que sua largura de banda não possa ser restringida ou limitada para que seu nó permaneça sincronizado e esteja pronto para ser validado quando chamado.
  • Você também precisa de largura de banda de upload suficiente. A partir de maio de 2022, essa largura é de ~1.2-1.3 GB de download e ~0.9-1 GB de upload por hora, e é provável que ela aumente.

Observações

  • Evite instalações excessivamente complicadas e esteja ciente de operações comerciais. Ficar offline por curtos períodos de tempo resultará em pequenas penalidades de inatividade, mas será facilmente recuperado depois de permanecer online novamente por aproximadamente a mesma quantidade de tempo. Os backups compactados podem aumentar suas despesas de instalação e os validadores redundantes de backup podem levar a uma penalização mais séria conhecida como remoção. Mais sobre riscos de slashing
  • Sincronizar seu cliente de execução pode levar alguns dias no pior cenário.

Seção 2 - Durante a configuraçãoUse isso como referência durante a configuração do cliente para verificar etapas importantes.

Configuração inicial

  • Comece configurando o hardware e o sistema operacional escolhidos.
  • Para maximizar a segurança e eficiência do nó, use hardware dedicado para rodar seus clientes. Isso reduz o risco de exposição a malware e minimiza a competição por recursos de computação, o que garante que seu nó lide com a carga da rede e com as responsabilidades do validador a todo momento.

Segurança do nó

Cliente de execuçãoPorta padrão
Nethermind30303 TCP/UDP
Besu30303 TCP/UDP
Reth30303 TCP/UDP
Geth30303 TCP/UDP
Erigon30303 TCP/UDP
Cliente de ConsensoPorta padrão
Lodestar9000 TCP/UDP
Prysm13000 TCP, 12000 UDP
Teku9000 TCP/UDP
Nimbus9000 TCP/UDP
Lighthouse9000 TCP/UDP
Saiba mais sobre as portas na rede

Configurar sincronização de horário

Para Ubuntu 20.04
  • Execute o seguinte comando:
    timedatectl
  • Verifique se NTP Service é active.
  • Verifique se Local time, Time zone e Universal time estão corretos.
  • Se NTP Service não for active, execute:
    sudo timedatectl set-ntp on
  • Se você vir a mensagem de erro Failed to set ntp: NTP not supported, talvez precise instalar o pacote chrony ou ntp.
  • Nota: por padrão, as VMs podem desativar o NTP, então você pode precisar encontrar uma solução alternativa para o seu ambiente.
  • Nota: a hora RTC (tempo real) pode ser definida como o seu fuso horário local ao invés de UTC, especialmente em uma VM que tem seu relógio configurado no Windows.

Prática da testnet

Recomendamos fortemente que você conclua esses passos na rede de teste atual antes de fazê-lo na rede principal. Hoodi

Configure o seu cliente de execução

Examinar funções e responsabilidades do validador

Lembrete

Todos os participantes devem operar um cliente de execução com o seu cliente de consenso.

Recomendado

Discord: Nethermind | Besu | Reth | Geth | Erigon

Configure o seu cliente de consenso

Atenção!

É de alto risco executar o seu validador Eth2 em vários lugares. Isso levará a um evento passível de slashing e a expulsão da rede. Mais sobre riscos de slashing

Recomendado

Discord: Lodestar | Prysm | Teku | Nimbus | Lighthouse

Autenticação JWT

A comunicação entre a camada de execução e a camada de consenso ocorre usando a API Engine. Trata-se de um novo conjunto de métodos RPC JSON que podem ser usados para comunicação entre as duas camadas do cliente.Essa comunicação é protegida usando um segredo JWT, que é uma chave secreta compartilhada apenas entre os dois clientes para autenticar um ao outro. Esse segredo JWT deve ser disponibilizado para cada cliente (clientes de consenso e de execução) para permitir que eles se comuniquem corretamente entre si.Documentos JWT de consenso: Lighthouse | Lodestar | Nimbus | Prysm | TekuDocumentação de execução JWT: Besu | Erigon | Geth | Nethermind | Reth

Definir endereço de saque

Os participantes devem definir um endereço de saque para desbloquear os pagamentos de recompensa da camada de consenso. Isso é definido ao gerar suas chaves de validação.
Se você não fornecer um endereço de saque antes do depósito, você terá que realizar uma etapa adicional para atualizar suas chaves e permitir saques. Enquanto isso, os fundos serão bloqueados.
Mais sobre saques de stake

Definir o destinatário da taxa

Os participantes devem fornecer um endereço do destinatário das taxas para o cliente de consenso a fim de receber essas recompensas de taxa de transação, que deve ser um endereço Ethereum normal com o qual você está acostumado.
Se você não fornecer um endereço para seu cliente, não receberá taxas de transação quando seu validador propuser blocos.
Veja a documentação de cliente consensual para obter instruções específicas do cliente sobre como definir isso.Documentação do destinatário das taxas: Lighthouse | Lodestar | Nimbus | Prysm | Teku

Camada de consenso do Nó de Sinalizador (BN)

Obrigatório

  • Verifique com o seguinte comando para constatar se ele retorna a versão do cliente corretamente:
    curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' http://<YourServerLocation>:8545
  • Certifique-se de que o seu nó tenha mais de 20 pares.

Cliente validador da camada de consenso (VC)

Obrigatório

Seção 3 - Após o depósitoProteja seus fundos usando um software de monitoramento e aprenda a lidar com diferentes cenários do mundo real.

Estas etapas são opcionais, mas são recomendadas para otimizar seu nó.

Monitoramento

Monitor de Prometheus e Grafana

Os clientes oferecem suporte ao Prometheus e Grafana para ajudar você a visualizar métricas importantes em tempo real sobre o seu validador.Documentação de controle: Lighthouse | Lodestar | Nimbus | Prysm | Teku

Simulações de testnet

Enquanto você valida na rede de teste, execute estas simulações para aprender mais sobre seu nó e se preparar melhor para a rede principal:

Arquitetura avançada do sistema

  • Para evitar expor a identidade do seu validador na rede, use uma VPN de confiança que o ajudará a reduzir o risco de revelar seu endereço IP.
  • Adicionalmente, você pode definir seu Cliente Validador (VC) e Nó de Sinalizador (BN) em máquinas e IPs separados para que, mesmo que o seu nó de sinalizador esteja vulnerável, o seu keystore esteja armazenado em uma máquina diferente.

Grafite

Você pode usar a bandeira graffiti de cliente do seu validador para adicionar um toque pessoal aos blocos propostos (algum texto de sua escolha). Você poderá vê-lo usando os exploradores de blockchain Beaconcha.in ou BeaconScan.
Se você tiver dúvidas, a comunidade EthStaker é um bom lugar para obter ajuda! Você pode encontrar suporte em Discord ou Reddit.