Skip to content

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

License

Notifications You must be signed in to change notification settings

taikoxyz/taiko-helm-charts

 
 

Repository files navigation

Taiko usage

This is a fork of ethereum-helm-charts, with additional Helm charts to easily compose parts of Taiko's stack. It is beta software. The available charts are:

  • taiko-client - Taiko's multi-purpose client. Can be run as a driver for a Taiko execution client, a proposer, a prover, or a guardian prover.
  • taiko-client-proposer - Umbrella chart for taiko-client in proposer mode.
  • taiko-client-prover - Umbrella chart for taiko-client in prover mode.
  • taiko-client-guardian - Umbrella chart for taiko-client in guardian mode.
  • taiko-geth - Taiko's execution client built on Geth.
  • taiko-node - An umbrella chart for a Taiko full node (taiko-client driver + taiko-geth).

Prerequisites

  • You have installed Helm.
  • You have Kubernetes running (k3s is recommended).

Setup the repo

Clone the repo and enter the charts directory:

git clone git@github.com:taikoxyz/taiko-helm-charts.git \
cd ./taiko-helm-charts/charts

Start an Ethereum node

  1. Configure ./ethereum-node/values.yaml.
  2. Start the Ethereum node: helm install <ethereum-node-release-name> ./ethereum-node.

Start a Taiko node

  1. Configure ./taiko-node/values.yaml.
  2. Start the Taiko node: helm install <taiko-node-release-name> ./taiko-node.

Start a Taiko proposer, prover, or guardian prover

You can find similar charts for running a Taiko proposer, prover, or guardian prover. Just configure the values.yaml to compose with the other Helm releases in your cluster.

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.
  • blutgang - The wd40 of ethereum load balancers.
  • 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.
  • dugtrio - Fault tolerant load balancer for beacon chain RPC apis.
  • 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.
  • rpc-snooper - A tool to snoop on RPC calls and log them to stdout.
  • 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

About

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

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Smarty 99.6%
  • Makefile 0.4%