Apache Mesos | Open Source Cluster Management Tool

Apache Mesos DevOps Tool

Self-hosted cluster management tool written in C++ language

Apache Mesos is a cluster management framework. It provides efficient resource isolation and sharing across distributed environments and application databases.

Overview

Apache Mesos is an open source cluster management tool and it provides efficient physical resource isolation across distributed environments or applications. It was originally developed at the University of California at Berkeley and quickly adopted by many leading technology companies like Twitter. It ensures high availability and has an easy to use GUI interface.

Mesos cluster manager can handle workloads and shares resources across distributed applications and environments. It can run applications like Kafka, Hadoop, Jenkins, Spark, and many other in a dynamically shared pool of nodes. It seamlessly integrates with Apache Spark and behaves as a kernel for the data center. Apache Mesos cluster management software is completely written in C++ language, often using functional programming patterns.

System Requirements

Following are system requirements to install the apache mesos container management platform on your linux machine:

  • GCC 4.8.1+ or Clang 3.5+
  • kernel >= 2.6.28
  • OpenJDK
  • wget, tar and git
  • Open firewall port 5050
  • Linux 64 Bit

Features

Some of the key features of apache mesos open source cluster management tool to manage big data infrastructures are listed:

  • A Web UI to monitor cluster state
  • Highly available and fault tolerance
  • Linear scalability to thousands of nodes
  • Isolation for tasks with Linux containers
  • Multiple resource scheduling model
  • REST API for easy integration applications development
  • Ability to share resources across many frameworks

Installation Instructions

Install Apache Mesos on Linux

For Linux operating system setup, please follow the below installions steps to install Apache Mesos multi cluster management installation setup. Run all the below commands but first update the packages by running:

    sudo apt-get update

Next, install tar wget git tools:

    sudo apt-get install -y tar wget git

Install the latest OpenJDK with:

    sudo apt-get install -y openjdk-8-jdk

Install autotools using:

    sudo apt-get install -y autoconf libtool

Now, install other Mesos dependency packages:

    sudo apt-get -y install build-essential python-dev python-six python-virtualenv libcurl4-nss-dev libsasl2-dev libsasl2-modules maven libapr1-dev libsvn-dev zlib1g-dev iputils-ping

There are different ways you can get Apache Mesos. Store these files in the /usr/share folder, which is available to all users. Download and unzip the latest stable release of Apache Mesos installation files:

    cd /usr/share/
    sudo mkdir mesos
    sudo wget https://downloads.apache.org/mesos/1.11.0/mesos-1.11.0.tar.gz
    sudo tar -zxf mesos-1.11.0.tar.gz
    cd /usr/share/mesos/mesos--1.11.0

Next, build the software using commands:

    sudo mkdir build
    cd build
    ../configure
    sudo make

Run and Install test suite with:

    sudo make check
    sudo make install

To run Mesos, first start the Mesos Master. Change into the build directory and start Mesos master:

    cd build 
    ./bin/mesos-master.sh –ip=127.0.0.1 –work_dir=/var/lib/mesos 

After starting the master, start the slave.

    ./bin/mesos-slave.sh –master=127.0.0.1:5050 –work_dir=/tmp/mesos

If facing permissions issues then run:

    ./bin/mesos-slave.sh –master=127.0.0.1:5050 –work_dir=/tmp/mesos –no-systemd_enable_support

Now Mesos is running. To monitor it please visit the Mesos in browser with:

    localhost:5050

To test your Apache Mesos installation, you can configure it with cluster computing framework, Apache Spark. Congratulations! You have successfully setup Apache Mesos on Linux. Enjoy!

FAQs

What is Apache Mesos used for?

Apache Mesos is an open source cluster manager that handles workloads in a distributed environment through dynamic resource sharing and isolation. Mesos is suited for the deployment and management of applications in large scale clustered environments.

Is Apache Mesos free?

Yes, Apache Mesos is free to use and download container management tool for container environments.

Is Apache Mesos open source?

Yes, Apache Mesos is open source container management software. Mesos source code repository is available at Github.

In what language is Mesos written?

Apache Mesos open source cluster manager is written in C++ programming language.

Who created Mesos?

Apache Mesos cluster management software was developed by Apache Software Foundation. What companies use Mesos? Mesos was adopted by Twitter, Apple, Yelp, Uber, Netflix, and many leading technology companies to support everything from microservices to elastic scaling.

Explore

In this article we discussed about Apache Mesos open source container management tool. To learn about other top open source container orchestration and management tools, please visit following page:

 English