> ## Documentation Index
> Fetch the complete documentation index at: https://docs.monad.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# 验证者安装

设置验证者与设置全节点非常相似,只是多了一些额外步骤。

首先按照全节点安装[说明](/zh/node-ops/full-node-installation)配置节点。

当全节点完全运行并同步到网络的最新高度后,您可以通过在质押预编译上调用 [`addValidator`](/zh/reference/staking/api#addvalidator) 将您的节点注册为潜在的验证者。该函数需要传入至少 `MIN_VALIDATE_STAKE = 100_000 MON`(最低自质押)。

注册之后,您的验证者还必须满足以下条件,详细内容请参阅质押[文档](/zh/monad-arch/consensus/staking):

1. 总质押必须至少为 `ACTIVE_VALIDATOR_STAKE = 10_000_000 MON`
2. 必须按质押权重排名进入前 `ACTIVE_VALSET_SIZE = 200` 的验证者
3. 必须始终保持 `MIN_VALIDATE_STAKE = 100_000 MON` 的自质押

当以上三项条件全部达成后,该验证者将在下一个 epoch 进入激活状态。

## 质押 CLI

[`staking-sdk-cli`](https://github.com/monad-developers/staking-sdk-cli) 是一个开源的质押 CLI 工具,用于与质押预编译交互。请从[入职流程](https://github.com/monad-developers/staking-sdk-cli/blob/main/docs/validator-onboarding.md)开始。

## 配置 `node.toml`

按照全节点说明操作时,当您到达[这一节](/zh/node-ops/full-node-installation#get-configuration-files),您应已下载面向验证者的 `node.toml` 模板。

在该模板中,应配置以下内容:

1. (重要)审查 `beneficiary` 地址。该地址将接收区块奖励。
   ```toml theme={null}
   beneficiary = "0x<INSERT_BENEFICIARY_ADDRESS>"
   ```

2. (可选)- 从全节点过渡后仔细检查 `node_name` 是否合理(例如,移除任何 `full_` 前缀)。请选择一个唯一的标识符以避免混淆。

3. (可选)- 配置[专用](/zh/node-ops/full-node-block-delivery#dedicated-upstream)或[优先](/zh/node-ops/full-node-block-delivery#prioritized-secondary-raptorcast-inclusion)连接:

   * **专用全节点**
     ```toml theme={null}
     # Use the following to broadcast blocks to downstream full nodes
     # [[bootstrap.peers]]
     # address = "<ip>:<port>"
     # record_seq_num = "<record_seq_num>"
     # name_record_sig = "<name_record_sig>"
     # secp256k1_pubkey = "<full node pubkey>"
     # [[fullnode_dedicated.identities]]
     # secp256k1_pubkey = "<full node pubkey>"
     ```

   * **优先全节点**
     ```toml theme={null}
     # Use the following to broadcast blocks to downstream full nodes
     # [[bootstrap.peers]]
     # address = "<ip>:<port>"
     # record_seq_num = "<record_seq_num>"
     # name_record_sig = "<name_record_sig>"
     # secp256k1_pubkey = "<full node pubkey>"
     # [[fullnode_raptorcast.full_nodes_prioritized.identities]]
     # secp256k1_pubkey = "<full node pubkey>"
     ```

   若要在不重启 `monad-bft` 的情况下应用这些全节点配置更改,请运行以下命令:

   ```bash theme={null}
   monad-debug-node --control-panel-ipc-path /home/monad/monad-bft/controlpanel.sock reload-config
   ```
