Majordodo is a replicated service to build complex
multi-tentant computing grids.
Majordodo a distributed resource manager
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.
Majordodo manages resources for each tenant and guarantees resources 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.
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.
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.