AVISO

Depósitos de minipool estão atualmente desabilitados em preparação para Saturn 1.

Criando um Novo Minipool (Validator)

Como lembrete, um minipool nos termos do Rocket Pool refere-se a uma instância única de contrato inteligente na Execution Layer que seu node gerencia. O minipool lida com uma porção do seu ETH, conhecida como valor de bond, e uma porção de ETH do pool de staking rETH, conhecida como valor emprestado. Ele mescla os dois para formar 32 ETH no total, que é então enviado ao contrato de depósito da Beacon Chain para criar um novo validator. Portanto, para criar um validator usando Rocket Pool, você precisa criar um minipool.

AVISO

A criação de minipool é governada por duas filas.

A primeira é a fila de depósito do Rocket Pool, que é gerenciada pelo protocolo Rocket Pool e determina quando seu minipool receberá seu ETH emprestado. É necessário haver ETH disponível no pool de depósito para combinar seus 8 ETH com 24 ETH no pool de depósito e criar o minipool.

A segunda é a fila da Beacon Chain, que é gerenciada pela Ethereum Beacon Chain e determina quando seu validator se tornará ativo.

Por favor, esteja ciente de que o tempo necessário para seu minipool se tornar ativo pode variar muito dependendo da sua posição em cada fila e do estado atual da rede.

NOTA

Os tempos de ativação (e saída) da fila de validator da Beacon Chain podem variar muito dependendo do estado atual da rede.

Isso está fora do controle do Rocket Pool e é uma função da própria Beacon Chain.

A seguinte ferramenta fornece uma boa estimativa de quanto tempo você pode esperar: https://www.validatorqueue.com/

Por favor, revise esta ferramenta para ter uma ideia de quanto tempo você pode esperar para que seu validator se torne ativo.

Fazendo Staking de RPL via Website

A maneira mais fácil e segura de fazer staking de RPL para seu node é usar o recurso Stake-on-Behalf do protocolo, que foi reintroduzido com o upgrade Atlas. Dessa forma, você pode fazer staking de RPL para seu node enquanto o RPL ainda está na carteira que você usou para adquiri-lo. Em outras palavras, você não precisa enviar RPL para a hot wallet do seu node para fazer staking.

Adicionando um endereço à whitelist para staking em nome de

Para fazer staking em nome do seu node, um endereço deve estar na whitelist. Seu endereço de retirada está sempre na whitelist, e você pode pular esta etapa se seu RPL for mantido pelo seu endereço de retirada. Você só precisa adicionar um endereço à whitelist uma vez para fazer staking a partir dele. Você pode fazer isso através do seguinte comando Smartnode:

rocketpool node add-address-to-stake-rpl-whitelist address-or-ens

Onde address-or-ens é o endereço ou nome ENS que resolve para o endereço desejado. Você será solicitado a confirmar a adição à whitelist e, após a transação ser confirmada, você pode navegar para a página relevante abaixo.

Fazendo staking de RPL em nome de

Selecione qual rede você está usando nas abas abaixo para ser levado a ela:

Comece conectando sua carteira ao website usando MetaMask, WalletConnect, ou qualquer um dos outros métodos que o website suporta. Você verá então este diálogo para procurar o endereço do seu node.

Digite o endereço do seu node e clique em "Lookup".

Certifique-se de ter o endereço correto do node antes de fazer isso! Se você precisar confirmar o endereço do seu node, você pode recuperá-lo rapidamente via CLI usando o comando rocketpool node status.

Isso verificará se o endereço é um node registrado e se o node adicionou a carteira conectada à whitelist. Endereços de retirada estão na whitelist por padrão, no entanto, se você deseja permitir outros endereços, precisará adicioná-los à whitelist através do seguinte comando no seu node.

rocketpool node add-address-to-stake-rpl-whitelist address-or-ens

Este é um processo de duas etapas.

Primeiro, digite a quantidade de RPL que você deseja fazer staking e clique em Approve - isso aprovará o contrato de staking para acessar essa quantidade de RPL na sua carteira, mas não mais do que essa quantidade.

DICA

Você pode aprovar mais do que a quantidade que pretende fazer staking se confiar no contrato de staking do Rocket Pool, e não quiser realizar esta transação extra de Aprovação cada vez que quiser fazer staking de mais RPL.

Uma vez que o RPL for aprovado, você poderá fazer staking em nome de um node.

Digite a quantidade de RPL que você deseja fazer staking na caixa Stake RPL, e digite o endereço do seu node na caixa on behalf of Node Address.

Quando você tiver inserido essas informações, pressione o botão Stake e aprove a transação.

Ela será enviada para a rede Ethereum e, uma vez incluída em um bloco, você está pronto!

Se você executar rocketpool node status, você deve ver seu RPL em staking aparecer na seção === RPL Stake ===.

Removendo um endereço da whitelist de staking

Se você quiser remover um endereço da sua whitelist de stake-on-behalf, você pode fazer isso com o seguinte comando Smartnode:

rocketpool node remove-address-from-stake-rpl-whitelist address-or-ens

Onde address-or-ens é o endereço ou nome ENS que resolve para o endereço que você deseja remover da whitelist.

Fazendo Staking via CLI do Node

Se você não pode (ou não quer) usar o website para fazer staking do seu RPL, você também pode fazê-lo via CLI do node diretamente.

Primeiro, transfira seu RPL da carteira com a qual você o adquiriu para o endereço do seu node.

AVISO

Por favor, faça isso cuidadosamente e certifique-se de estar enviando o RPL para o endereço do seu node - transferências no Ethereum não podem ser desfeitas! Enviar RPL para o endereço errado resultará na perda do seu RPL.

Use o comando rocketpool node status para verificar o endereço do seu node se você não tiver certeza de qual é.

Execute o seguinte comando:

rocketpool node stake-rpl

Aqui está a saída:

Please choose an amount of RPL to stake:
1: Your entire RPL balance (1440.000000 RPL)?
2: A custom amount

Selecione quanto você gostaria de fazer staking e confirme a operação.

A primeira vez que você executar este comando, envolverá duas transações - uma para aprovar o contrato de staking do Rocket Pool a acessar seu RPL, e uma para fazer staking do seu RPL com ele. Execuções subsequentes exigirão apenas a transação de staking, já que o token já foi aprovado.

Uma vez que ambas as transações terminem, você pode verificar sua quantidade de RPL em staking com rocketpool node status. A seguinte parte da saída é o que você quer verificar:

The node has a total stake of 300.000000 RPL.
This is currently 29.76% of its borrowed ETH and 89.29% of its bonded ETH.
It can earn max apy on up to 151.209677 RPL (15% of borrowed ETH), and still earn at lower APY with more RPL.

Isso mostrará quantos minipools você pode fazer de cada tamanho de bond com base no seu colateral RPL.

(Opcional) Encontrando um Endereço Personalizado de Vaidade para seu Minipool

Por padrão, quando você cria um novo minipool, o Rocket Pool gerará um endereço único aleatório para ele. No entanto, o Smartnode fornece a capacidade de procurar um endereço de vaidade personalizado para o minipool.

Um endereço de vaidade é aquele em que você pessoalmente escolhe os caracteres com os quais o endereço começa. Este é um exercício puramente cosmético e não terá nenhum impacto prático na operação do seu minipool. Como os endereços Ethereum são em hexadecimal, qualquer um dos seguintes caracteres é válido:

0 1 2 3 4 5 6 7 8 9 a b c d e f

Como alguns exemplos, você pode fazer o endereço do seu minipool começar com um monte de zeros (0x000000...), 0x600d (hex para "good") ou 0xa77e57ed (hex para "attested", um prefixo apropriado para um minipool).

Para encontrar tal endereço de vaidade, você precisará procurar por ele. Este processo de busca envolve escolher um número, aplicá-lo como um "salt" ao algoritmo de hashing e comparar os resultados com o que você está procurando. Os resultados são efetivamente aleatórios (embora qualquer salt dado sempre produza o mesmo resultado), então a única maneira de encontrar um endereço com o prefixo que você deseja é tentar muitos e muitos deles até encontrar um salt que funcione.

Se você gostaria de um endereço de vaidade personalizado para usar no seu minipool quando você criá-lo, você pode usar o seguinte comando para procurar um:

rocketpool minipool find-vanity-address

Isso solicitará o prefixo que você deseja procurar e perguntará qual tipo de depósito você fará (um depósito de 16 ETH ou de 32 ETH - veja abaixo para mais informações sobre esses tipos). Depois de inserir essas informações, ele começará a tentar muitos e muitos salts até encontrar um que produza seu prefixo desejado!

Aqui está um exemplo completo do processo:

$ rocketpool minipool find-vanity-address
Please specify the address prefix you would like to search for (must start with 0x):
0xa77e57
Running with 12 threads.
Found on thread 3: salt 0x5cd7fb = 0xA77E57c892C9e98B0B81289e4AfdA62fb59c5DDD
Finished in 1.91145873s

Neste caso, procuramos por 0xa77e57 como prefixo e encontramos o salt 0x5cd7fb que poderia gerá-lo. No próximo passo, quando criamos um minipool, podemos especificar este salt como um argumento opcional para criar o novo minipool no endereço associado ao salt (0xA77E57c892C9e98B0B81289e4AfdA62fb59c5DDD como mostrado acima).

Em geral, cada caractere adicional que você procurar multiplicará o tempo de busca por cerca de 16. Por causa disso, recomendamos que você procure apenas por prefixos de 7 ou 8 caracteres no máximo, a menos que você tenha uma máquina muito poderosa com muitos núcleos de CPU. Caso contrário, pode levar um tempo proibitivamente longo para encontrar um salt que produza o prefixo que você deseja.

Por exemplo, um AMD 5600x com 6 núcleos (12 threads) a 4.8 GHz pode pesquisar cerca de 3,2 milhões de salts por segundo. Em média, levará alguns segundos para encontrar um prefixo de 6 caracteres, alguns minutos para encontrar um prefixo de 7 caracteres e algumas horas para encontrar um prefixo de 8 caracteres.

NOTA

O salt que é gerado é específico para as seguintes variáveis:

  • A rede que você está usando (Hoodi Testnet ou Mainnet)
  • O endereço do node
  • O valor do bond
  • O salt

Se você alterar qualquer uma dessas variáveis, o endereço do minipool para um salt específico também mudará.

Para uso mais avançado (como procurar um endereço de node diferente ou alterar quantos núcleos de CPU são usados para pesquisa), dê uma olhada no texto de ajuda com rocketpool minipool find-vanity-address --help.

Depositando ETH e Criando um Minipool

DICA

Se o valor de mercado do rETH for maior que seu lastro em ETH (ou seja, rETH está com prêmio no mercado), há uma oportunidade de arbitrar a diferença ao criar um minipool. O valor da arbitragem é igual à quantidade de ETH do protocolo no minipool vezes o prêmio (menos uma pequena quantidade de gas). Por exemplo, se estiver fazendo um minipool quando há um prêmio de 2,5%: 16 ETH * .025 = 0.4 ETH. Em outras palavras, você pode receber 0,4 ETH de volta durante essas condições apenas por criar um minipool!

Se você está interessado em aproveitar esta oportunidade, considere usar a ferramenta desenvolvida pela comunidade rocketarb para capturar o lucro da oportunidade de arbitragem MEV rETH que o lançamento do seu minipool cria.

Para saber mais sobre rocketarb, sinta-se à vontade para perguntar sobre isso no servidor Discord RP.

Depois de tudo que você fez até agora, você está finalmente pronto para depositar seu ETH, criar um novo minipool e criar um validator da Beacon Chain. Isso é feito com o seguinte comando:

rocketpool node deposit
AVISO

Embora a CLI automatize muitas das próximas etapas para você, nós fortemente recomendamos monitorar seu node e transações para garantir uma transição bem-sucedida de prelaunch para staking.

Transações com falha (devido a configurações de gas ajustadas ou ETH insuficiente) podem fazer seu minipool transitar para o estado dissolved, o que você deseja evitar.

Saiba mais sobre como confirmar um staking bem-sucedido

NOTA

Se você quiser usar um salt para um endereço de vaidade que você encontrou usando o processo acima, execute o seguinte comando em vez disso:

rocketpool node deposit --salt <seu salt, por exemplo, 0x1234abcd>

Você verá primeiro uma nota de que depositar um novo minipool automaticamente distribuirá qualquer saldo no contrato fee distributor do seu node (usado para capturar recompensas MEV se você não estiver optado pelo Smoothing Pool):

Your eth2 client is on the correct network.
NOTE: by creating a new minipool, your node will automatically claim and distribute any balance you have in your fee distributor contract. If you don't want to claim your balance at this time, you should not create a new minipool.
Would you like to continue? [y/n]

Se você já tem minipools e um saldo no seu fee distributor, você pode decidir não criar outro minipool se distribuir este saldo causar um evento tributável na sua jurisdição.

Depois disso, você será notificado da sua taxa de comissão para o novo minipool e uma nota sobre se o saldo de crédito do seu node pode ser usado para cobrir o custo do bond do minipool para você:

Your minipool will use the current fixed commission rate of 5.00%.
If you participate in the smoothing pool, your minipool will receive at least a 5% commission boost, and up to a 9% commission boost based on RPL stake.
You currently have 8.00 ETH in your credit balance.
This deposit will use 8.000000 ETH from your credit balance and will not require any ETH from your node.

Você será solicitado em seguida com as recomendações de custos de gas atuais da rede; confirme sua seleção de preço de gas e siga o restante dos prompts.

Your consensus client is synced, you may safely create a minipool.
+============== Suggested Gas Prices ==============+
| Avg Wait Time |  Max Fee  |    Total Gas Cost    |
| 15 Seconds    | 15 gwei   | 0.0244 to 0.0366 ETH |
| 1 Minute      | 10 gwei   | 0.0157 to 0.0235 ETH |
| 3 Minutes     | 7 gwei    | 0.0100 to 0.0150 ETH |
| >10 Minutes   | 6 gwei    | 0.0080 to 0.0120 ETH |
+==================================================+
These prices include a maximum priority fee of 2.00 gwei.
Please enter your max fee (including the priority fee) or leave blank for the default of 10 gwei:
Using a max fee of 10.00 gwei and a priority fee of 2.00 gwei.
You are about to deposit 8.000000 ETH to create a minipool with a minimum possible commission rate of 14.000000%.
ARE YOU SURE YOU WANT TO DO THIS? Exiting this minipool and retrieving your capital cannot be done until:
- Your minipool has been *active* on the Beacon Chain for 256 epochs (approx. 27 hours)
- The Shapella upgrade of the Ethereum network has been deployed
- The Atlas upgrade of the Rocket Pool protocol has been deployed
- Your minipool has been upgraded to use the Atlas delegate
 [y/n]
y
Creating minipool...
Transaction has been submitted with hash <transaction hash>.
You may follow its progress by visiting:
<link to transaction>
Waiting for the transaction to be included in a block... you may wait here for it, or press CTRL+C to exit and return to the terminal.
The node deposit of 8.000000 ETH was made successfully!
Your new minipool's address is: <new minipool address>
The validator pubkey is: <new validator public key>
Your minipool is now in Initialized status.
Once the remaining ETH has been assigned to your minipool from the staking pool, it will move to Prelaunch status.
After that, it will move to Staking status once 1h0m0s have passed.
You can watch its progress using `rocketpool service logs node`.

Note que criar um minipool é uma transação cara! Preste muita atenção ao custo total e certifique-se de aceitá-lo.

Se você aceitar, a criação do seu minipool será acionada. Uma vez que a transação seja concluída, você receberá o endereço do seu novo contrato de minipool na Execution Layer e sua chave pública de validator correspondente na Beacon Chain. Você pode visitá-los com qualquer explorador de blocos, se desejar.

Confirmando um Staking Bem-Sucedido

Após a criação, seu minipool será colocado no estado initialized. Ele permanecerá aqui até que seja sua vez na fila do Rocket Pool para receber 24 ETH do pool de staking para que você possa fazer staking do seu novo validator na Beacon Chain.

Uma vez que isso aconteça, seu minipool passará para o estado prelaunch por um determinado período de tempo (atualmente 12 horas). Seu depósito de 8 ETH será transferido para a Beacon Chain, e o Oracle DAO verificará se está tudo correto. Durante esse tempo, você pode observar o validator procurando sua chave pública de validator com um explorador da Beacon Chain como https://beaconcha.in (ou https://hoodi.beaconcha.in para o Hoodi Testnet).

Você pode verificar o status do novo minipool com o comando rocketpool minipool status. Por exemplo, quando ele tiver passado para prelaunch, você provavelmente verá algo assim:

1 Prelaunch minipool(s):
--------------------
Address:              <your minipool address>
Penalties:             0
Status updated:        2024-10-31, 04:51 +0000 UTC
Node fee:              5.000000%
Node deposit:          8.000000 ETH
RP ETH assigned:       2024-10-31, 04:51 +0000 UTC
RP deposit:            24.000000 ETH
Minipool Balance (EL): 31.000000 ETH
Your portion:          7.000000 ETH
Available refund:      0.000000 ETH
Total EL rewards:      7.000000 ETH
Validator pubkey:      <your validator public key>
Validator index:       0
Validator seen:        no
Use latest delegate:   no
Delegate address:      <your delegate address>
Rollback delegate:     <none>
Effective delegate:    <your delegate address>
0 finalized minipool(s):

Após este período de prelaunch, seu minipool entrará no status staking e enviará o ETH adicional do pool de staking para o contrato de depósito. Isso será feito pelo contêiner Docker rocketpool_node (ou o serviço rp-node se você usou a configuração Native) - se, por algum motivo, você estiver levando um tempo anormalmente longo para entrar no status staking, olhar os logs deste contêiner/serviço provavelmente lhe dirá o que está errado. Você pode verificar esses logs com o comando rocketpool service logs node (ou /srv/rocketpool/node_log.sh em configurações de modo Native).

Executar rocketpool minipool status mostrará algo assim:

$ rocketpool minipool status
1 Staking minipool(s):
--------------------
Address:              <your validator address>
Penalties:             0
RP ETH assigned:       2024-10-31, 05:53 +0000 UTC
Node fee:              5.000000%
Node deposit:          8.000000 ETH
RP ETH assigned:       2024-10-31, 04:51 +0000 UTC
RP deposit:            24.000000 ETH
Minipool Balance (EL): 0.000000 ETH
Your portion:          0.000000 ETH
Available refund:      0.000000 ETH
Total EL rewards:      0.000000 ETH
Validator pubkey:     <your validator public key>
Validator index:      <your validator index number>
Validator active:     yes
Validator balance:    32.018460 ETH
Expected rewards:     16.010614 ETH
Use latest delegate:  no
Delegate address:     <your delegate address>
Rollback delegate:    <none>
Effective delegate:   <your delegate address>
0 finalized minipool(s):
NOTA

A transação para migrar de prelaunch para staking é submetida automaticamente pelo seu node e está sujeita às configurações de gas em rocketpool service config. Se as configurações de gas impedirem o node de submeter a transação, ou se houver ETH insuficiente na carteira do node para pagar pela transação, o minipool se tornará dissolved duas semanas após entrar em prelaunch. Se isso acontecer, recuperar o saldo é um processo caro e demorado, então certifique-se de monitorar seu minipool de perto até que ele atinja o status staking!

Uma vez que a Beacon Chain aceite ambos os depósitos (um seu e um do pool de staking), seu validator entrará na fila da Beacon Chain onde aguardará sua vez para ser ativado e começar a fazer staking.

Neste ponto, você terminou! Parabéns! Você criou oficialmente um validator com o Rocket Pool!

Dê uma olhada nas próximas seções em Monitoramento e Manutenção para aprender como observar o desempenho e a saúde do seu validator ao longo do tempo.

Criando Múltiplos Minipools

Convenientemente, seu node Rocket Pool é capaz de hospedar quantos minipools você quiser. Você não precisa criar um novo node para cada minipool.

Se você gostaria de fazer um segundo (ou terceiro, ou quarto...) minipool para seu node, tudo que você precisa fazer é executar rocketpool node deposit novamente. Além disso, você não poderá reutilizar um salt de endereço de vaidade antigo - você precisará procurar outro único para cada um dos seus minipools.

Próximos Passos

Agora que você tem um minipool funcionando, os próximos passos o guiarão sobre como monitorar a saúde do seu node, verificar e aplicar atualizações e mantê-lo ao longo de sua vida.

Por favor, leia a seção Monitoramento e Manutenção a seguir para aprender mais sobre esses tópicos.