Learn Apache Mesos

Book description

Scale applications with high availability and optimized resource management across data centers

Key Features

  • Create clusters and perform scheduling, logging, and resource administration with Mesos
  • Explore practical examples of managing complex clusters at scale with real-world data
  • Write native Mesos frameworks with Python

Book Description

Apache Mesos is an open source cluster manager that provides efficient resource isolation and sharing across distributed applications or frameworks. This book will help you build a strong foundation of Mesos' capabilities along with practical examples to support the concepts explained throughout the book.

Learn Apache Mesos dives straight into how Mesos works. You will be introduced to the distributed system and its challenges and then learn how you can use Mesos and its framework to solve data problems. You will also gain a full understanding of Mesos' internal mechanisms and get equipped to use Mesos and develop applications. Furthermore, this book lets you explore all the steps required to create highly available clusters and build your own Mesos frameworks. You will also cover application deployment and monitoring.

By the end of this book, you will have learned how to use Mesos to make full use of machines and how to simplify data center maintenance.

What you will learn

  • Deploy and monitor a Mesos cluster
  • Set up servers on AWS to deploy Mesos components
  • Explore Mesos resource scheduling and the allocation module
  • Deploy Docker-based services and applications using Mesos Marathon
  • Configure and use SSL to protect crucial endpoints of your Mesos cluster
  • Debug and troubleshoot services and workloads on a Mesos cluster

Who this book is for

This book is for DevOps and data engineers and administrators who work with large data clusters. You'll also find this book useful if you have experience working with virtualization, databases, and platforms such as Hadoop and Spark. Some experience in database administration and design will help you get the most out of this book.

Table of contents

  1. Title Page
  2. Copyright and Credits
    1. Learn Apache Mesos
  3. Packt Upsell
    1. Why subscribe?
    2. Packt.com
  4. Contributors
    1. About the author
    2. Packt is searching for authors like you
  5. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
      1. Download the example code files
      2. Download the color images
      3. Conventions used
    4. Get in touch
      1. Reviews
  6. Deploying Apache Mesos on AWS
    1. Introduction to Apache Mesos
      1. Architecture of Mesos
    2. Introduction to Amazon Web Service (AWS)
      1. AWS environment
    3. Summary
  7. Setting up Mesos Single-Cluster Nodes
    1. Setup of servers on AWS
      1. Creating a VPC on AWS
      2. Creating subnets
      3. Creating a route table
      4. Creating EC2 instances
      5. Creating backup
    2. Adding a Mesosphere repository in CentOS
    3. Installing Docker Community Edition
    4. Configuring ZooKeeper
    5. ZooKeeper
    6. Installation of the Marathon framework
      1. Configuration of Marathon
    7. Mesos services
      1. Deploying the Marathon application
    8. Summary
  8. Installation of Mesosphere
    1. Outlining goals
    2. Setting up the framework
    3. Configuring the mesos-master servers
    4. Configuring Marathon
      1. High availability and resilience
    5. Adding slaves
    6. Mesos administration 
    7. Getting started
    8. Changing hostnames on CentOS
      1. Establishing communication
    9. Installing Mesos
    10. Installing ZooKeeper
    11. Installing Marathon
      1. Validating services
    12. Installing Docker
    13. Summary
  9. Apache Mesos Administration
    1. Scheduling and allocating resources
      1. Understanding resource scheduling
      2. Understanding resource allocation
      3. Modifying Mesos slave resources and attributes
      4. How to do it...
      5. How it works...
      6. How to do it...
    2. High availability
    3. Fault tolerance
    4. Configuration setup of Mesosphere
      1. Configuring ZooKeeper connection information for Mesos
      2. Configuring Mesos on the master server
      3. Configuring the hostname and IP address
      4. Configuring Marathon services
      5. Allowing inbound access to Mesos and Marathon console in AWS
    5. Summary
  10. Deploying Services on Mesos Cluster
    1. Deploying applications to clusters
      1. Setting up the Marathon
      2. MySQL database on AWS
    2. Setting up Marathon-lb
    3. Summary
  11. Persistent Volumes
    1. Introduction to persistent volumes
      1. Need for persistent volumes
    2. Volume persistent using Docker
    3. Summary
  12. Securing Mesos
    1. Enabling and configuring authentication
      1. Enabling authentication
      2. Choosing authenticators
      3. Creating a file with a principal secret
    2. Configuring agents
    3. Configuring Marathon
    4. Enabling secured socket layer security
      1. Generating marathon.jks file
      2. Adding marathon.jks file in configuration
    5. Summary
  13. Managing Resources in Mesos
    1. Marathon-LB
    2. Installing Marathon-LB
    3. Implementing the blue/green deployment with Marathon-LB
    4. Deploying an Apache web server
      1. Zero-downtime deployment (ZDD)
    5. What is Cassandra?
    6. Deploying of a Cassandra cluster
    7. Failover mechanism
    8. Summary
  14. Another Book You May Enjoy
    1. Leave a review - let other readers know what you think

Product information

  • Title: Learn Apache Mesos
  • Author(s): Manuj Aggarwal
  • Release date: October 2018
  • Publisher(s): Packt Publishing
  • ISBN: 9781789137385