Skip to content

ObolNetwork/charon-distributed-validator-cluster

Repository files navigation

Obol Logo

Distributed Validator Cluster with Docker Compose

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.

Distributed Validator 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.

Quickstart

You can view a quickstart guide for testing this repo out on our docs site.

Project Status

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.

Troubleshooting

Check the docs for some common errors and how to fix them.