Kotal operator is a cloud agnostic blockchain deployer that makes it super easy to deploy highly-available, self-managing, self-healing blockchain infrastructure (networks, nodes, storage clusters ...) on any cloud.
- Deploy Bitcoin rpc nodes
- Deploy ipfs peers and cluster peers
- Deploy ipfs swarms
- Deploy Ethereum transaction and mining nodes
- Deploy Ethereum 2 beacon and validation nodes
- Deploy private Ethereum networks
- Deploy NEAR rpc, archive, and validator nodes
- Deploy Polkadot rpc and validator nodes
- Deploy Chainlink nodes
- Deploy Filecoin nodes
- Deploy Filecoin backed pinning services (FPS)
- Deploy Stacks rpc and api nodes
- Deploy Aptos full and validator nodes
Kotal extended kubernetes with custom resources in different API groups.
Protocol | Description | API Group | Status |
---|---|---|---|
Aptos | Deploy Aptos full and validator nodes | aptos.kotal.io/v1alpha1 | alpha |
Bitcoin | Deploy Bitcoin nodes | bitcoin.kotal.io/v1alpha1 | alpha |
Chainlink | Deploy Chainlink nodes | chainlink.kotal.io/v1alpha1 | alpha |
Ethereum | Deploy private and public network Ethereum nodes | ethereum.kotal.io/v1alpha1 | alpha |
Ethereum 2.0 | Deploy validator and beacon chain nodes | ethereum2.kotal.io/v1alpha1 | alpha |
Filecoin | Deploy Filecoin nodes | filecoin.kotal.io/v1alpha1 | alpha |
Graph | Deploy graph nodes | graph.kotal.io/v1alpha1 | alpha |
IPFS | Deploy IPFS peers, cluster peers, and swarms | ipfs.kotal.io/v1alpha1 | alpha |
NEAR | Deploy NEAR rpc, archive and validator nodes | near.kotal.io/v1alpha1 | alpha |
Polkadot | Deploy Polkadot nodes and validator nodes | polkadot.kotal.io/v1alpha1 | alpha |
Stacks | Deploy Stacks rpc and api nodes | stacks.kotal.io/v1alpha1 | alpha |
For each protocol, kotal supports at least 1 client (reference client):
Protocol | Client(s) |
---|---|
Aptos | Aptos Core |
Bitcoin | Bitcoin Core |
Chainlink | Chainlink |
Ethereum | Hyperledger Besu, Go-Ethereum, Nethermind |
Ethereum 2.0 | Teku, Prysm, Lighthouse, Nimbus |
Filecoin | Lotus |
Graph | graph-node |
IPFS | kubo, ipfs-cluster-service |
NEAR | nearcore |
Polkadot | Parity Polkadot |
Stacks | Stacks Node |
Kotal requires access to Kubernetes cluster with cert-manager installed.
For development purposes, we recommend KinD (Kubernetes in Docker) to create kubernetes clusters and tear down kubernetes clusters in seconds:
kind create cluster
After the cluster is up and running, install cert-manager:
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.5.3/cert-manager.yaml
Install kotal custom resources and controllers:
kubectl apply -f https://github.com/kotalco/kotal/releases/download/v0.1.0/kotal.yaml
Ethereum node using Hyperleger Besu client, joining goerli network, and enabling RPC HTTP server:
# ethereum-node.yaml
apiVersion: ethereum.kotal.io/v1alpha1
kind: Node
metadata:
name: ethereum-node
spec:
client: besu
network: goerli
rpc: true
kubectl apply -f ethereum-node.yaml
Kotal documentation is available here
TODO
Kotal Blockchain Kubernetes operator is free and open-source software licensed under the Apache 2.0 License