# Run validator

### Validator hardware requirements <a href="#validator-hardware-requirements" id="validator-hardware-requirements"></a>

* A VPS running the latest version of Mac OS X or Linux.
* Important 2T GB free disk space, Solid State Drive (SSD), gp3, 8k IOPS, 250MB/S throughput, read latency <1ms (NVMe SSD required if booting with snapshot/quick sync)
* 16-core CPU and 64 GB of memory (RAM)
* We recommend using the m5zn.3xlarge instance type on AWS, or c2-standard-16 on Google Cloud.
* Broadband Internet connection with upload/download speed of 10 megabytes per second

### Set up a validator <a href="#setting-up-validator-node" id="setting-up-validator-node"></a>

#### 1.Synchronize block information <a href="#id-1-install-bsc-fullnode" id="id-1-install-bsc-fullnode"></a>

Follow the instructions here to set up a full node.

#### Start the validator <a href="#id-2-start-validator-node" id="id-2-start-validator-node"></a>

！！！Warning Please do not expose your RPC endpoints to the public network.

```
## generate the consensus key and input the password
echo {your-password to the mining account} > password.txt
geth --datadir data \
--networkid 201022 \
--nodiscover \
--syncmode full \
--password password.txt \
--allow-insecure-unlock \
--unlock {the address of your mining account} \
--miner.gasprice 150000000000 \
--mine \
--miner.threads 1 \
--miner.gaslimit 80000000
```

#### Stop verification <a href="#id-4-stop-validating" id="id-4-stop-validating"></a>

You can stop mining new blocks by sending the command in the geth console

Connect to your validator using geth attach ipc:path/to/geth.ipc

```
miner.stop()
```

To resume verification,

```
miner.start()
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fonscan.io/develop/validator/run.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
