Diennea engineering

Majordodo

A distributed resource manager

Majordodo is a replicated service to build complex multi-tenant computing grids. You can view it as a distributed threadpool where tasks are submitted by users and a network of brokers schedules execution on a large set of machines, caring about failures, recovery and priority-based resources assignment.

Tasks are implemented in Java and can be submitted and monitored using a simple HTTP REST JSON API.

Multi-tenancy

Majordodo manages resources for each tenant and guarantees resource access isolation and fair scheduling. Users’ execution priorities are dynamic and can be modified at runtime for each and every task, even ones that have already been submitted to the scheduler.

Resiliency

Majordodo leverages Apache Zookeeper and Apache Bookkeeper to build a fully replicated, shared-nothing, broker architecture without any single point of failure. Workers can be run on commodity-hardware, virtual machines or dynamically provisioned cloud resources which may fail at any time without service interruption.

Scalability

Majordodo is designed to manage tasks for thousands of hosts. It is simple to add and remove hosts and resources with dynamic reconfiguration and adaptive tasks scheduling.

Majordodo Release Summary

Majordodo 0.10.0 - April 2017

Majordodo 0.10.0 introduces Netty 4.1, OpenSsl and Native Epool on linux Release notes

Majordodo 0.9.0 - March 2017

Majordodo 0.9.0 introduces a per-user JVM hard limit of resource allocation Release notes

Majordodo 0.8.0 - January 2017

Majordodo 0.8.0 introduces the WebUI Release notes

Majordodo 0.7.0 - November 2016

Majordodo 0.7.0 introduces SASL/Kerberos authentication Release notes

Majordodo 0.6.0 - September 2016

Majordodo 0.6.0 introduces Custom Resources Release notes

Majordodo 0.5.0 - July 2016

Majordodo 0.5.0 is a bugfix release Release notes

Majordodo 0.4.0 - June 2016

Majordodo 0.4.0 update BookKeeper to 4.4.0 Release notes

Majordodo 0.3.0 - February 2016

Majordodo 0.3.0 is a bugfix release Release notes

Majordodo 0.2.0 - December 2015

Majordodo 0.2.0 introduces new utility class TaskSubmitter to serialize executors code Release notes

Majordodo 0.1.0 - November 2015

Majordodo 0.1.0 is first public release Release notes