If you're new to Mesos
See the getting started page for more information about downloading, building, and deploying Mesos.
If you'd like to get involved or you're looking for support
See our community page for more details.
Fundamentals
- Mesos Architecture providing an overview of Mesos concepts.
- Video and Slides of Mesos Presentations
- Academic Papers and Project History
- Mesos Release and Support Policy
Build / Installation
- Building for basic instructions on compiling and installing Mesos.
- Binary Packages for how to use Mesos binary packages.
- Configuration for build configuration options.
- CMake for details about using the new CMake build system.
- Windows Support for the state of Windows support in Mesos.
Administration
- Configuration for command-line arguments.
- High Availability Master Setup
- Replicated Log for information on the Mesos replicated log.
- Fault Tolerant Agent Setup
- Framework Rate Limiting
- Maintenance for performing maintenance on a Mesos cluster.
- Upgrades for upgrading a Mesos cluster.
- Downgrades for downgrading a Mesos cluster.
- Logging
- Monitoring / Metrics
- Debugging using the new CLI
- Operational Guide
- Fetcher Cache Configuration
- Fault Domains
- Performance Profiling for debugging performance issues in Mesos.
- Memory Profiling for debugging potential memory leaks in Mesos.
Resource Management
- Attributes and Resources for how to describe the agents that comprise a cluster.
- Using Resource Roles
- Resource Role Weights for fair sharing.
- Resource Role Quota for how to configure Mesos to provide guaranteed resource allocations for use by a role.
- Reservations for how operators and frameworks can reserve resources on individual agents for use by a role.
- Shared Resources for how to share persistent volumes between tasks managed by different executors on the same agent.
- Oversubscription for how to configure Mesos to take advantage of unused resources to launch “best-effort” tasks.
Security
- Authentication
- Authorization
- SSL
- Secrets for managing secrets within Mesos.
Containerization
- Containerizer Overview
- Containerizer Internals for implementation details of containerizers.
- Docker Containerizer for launching a Docker image as a Task, or as an Executor.
- Mesos Containerizer default containerizer, supports both Linux and POSIX systems.
- Container Images for supporting container images in Mesos containerizer.
- Docker Volume Support
- Nvidia GPU Support for how to run Mesos with Nvidia GPU support.
- Container Sandboxes
- Container Volumes
- Nested Container and Task Group (Pod)
- Standalone Containers
Networking
Storage
- Multiple Disks for how to allow tasks to use multiple isolated disk resources.
- Persistent Volume for how to allow tasks to access persistent storage resources.
- Container Storage Interface (CSI) Support
Scheduler and Executor Development
- Running Workloads in Mesos explains how a scheduler can specify and run tasks.
- Framework Development Guide describes how to build applications on top of Mesos.
- Guide for Designing Highly Available Mesos Frameworks
- Reconciliation for ensuring a framework’s state remains eventually consistent in the face of failures.
- Task State Reasons describes how task state reasons are used in Mesos.
- Task Health Checking
- v1 Scheduler HTTP API for communication between schedulers and the Mesos master.
- v1 Executor HTTP API describes the new HTTP API for communication between executors and the Mesos agent.
APIs
- HTTP Endpoints for available HTTP endpoints.
- API Client Libraries lists client libraries for the HTTP APIs.
- API Versioning describes HTTP API and release versioning.
- RecordIO describes the RecordIO format used by the streaming endpoints of the HTTP API.
- API References:
- v0 Java API
- v0 C++ API
- v1 Operator HTTP API for communication between operators and Mesos master/agent.
- v1 Scheduler HTTP API for communication between schedulers and the Mesos master.
- v1 Executor HTTP API describes the new HTTP API for communication between executors and the Mesos agent.
- Mesos Modules for specifying Mesos modules for master, agent and tests.
- Allocation Module for how to write custom resource allocators.
Community
- Getting Involved
- List of Mesos Users
- 3rd Party Frameworks
- 3rd Party Tools for developers and operators.
- Development Roadmap
- Design Docs list of design documents for various Mesos features.
- Working groups a listing of groups working on different components.
Contributing
- Reporting an Issue, Improvement, or Feature for getting started with JIRA.
- Beginner Guide for Contributors to get started contributing to Mesos for the first time.
- Advanced Contribution Guide to learn the typical workflow used when contributing to Mesos.
- Engineering Principles and Practices to serve as a shared set of project-level values for the community.
- Style Guides:
- Documentation Style Guide
- Developer Guide for best practices and patterns used in Mesos.
- C++ Style Guide
- Clang-Format for automatic formatting.
- Doxygen Style Guide
- Markdown Style Guide
- Testing Patterns for tips and tricks used in Mesos tests.
- C++ Doxygen Reference for internal APIs.
- Committers and Maintainers a listing of project committers and component maintainers; useful when seeking feedback.
- Committing guidelines for committing changes.
- Release Guide
- Committer Candidate Guidelines for becoming a committer.
- Effective Code Reviewing guidelines, tips, and learnings for how to do effective code reviews.
- Reopening a Review for our policy around reviving reviews on ReviewBoard.
Books on Mesos
Apache Mesos Cookbook by David Blomquist, Tomasz Janiszewski (Packt, August 2017)
Mesos in Action by Roger Ignazio (Manning, 2016)
Mastering Mesos by Dipa Dubhashi and Akhil Das (Packt, 2016)
Apache Mesos Essentials by Dharmesh Kakadia (Packt, 2015)
Building Applications on Mesos by David Greenberg (O'Reilly, 2015)