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 clusterAfter the cluster is up and running, install cert-manager:
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.14.5/cert-manager.yamlInstall kotal custom resources and controllers:
kubectl apply -f https://github.com/kotalco/kotal/releases/download/v0.3.0/kotal.yamlEthereum 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: truekubectl apply -f ethereum-node.yamlKotal documentation is available here
TODO
Kotal Blockchain Kubernetes operator is free and open-source software licensed under the Apache 2.0 License