Mesos

From Skytech
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.


Installing mesos-master

## Installing mesos ##
apt-key adv --keyserver keyserver.ubuntu.com --recv E56151BF
DISTRO=$(lsb_release -is | tr '[:upper:]' '[:lower:]')
CODENAME=$(lsb_release -cs)
echo "deb http://repos.mesosphere.com/${DISTRO} ${CODENAME} main" | tee /etc/apt/sources.list.d/mesosphere.list

## Need java8-runtime-headless to run marathon (jessie-backports)
echo "deb http://ftp.debian.org/debian jessie-backports main" | tee  /etc/apt/sources.list.d/backports.list
apt-get update
apt-get -y install mesos marathon chronos
 
## Zookeeper
Make sure zooker has been setup and is in quorum. Create new zkpool:
Login to zookeeper ( /usr/share/zookeeper/bin/zkCli.sh ) and create:
create /mesos mesos
Created /mesos
## Edit mesos to speak to zookeeper:
$ cat /etc/mesos/zk
zk://192.168.0.61:2181,192.168.0.62:2181,192.168.0.63:2181/mesos
 
## Edit master setup to enable quorom:
Change quorum requirements from 1 -> 2
$ cat /etc/mesos-master/QUORUM
2

## Restart mesos-service
systemctl restart mesos-master.service

Installing mesos-slave nodes

## Installing mesos ##
apt-key adv --keyserver keyserver.ubuntu.com --recv E56151BF
DISTRO=$(lsb_release -is | tr '[:upper:]' '[:lower:]')
CODENAME=$(lsb_release -cs)
echo "deb http://repos.mesosphere.com/${DISTRO} ${CODENAME} main" | tee /etc/apt/sources.list.d/mesosphere.list
## Setup mesos-slave with ip for hostname+ip ##
echo "192.168.0.61" > cat /etc/mesos-slave/ip
cat ip > /etc/mesos-slave/hostname

## Edit mesos to speak to zookeeper
$ cat /etc/mesos/zk
zk://192.168.0.61:2181,192.168.0.62:2181,192.168.0.63:2181/mesos
 
## Restart mesos-service
systemctl restart mesos-slave.service

Install marathon

## Marathon ##
mkdir -p /etc/marathon/conf
cp /etc/mesos-master/hostname /etc/marathon/conf
cp /etc/mesos/zk /etc/marathon/conf/master
## Copy master (zk) config into a zk file and change endpoint to zk:/...../marathon
cp /etc/marathon/conf/master /etc/marathon/conf/zk 
 
## Choose jdk8 instead of 7 or marathon will fail and die horribly
update-alternatives --config java
 
systemctl restart marathon.service

Installing other frameworks

Spark

Note: It is advisable to install hadoop or s3 first - either is required.

Hadoop

Mesos Links

Autoscaling mesos applications / frameworks

Howto

Various links

Mesos vs Hadoop (YARN)