Coder Social home page Coder Social logo

kotal's Introduction

Kotal Operator

Kotal operator is cloud agnostic blockchain deployer that make it easy to deploy highly available, self-managing, self-healing blockchain infrastructure (networks, nodes, storage clusters ...) on any cloud.

What can I do with Kotal Operator ?

  • Create ipfs storage cluster and swarms
  • Deploy highly available blokchain networks and nodes
  • Join public networks like Ethereum or Bitcoin Mainnet
  • Join test networks like Rinkeby, Ropsten or Goerli
  • Launch your own validator node
  • Launch your own baking node
  • Create and join private consortium networks

Kubernetes Custom Resources

Kotal extended kubernetes with custom resources in different API groups.

Resource Description API Group Status
Ethereum Create and join private and public ethereum networks ethereum.kotal.io/v1alpha1 alpha
Ethereum 2.0 Create validator and beacon chain nodes ethereum2.kotal.io/v1alpha1 coming soon ๐Ÿš€
IPFS Create and join ipfs storage cluster and swarms ipfs.kotal.io/v1alpha1 alpha

Example

Check config/samples directory for more examples

Network of a single node that will join and sync rinkeby blockchain:

apiVersion: ethereum.kotal.io/v1alpha1
kind: Network
metadata:
  name: my-network
spec:
  join: rinkeby
  nodes:
    - name: node-1
      rpc: true
      rpcAPI:
        - web3
        - net
        - eth

Requiremenets

  • Access to kubernetes cluster v1.11+
  • cert-manager v0.15+

Quick Start

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 --validate=false -f https://github.com/jetstack/cert-manager/releases/download/v0.16.0/cert-manager.yaml

Install kotal to the kind cluster.

make kind IMG=kotal/operator:0.1

This command will run the tests, build the docker image, load it into kind and deploy the operator.

Apply any of the examples in config/samples directory and watch magic happens ๐ŸŽฉ

kubectl apply -f config/samples/ipfs/ipfs_v1alpha1_swarm.yaml

this sample will create an ipfs storage swarm of 3 nodes.

Finally, tear down the cluster

kind delete cluster

Documentation

Kotal documentation is available here

Contact

Contriubuting

TODO

Licensing

TODO

kotal's People

Contributors

mfarghaly avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.