This repo contains a charon distributed validator cluster which you can run using docker-compose.
This repo aims to give users a feel for what a Distributed Validator Cluster means in practice, and what the future of high-availability, fault-tolerant proof of stake validating deployments will look like.
This repo runs on a single machine, with only one execution and consensus client, you do not have fault tolerance with this setup, and this is only for demonstration purposes only, and should not be used in a production context.
A distributed validator cluster is a docker-compose file with the following containers running:
- Single Nethermind execution layer client
- Single Lighthouse consensus layer client
- Six charon Distributed Validator clients
- Two Lighthouse Validator clients
- Two Teku Validator Clients
- Two Nimbus Validator Clients
- Prometheus, Grafana and Jaeger clients for monitoring this cluster.
In the future, this repo aims to contain compose files for every possible Execution, Beacon, and Validator client combinations that is possible with DVT.
You can view a quickstart guide for testing this repo out on our docs site.
See dvt.obol.tech for the latest status of the Obol Network including which upstream consensus clients and which downstream validators are supported.
Remember: Please make sure any existing validator has been shut down for at least 3 finalised epochs before starting the charon cluster, otherwise your validator could be slashed.
Check the docs for some common errors and how to fix them.