Book Image

Mastering Mesos

By : Dipa Dubhashi, Akhil Das
Book Image

Mastering Mesos

By: Dipa Dubhashi, Akhil Das

Overview of this book

Apache Mesos is open source cluster management software that provides efficient resource isolations and resource sharing distributed applications or frameworks. This book will take you on a journey to enhance your knowledge from amateur to master level, showing you how to improve the efficiency, management, and development of Mesos clusters. The architecture is quite complex and this book will explore the difficulties and complexities of working with Mesos. We begin by introducing Mesos, explaining its architecture and functionality. Next, we provide a comprehensive overview of Mesos features and advanced topics such as high availability, fault tolerance, scaling, and efficiency. Furthermore, you will learn to set up multi-node Mesos clusters on private and public clouds. We will also introduce several Mesos-based scheduling and management frameworks or applications to enable the easy deployment, discovery, load balancing, and failure handling of long-running services. Next, you will find out how a Mesos cluster can be easily set up and monitored using the standard deployment and configuration management tools. This advanced guide will show you how to deploy important big data processing frameworks such as Hadoop, Spark, and Storm on Mesos and big data storage frameworks such as Cassandra, Elasticsearch, and Kafka.
Table of Contents (16 chapters)
Mastering Mesos
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

Deploying and configuring a Mesos cluster using SaltStack


The SaltStack platform, or Salt, is a Python-based open source configuration management software and a remote execution engine. This module explains how we can use SaltStack to install a Mesos cluster with Marathon and a few other tools in production. SaltStack is an alternative to Puppet, Ansible, Chef, and others. As with the others, it is used to automate the deployment and configuration of software on multiple servers. The SaltStack architecture consists of one node as the SaltStack master and other nodes as the minions (slaves). There are also two different roles: one master role to perform cluster actions and a slave role to run the Docker containers.

The following packages will be installed for the role master:

  • ZooKeeper

  • The Mesos master

  • Marathon

  • Consul

The slave role will have the following packages installed:

  • The Mesos slave

  • Docker

  • cAdvisor (used to export metrics to prometheus)

  • Registrator (used to register services with Consul)

  • Weave...