GithubHelp home page GithubHelp logo

dantegpt / disco Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ovrclk/disco

0.0 0.0 0.0 1.04 MB

decentralized infrastructure for serverless computing operations

Home Page: https://disco.akash.network

License: Apache License 2.0

Shell 12.76% Makefile 60.23% Smarty 5.16% HCL 21.85%

disco's Introduction

Note: This project is a work in progress, expect dragons. Join our Matrix room if you're interesting in deploying DISCO for production.

Disco

DISCO

Decentralized Infrastructure for Serverless Computing Operations (DISCO) is a secure, scalable, standardized software stack for developing, delivering, and debugging decentralized networks.

Check out this announcement post about DISCO.

Getting Started

If you would like to get started using DISCO with some defaults (Packet for servers, Cloudflare for routing), check out our Getting Started guide!

The Disco Way

DISCO is a methodology and a framework for deploying modern, scalable and secure services.

  • Composable: Infrastructure components should be simple to compose. Each service should be functional in design, meaning a well-defined set of inputs and outputs. Services should use declarative formats for setup automation, to minimize time and cost for service operators deploying the project.
  • Configurable: All configuration variables should be explicitly declared and should be set using operating systems standards (such as Environment variables). Each variable should be well documented.
  • Explicit Dependencies: Dependencies should be explicitly declared and isolated. Services should never rely on the implicit existence of system-wide packages.
  • Hackable: Use commonly available scripting frameworks (such as Make) to allow operators to easily make changes. DISCO is entirely made with make.

Features

DISCO’s secure, scalable and modular design offers below features:

  • Kubernetes on Baremetal: Plug-and-Play Kubernetes with k3s and k3sup on Bare Metal Servers with support of Packet (Join our chat if you’d like us to hook you up with a key).
  • Secure Configuration Store: DISCO offers configuration DB built on Keybase, an end-to-end encrypted private git repository to securely collaborate with team members and simplify automation.
  • Observability: DISCO offers observability with Industry-standard cloud-native toolsets such as Prometheus and Graphana.

Demo

asciicast

Get Started

To get started, check out setup guide

Motivation

A notable majority of blockchain nodes are deployed on three providers (Amazon, Google, and Microsoft) -- contrary to their values of decentralization. Over 60% of the Ethereum nodes run on Amazon alone.

Our priority at Akash is to help the broader community retain core values without compromising convenience by offering them a platform that's far richer than the cloud providers.

Layers and Components

  • Layer 0: Bare metal servers on Packet, provisioned using Terraform.
  • Layer 1: Kubernetes Cluster with Helm, and Container Storage Interfaces (CSI).
  • Layer 2: Observabilty (Prometheus and Graphana) and Key Management (Vault).
  • Layer 3: Akash Suite.
  • Layer 4: Services (Blockchains such as Cosmos Hub and NuCypher)
  • Sanity Check: Cluster readiness checks for Akash.

Contributing and Roadmap

Below is a high-level roadmap planned, checkout Akash Roadmap for current progress on the Roadmap. If you’d like to contribute, please check out our contributing guide.

Core

  • SGX Services: SGX wrappers for Vault, Tendermint, and others. Possibly, generic container wrappers.
  • Kata Containers: Kata Containers are a secure container runtime with lightweight virtual machines that feel and perform like containers, but provide stronger workload isolation using hardware virtualization technology as a second layer of defense.
  • GitHub Actions: Integration for CI/CD workflow automation using GitHub actions.

Services

  • Cosmos Hub: Support for deploying Gaia Full node and validators.
  • Interledger Connectors: Interledger is an open protocol suite for sending payments across different ledgers. Support for deploying Interledger Connectors.
  • NuCypher: NyCypher provides cryptographic infrastructure for privacy-preserving applications.
  • Your Blockchain?: If you would like to add your blockchain, get in touch.

About the Author

In the past ten years, my focus has been designing, building and managing distributed systems that scale to millions of individuals across the globe. From designing Kaiser’s first cloud platform in 2010 (long before the term “cloud” was coined) to deploying planetary-scale infrastructure at various hyper-growth technology companies in silicon valley.

I created the Akash Network to help bring that expertise to the masses. Prior to Akash, I co-founded AngelHack, the world’s largest hackathon organization with over 100,000 developers across 50 cities worldwide and helped launch several developer companies including Firebase (acquired by Google).

I've been deeply involved with the cloud-native revolution from its nascency as an active open source contributor and have authored libraries adopted by widely adopted organizations such as Ubuntu, HashiCorp, and Kubernetes.

disco's People

Contributors

gosuri avatar jackzampolin avatar troian 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.