GithubHelp home page GithubHelp logo

larskluge / docker-mesos Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yaronr/docker-mesos

0.0 1.0 0.0 120 KB

A distributed computing cluster-in-a-box: Mesos, zookeeper, chronos, marathon, storm + add your own. Use other physical computers to add computation power to the cluster.

License: GNU General Public License v3.0

Shell 3.50% ApacheConf 96.50%

docker-mesos's Introduction

docker-mesos

A distributed computing cluster-in-a-box: Mesos, zookeeper, chronos, marathon, storm + add your own.

Use other physical computers to add computational power to the cluster.

I decided to build this setup in order to be able to work with Mesos and its frameworks on a laptop.

The first setup that I found, that actually worked, was vagrant-mesos. However, I quickly realized that my laptop can't carry the weight of so many VMs.

Next, I searched for a Docker.io based setup (but couldn't find one): Docker offers a more elegant - and resource efficient approach, plus - it potentially offers a scenario where developers use the exact same setup in development and in production (Dev-Ops). That carries a lot of weight.

This work is inspired by storm-docker, the wonderful work of wurstmeiser - a clean and elegant Docker based Apache Storm setup.

The root of the project is this stackoverflow question, and the detailed response by Mark O`Connor (Thank you Mark!).

I decided to take this solution forward and share it with the community - hopefully getting other people to contribute. It's no rocket scinence, and a few tweaks here and there can make a big difference.

###Use:

  • Clone repository
  • ./build.sh
  • fig up

To open up the Mesos UI, open http://your docker host's IP:15050

To open up the Storm UI, open http://your docker host's IP:49080

Chronos UI: open http://your docker host's IP:14400

Marathon UI: open http://your docker host's IP:18080

If you're using boot2docker, to find out your docker host's IP, run
$> boot2docker ip

###Known issues & Workarounds:

  • Storm fails to run topologies. UI works, you can submit, but executors seem to die silently. Working on it, appreciate help if you have the time.
  • When using boot2docker versions older than 1.2 (on mac, probably other platforms as well), Chronos and / or Marathon fail, trying to increase the number of open file descriptors. This is solved in boot2docker 1.2 pull 166 so please do:
 boot2docker down
 boot2docker update
 boot2docker up

##TODO:

  • Centralized monitoring? Ganglia?
  • Centralized logging? Flume?
  • Process supervision for zookeeper?
  • drive mapping for logging
  • store images at hub.boot2docker.com + auto build

##PS

This is a work in progress, and I would appreciate individual contributions.

If you think you can fix any of the known issues, please do.

If you find an issue, please report!

If something is not clear, please ask.

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.