/ethereum-helm-charts

A set of Helm charts to run multiple components of the Ethereum blockchain on Kubernetes.

Primary LanguageSmartyMIT LicenseMIT

Ethereum Helm Charts

Release Helm Charts Artifact Hub

A set of Helm charts to run multiple components of the Ethereum blockchain on Kubernetes.

Deployment examples that use these helm charts can be found under ethpandaops/ethereum-k8s-testnets.

Usage

Helm must be installed to use the charts. Please refer to Helm's documentation to get started.

Once Helm has been set up correctly, add the repo as follows:

helm repo add ethereum-helm-charts https://ethpandaops.github.io/ethereum-helm-charts

If you had already added this repo earlier, run helm repo update to retrieve the latest versions of the packages. You can then run the following command to see the charts.

helm search repo ethereum-helm-charts

To install the ethstats chart:

helm install ethstats ethereum-helm-charts/ethstats

To uninstall the chart:

helm delete ethstats

List of charts

Execution layer clients

Consensus layer clients

Generic

  • ethereum-node - Umbrella chart that uses the execution and consensus layer client charts.

Tooling

  • beacon-metrics-gazer - A prometheus exporter for Ethereum validator clients.
  • beaconchain-explorer - Beacon chain block explorer.
  • blob-me-baby - Send arbitary blob data in well-formatted blobs
  • blobscan-indexer - Blobscan-Indexer indexes blobs in MongoDB for use with Blobscan.
  • blobscan - Blobscan is the first blockchain explorer that helps to navigate and visualize those EIP-4844 blobs.
  • blockscout - Execution layer block explorer.
  • checkpointz - A beacon chain Checkpoint Sync provider.
  • consensus-monitor - Web UI to check your ethereum consensus layer nodes via their beacon APIs.
  • dora - Lightweight Beaconchain explorer.
  • dshackle - Fault tolerant load balancer for blockchain apis, including Ethereum RPC.
  • eleel - A multiplexer for Ethereum execution clients.
  • eth-faucet - Ether faucet server built with Go and Svelte.
  • eth2-fork-mon - Fork monitor for a configurable set of beacon nodes.
  • ethereum-address-metrics-exporter - A prometheus exporter for Ethereum externally owned account and contract addresses.
  • ethereum-metrics-exporter - A prometheus exporter for Ethereum execution and consensus clients.
  • ethereum-validator-metrics-exporter - A prometheus exporter for Ethereum validators.
  • ethstats - Web UI to track execution layer node status.
  • fauceth - EIP1559 compatible web faucet using Hcaptcha.
  • forkmon - Fork monitor for execution layer nodes.
  • ganache - Simulator for development and testing purposes of the execution layer.
  • genesis-generator - A tool to generate and expose genesis files for the execution and consensus layer clients.
  • ipfs-cluster - IPFS Cluster
  • powfaucet - Modularized faucet for EVM chains with different protection methods (Captcha, PoW Mining, IP Limits, Wallet Balances and more)
  • rpc-proxy - A proxy for web3 JSONRPC. Rate limiting and method filtering.
  • smart-contract-verifier-http - Smart contract verification service.
  • stubbies - Ethereum execution client stub for consensus layer clients.
  • testnet-faucet - Web faucet that can be used to distribute testnet ETH to users.
  • testnet-homepage - Simple website that can be used to display useful information about your testnet.
  • web3signer - An open-source remote signing service.
  • xatu-discovery - Ethereum p2p monitoring tool that discovers node records.
  • xatu-mimicry - Ethereum p2p monitoring tool that collects data from the execution layer.
  • xatu-sentry - Ethereum p2p monitoring tool that runs along side a Ethereum consensus client and collects data via the consensus client's Beacon API.
  • xatu-cannon - Ethereum data collection tool that runs along side a Ethereum consensus client and collects data via the consensus client's Beacon API.
  • xatu-server - Ethereum p2p monitoring tool that collects events from and controls various Xatu clients.

Development

Prerequisites

  • pre-commit - Used to setup pre-commit git hooks
  • docker - Used by many Makefile targets

Pre-commit hooks

This repository used pre-commit to manage and run certain git hooks. Hook definitions can be found within the .pre-commit-config.yaml file.

Run the following to add the hooks to your local repository:

make init

Useful commands

The README for every chart is auto generated using helm-docs. This is defined as a pre-commit hook. If you want to run it manually, you can run:

make docs

The CT (Chart Testing) tool is used to lint and validate charts. You can run this via:

make lint

License

MIT License