Code Monkey home page Code Monkey logo

kelda's Introduction

Build Status Go Report Card Code Coverage

Kelda

Formerly known as Quilt.

Deploying applications to the cloud can be painful. Booting virtual machines, configuring networks, and setting up databases, requires massive amounts of specialized knowledge — knowledge that’s scattered across documentation, blog posts, tutorials, and source code.

Kelda, formerly Quilt, aims to make sharing this knowledge simple by encoding it in JavaScript. Just as developers package, share, and reuse application code, Kelda’s JavaScript framework makes it possible to package, share, and reuse the knowledge necessary to run applications in the cloud.

To take this knowledge into production, simply kelda run the JavaScript blueprint of your application. Kelda will set up virtual machines, configure a secure network, install containers, and whatever else is needed to get up and running smoothly on your favorite cloud provider.

Kelda is currently in beta.

Deploy Quickly on...

providers

Install

Install Kelda with npm:

$ npm install -g @kelda/install

Check out more in our Quick Start tutorial.

API

Run any container.

let web = new Container('web', 'someNodejsImage');

Load balance traffic.

let webContainers = [];
for (i = 0; i < 3; i += 1) {
  webContainers.push(new Container('web', 'someNodejsImage'));
}
let webLoadBalancer = new LoadBalancer('web-lb', webContainers); // A load balancer over 3 containers.

Share and import blueprints via npm.

const Redis = require('@kelda/redis');
let redis = new Redis(2, 'AUTH_PASSWORD'); // 2 Redis database replicas.

Set up a secure network.

allow(publicInternet, webContainers, 80); // Open the webservers' port 80 to the public internet.
redis.allowFrom(webContainers); // Let the web app communicate with Redis.

Deploy VMs on any supported cloud provider.

let vm = new Machine({
  provider: 'Amazon',
  size: 't2.micro'
});

For more examples, have a look at the blueprints in the blueprint library and check out our docs.

Kelda CLI

# Deploy your application.
$ kelda run ./someBlueprint.js

# SSH into VMs and containers.
$ kelda ssh <ID>

# Check the status of your deployment.
$ kelda show

This is just a small sample of the Kelda CLI. Check out more handy commands for managing your deployment.

Get Started

We would love to hear if you have any questions, suggestions, or other comments!

kelda's People

Contributors

akashgangil avatar akshayknarayan avatar baisang avatar ejj avatar hongjianzhang avatar kaitokid avatar kayousterhout avatar kklin avatar luise avatar melvinw avatar mmussomele avatar mmzhao avatar nlsun avatar oyyblin avatar penguintoast avatar shwang avatar stevenlin1111 avatar tejasmanohar avatar timanglade avatar venkatramachandran avatar vivi avatar wanyuenmei avatar

Watchers

 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.