All Projects → hyperledger → Cello

hyperledger / Cello

Licence: apache-2.0
Operating System for Enterprise Blockchain

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Cello

Iroha Android
Android library for Iroha, a Distributed Ledger Technology (blockchain) platform.
Stars: ✭ 108 (-84.9%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric Sdk Node
Hyperledger Fabric SDK for Node https://wiki.hyperledger.org/display/fabric
Stars: ✭ 676 (-5.45%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Composer Sample Applications
⚠️ ⚠️ ⚠️ Hyperledger Composer has been deprecated ⚠️ ⚠️ ⚠️
Stars: ✭ 110 (-84.62%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Iroha Javascript
JavaScript library for Iroha, a Distributed Ledger Technology (blockchain) platform.
Stars: ✭ 77 (-89.23%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Composer Sample Networks
⚠️ ⚠️ ⚠️ Hyperledger Composer has been deprecated ⚠️ ⚠️ ⚠️
Stars: ✭ 226 (-68.39%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Iroha Ios
iOS Swift library for Iroha, a simple distributed ledger
Stars: ✭ 81 (-88.67%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Composer
⚠️ ⚠️ ⚠️ Hyperledger Composer has been deprecated ⚠️ ⚠️ ⚠️
Stars: ✭ 1,676 (+134.41%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Blockchain Explorer
Stars: ✭ 984 (+37.62%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric Ca
Stars: ✭ 331 (-53.71%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Iroha
Iroha - A simple, enterprise-grade decentralized ledger
Stars: ✭ 210 (-70.63%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Composer Tools
⚠️ ⚠️ ⚠️ Hyperledger Composer has been deprecated ⚠️ ⚠️ ⚠️
Stars: ✭ 75 (-89.51%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Hyperledger
Hyperledger is a Collaborative Project at The Linux Foundation.
Stars: ✭ 3,653 (+410.91%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric Baseimage
Stars: ✭ 53 (-92.59%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric Chaintool
Stars: ✭ 89 (-87.55%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Iroha
Iroha - A simple, decentralized ledger
Stars: ✭ 1,015 (+41.96%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric Gateway Java
Hyperledger Fabric Gateway SDK for Java https://wiki.hyperledger.org/display/fabric
Stars: ✭ 122 (-82.94%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric Sdk Java
Stars: ✭ 982 (+37.34%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric
Hyperledger Fabric is an enterprise-grade permissioned distributed ledger framework for developing solutions and applications. Its modular and versatile design satisfies a broad range of industry use cases. It offers a unique approach to consensus that enables performance at scale while preserving privacy.
Stars: ✭ 12,911 (+1705.73%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric Sdk Py
Hyperledger Fabric Python SDK
Stars: ✭ 303 (-57.62%)
Mutual labels:  blockchain, hyperledger, distributed-ledger
Fabric Sdk Go
Stars: ✭ 712 (-0.42%)
Mutual labels:  blockchain, hyperledger, distributed-ledger

Cello

Build Status

Hyperledger Cello is a blockchain provision and operation system, which helps manage blockchain networks in an efficient way.

  1. Introduction
  2. Main Features
  3. Quick Start
  4. Documentation
  5. Why named cello?
  6. Notice

Introduction

Using Cello, everyone can easily:

  • Build up a Blockchain as a Service (BaaS) platform quickly from scratch.
  • Provision customizable Blockchains instantly, e.g., a Hyperledger fabric network v1.0.
  • Maintain a pool of running blockchain networks on top of baremetals, Virtual Clouds (e.g., virtual machines, vsphere Clouds), Container clusters (e.g., Docker, Swarm, Kubernetes).
  • Check the system status, adjust the chain numbers, scale resources... through dashboards.

A typical usage scenario is illustrated as:

Typical Scenario

Quick Start

Environmental preparation:

  1. docker how install
  2. docker-compose how install
  3. make all script for cello service management is written in Makefile
  4. kubernetes (optional) how install

If environment is prepared, then we can start cello service.

  • Build essential images for cello service (Optional, because currently the dockerhub image auto build haven't ready, in the future you can ignore this step.)
# make docker
  • config variables for service deployment through menuconfig/alldefconfig, then will generate .config file under the project folder.

if you want to use default configuration for service deployment, only need run alldefconfig.

# make alldefconfig

if you want to set the config through terminal ui, run menuconfig menuconfig.

# make menuconfig
  • Start cello service, default deployment method is using docker-compose, if you have kubernetes environment, you can change deployment method to kubernetes through DEPLOY_METHOD=k8s make start.
# make start

After service started up, if use docker-compose method, you can see output:

CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS
       NAMES
ddf938ed927e        hyperledger/cello-dashboard    "bash -c '/config-ng…"   2 days ago          Up 2 days           0.0.0.0:8081->80/tcp
       cello-dashboard
41ab47784b28        hyperledger/cello-api-engine   "/bin/sh -c 'bash /e…"   2 days ago          Up 2 days           0.0.0.0:8085->8080/tcp
       cello-api-engine
073a5f46276e        hyperledger/cello-api-engine   "bash -c 'celery -A …"   2 days ago          Up 2 days
       cello-api-engine-tasks
54d2c615d7d9        postgres:11.1                  "docker-entrypoint.s…"   2 days ago          Up 2 days           5432/tcp
       cello-postgres-server
1e0fc6386891        redis:4.0.13                   "docker-entrypoint.s…"   2 days ago          Up 2 days           6379/tcp
       cello-redis

If use kubernetes method to deploy, the output is:

NAME                                     READY   UP-TO-DATE   AVAILABLE   AGE
deployment.extensions/api-engine         1/1     1            1           7s
deployment.extensions/api-engine-tasks   1/1     1            1           7s
deployment.extensions/postgres           1/1     1            1           8s
deployment.extensions/redis              1/1     1            1           8s

NAME                                    READY   STATUS    RESTARTS   AGE
pod/api-engine-5844d7d9d4-zqw9k         1/1     Running   0          7s
pod/api-engine-tasks-74484d6f45-jj6p9   1/1     Running   0          7s
pod/postgres-774d5cd5f-p5j5l            1/1     Running   0          8s
pod/redis-6bf574b8c5-p2dnl              1/1     Running   0          7s

NAME                                    HOSTS   ADDRESS   PORTS   AGE
ingress.extensions/ingress-api-engine   *                 80      7s

If you visit the dashboard through 8081 port, the default username/password is admin/pass.

  • Stop cello service, same as start, need set the DEPLOY_METHOD variable.
# make stop

Main Features

  • Manage the lifecycle of blockchains, e.g., create/start/stop/delete/keep health automatically.
  • Support customized (e.g., size, consensus) blockchains request, currently we mainly support Hyperledger fabric.
  • Support native Docker host, swarm or Kubernetes as the worker nodes. More supports on the way.
  • Support heterogeneous architecture, e.g., X86, POWER and Z, from bare-metal servers to virtual machines.
  • Extend with monitor, log, health and analytics features by employing additional components.

Documentation, Getting Started and Develop Guideline

For new users, it is highly recommended to read the tutorial or index first.

And feel free to visit the online documentation for more information. You can also run make doc to start a local documentation website (Listen at localhost:8000.

Why named Cello?

Can you find anyone better at playing chains? :)

Incubation Notice

This project is a Hyperledger project in Incubation. It was proposed to the community and documented here, and was approved by Hyperledger TSC at 2017-01-07. Information on what Incubation entails can be found in the Hyperledger Project Lifecycle document.

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].