> For the complete documentation index, see [llms.txt](https://docs.endless.link/endless/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.endless.link/endless/devbuild/nodes/run-a-validator-and-vfn.md).

# Run a Validator and VFN

## Run a Validator and VFN

To participate in the Endless consensus protocol, you must deploy and run a validator node and (optionally) a validator fullnode (VFN). This document provides a high-level overview of the important steps required for deploying both node types.

{% hint style="info" %}
Operating VFNs While VFNs are not required to participate in consensus, it is highly recommended for every validator operator to run a VFN. This is because VFNs are the sole ingress and egress points of blockchain data for the ecosystem. Having many VFNs in the network helps to improve reliability, increase data availability, and provide high-quality blockchain access to the public.
{% endhint %}

Before initializing a staking pool or delegation pool, read about Staking and Delegated Staking to learn the differences between the stake pool types. Note that once a stake pool has been created, it cannot be changed to a delegation pool or vice versa. See also External Resources for tools and services offered by other node operators.

Use the documents within this section to run an Endless validator and a VFN. At a high-level, the process is as follows:

{% stepper %}
{% step %}
**Understand the requirements and deployment types.**

Read the node requirements and select a deployment method (e.g., on-premises or cloud services).
{% endstep %}

{% step %}
**Generate identities for your nodes.**

Create your public/private keypairs and account addresses for the validator and VFN.
{% endstep %}

{% step %}
**Configure your validator and VFN.**

Configure your nodes to use the generated keys and identities.
{% endstep %}

{% step %}
**Download genesis and a waypoint for your nodes.**

Bootstrap the nodes with a genesis and waypoint, and prepare them for startup.
{% endstep %}

{% step %}
**Join the validator set and start participating.**

Initialize the staking pool, join the validator set and start validating to earn rewards. Before other peers will accept connections from your nodes, you will need to join the validator set. To do this, you must initialize a staking pool and delegate to operators and voters. Once your staking pool has been setup, you can join the validator set. At this point your nodes will begin to sync with the network and your validator will be able to start participating in consensus. This is when you can start earning rewards.
{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.endless.link/endless/devbuild/nodes/run-a-validator-and-vfn.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
