mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory...

114
Benjamin Hindman – @benh Mesos for Spark Users mesos.apache.org @ApacheMesos

Upload: others

Post on 04-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Benjamin  Hindman    –  @benh  

Mesos  for  Spark  Users  mesos.apache.org  

@ApacheMesos  

Page 2: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

agenda  ① Mesos  

② Spark  on  Mesos  

③ why  Mesos?  ①  multi-­‐tenancy  ②  fine-­‐grained  sharing  ③  why  not?  

④  long-­‐lived  services  and  other  frameworks  

Page 3: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

a  little  history  Mesos  started  as  a  research  project  at  Berkeley  in  early  2009  by  Benjamin  Hindman,  Andy  Konwinski,  Matei  Zaharia,  Ali  Ghodsi,  Anthony  D.  Joseph,  Randy  Katz,  Scott  Shenker,  Ion  Stoica  

Page 4: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

our  motivation  

increase  performance  and  utilization  of  

clusters  

Page 5: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

our  intuition  

①  static  partitioning  considered  harmful  

Page 6: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

static  partitioning  considered  harmful  

datacenter  

Page 7: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

static  partitioning  considered  harmful  

Page 8: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

static  partitioning  considered  harmful  

Page 9: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

static  partitioning  considered  harmful  

Page 10: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

static  partitioning  considered  harmful  

faster!  

Page 11: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

higher  utilization!  

static  partitioning  considered  harmful  

Page 12: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

our  intuition  

②  build  new  frameworks  

Page 13: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

"Map/Reduce  is  a  big  hammer,  but  not  everything  is  a  nail!"  

Page 14: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

anatomy  of  Spark  

Driver  Program  

Spark  Context  

Worker  Node  

Executor   Cache  

Task   Task  

Worker  Node  

Executor   Cache  

Task   Task  

Page 15: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

workers  

anatomy  of  a  framework  

coordinator  

Page 16: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

framework  ≈  

distributed  system  

Page 17: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

workers  

anatomy  of  a  framework  

coordinator  

Page 18: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

tasks  (and/or  executors)  

anatomy  of  a  framework  

scheduler  

Page 19: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

execution  coordination  ==  

scheduling  

Page 20: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

tasks  (and/or  executors)  

Mesos:  level  of  indirection  

scheduler  

Page 21: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos  (slaves)  

Mesos:  level  of  indirection  

scheduler  

Mesos  (master)  

Page 22: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos:  a  level  of  indirection  +  provide  common  functionality  every  new  distributed  system  re-­‐implements  like  failure  detection,  task  distribution,  task  starting,  task  monitoring,  task  killing,  task  cleanup!  

Page 23: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos  (slaves)  

Mesos:  level  of  abstraction  

scheduler  

Mesos  (master)  

Page 24: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos:  level  of  abstraction  

Mesos  build  and  run  frameworks  

using  resources  

Page 25: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos:  level  of  abstraction  

IaaS  

Mesos  

provision  and  manage  machines  

build  and  run  frameworks  

using  resources  

Page 26: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos:  level  of  abstraction  

PaaS  

IaaS  

Mesos  

deploy  and  manage  applications/services  

provision  and  manage  machines  

build  and  run  frameworks  

using  resources  

Page 27: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

PaaS  on  Mesos  

PaaS  

Mesos  

build  and  run  a  PaaS  on  top  of  Mesos:  

Apache  Aurora  and  Marathon  

Page 28: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos  on  IaaS  

IaaS  

Mesos  

use  OpenStack  or  EC2  to  run  Mesos  

Page 29: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos  on  IaaS++  

IaaS  

Mesos  

hardware  use  OpenStack  or  EC2  or  physical  machines  

to  run  Mesos  

Page 30: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos:  datacenter  kernel  

IaaS  

Mesos  

hardware  

provide  common  functionality  via  an  API  (kernel)  

framework  

Page 31: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Apache  Mesos  is  a  distributed  system  for  running  and  building  other  distributed  systems  

Page 32: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos  is  a  cluster  manager  

Page 33: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

agenda  ① Mesos  

② Spark  on  Mesos  

③ why  Mesos?  ①  multi-­‐tenancy  ②  fine-­‐grained  sharing  ③  why  not?  

④  long-­‐lived  services  and  other  frameworks  

Page 34: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

anatomy  of  Spark  

Driver  Program  

Spark  Context  

Worker  Node  

Executor   Cache  

Task   Task  

Worker  Node  

Executor   Cache  

Task   Task  

Page 35: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

anatomy  of  Spark  

Driver  Program  

Spark  Context  

Worker  Node  

Executor   Cache  

Task   Task  

Worker  Node  

Executor   Cache  

Task   Task  

Cluster  Manager  

Page 36: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

anatomy  of  Spark  

Driver  Program  

Spark  Context  

Worker  Node  

Executor   Cache  

Task   Task  

Worker  Node  

Executor   Cache  

Task   Task  

Mesos  

Page 37: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos  is  a  distributed  system  with  a  master/slave  architecture  

masters  

slaves  

Page 38: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos  challenged  the  status  quo  of  cluster  managers  

Page 39: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

cluster  manager  status  quo  

cluster  manager  

application  

specification  

the  specification  includes  as  much  information  as  possible  to  assist  the  cluster  manager  in  scheduling  and  execution  

Page 40: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

cluster  manager  status  quo  

cluster  manager  

application  wait  for  task  

to  be  executed  

Page 41: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

cluster  manager  status  quo  

cluster  manager  

application  

result  

Page 42: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

problems  with  specifications  

① hard  to  specify  certain  desires  or  constraints  

② hard  to  update  specifications  dynamically  as  tasks  executed  and  finished/failed  

Page 43: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

an  alternative  model  

masters  

framework  

request  3  CPUs  2  GB  RAM  

a  request  is  purposely  simplified  subset  of  a  specification,  mainly  including  the  required  resources  

Page 44: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

question:  what  should  you  do  if  you  can’t  satisfy  a  request?  

Page 45: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

question:  what  should  you  do  if  you  can’t  satisfy  a  request?  

①     wait  until  you  can  …  

Page 46: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

question:  what  should  you  do  if  you  can’t  satisfy  a  request?  

①     wait  until  you  can  …  

②     offer  best  you  can  immediately  

Page 47: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

question:  what  should  you  do  if  you  can’t  satisfy  a  request?  

①     wait  until  you  can  …  

②     offer  best  you  can  immediately  

Page 48: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Mesos  model  

masters  

framework  

offer  hostname  4  CPUs  4  GB  RAM  

Page 49: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

offer  hostname  4  CPUs  4  GB  RAM  

offer  hostname  4  CPUs  4  GB  RAM  

offer  hostname  4  CPUs  4  GB  RAM  

Mesos  model  

masters  

framework  

offer  hostname  4  CPUs  4  GB  RAM  

Page 50: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

an  analogue:  non-­‐blocking  sockets  

kernel  

application  

write(s, buffer, size);!

Page 51: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

an  analogue:  non-­‐blocking  sockets  

kernel  

application  

42 of 100 bytes written!!

Page 52: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

offers  represent  the  current  snapshot  of  available  resources  a  framework  can  use  

Page 53: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

(requests  are  complimentary,  but  not  necessary;  see  Google’s  Omega)  

Page 54: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

Driver  Program  

Spark  Context  

Spark  on  Mesos  

Page 55: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

offer  hostname  4  CPUs  4  GB  RAM  

Driver  Program  

Spark  Context  

Spark  on  Mesos  

Page 56: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

offer  hostname  4  CPUs  4  GB  RAM  

offer  hostname  4  CPUs  4  GB  RAM  

offer  hostname  4  CPUs  4  GB  RAM  

masters  

offer  hostname  4  CPUs  4  GB  RAM  

Driver  Program  

Spark  Context  

Spark  on  Mesos  

Page 57: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

Spark  uses  the  offers  to  perform  it’s  own  scheduling  

offer  hostname  4  CPUs  4  GB  RAM  

offer  hostname  4  CPUs  4  GB  RAM  

offer  hostname  4  CPUs  4  GB  RAM  

offer  hostname  4  CPUs  4  GB  RAM  

Driver  Program  

Spark  Context  

Spark  on  Mesos  

Page 58: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

task  3  CPUs  2  GB  RAM  

Driver  Program  

Spark  Context  

Spark  uses  the  offers  to  perform  it’s  own  scheduling  

Spark  on  Mesos  

Page 59: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

task  3  CPUs  2  GB  RAM  

Driver  Program  

Spark  Context  

Spark  uses  the  offers  to  perform  it’s  own  scheduling  

“two-­‐level  scheduling”  

Spark  on  Mesos  

Page 60: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

“two-­‐level  scheduling”  Mesos:  controls  resource  allocations  to  Spark  

Spark:  makes  decisions  about  what  tasks  to  run  given  available  resources  

Page 61: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

framework  

task  1  CPUs  1  GB  RAM  

frameworks  launch  fine-­‐grained  tasks  for  execution  

execution  

Page 62: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

framework  

task  +  executor  3  CPUs  3  GB  RAM  

frameworks  launch  fine-­‐grained  tasks  for  execution  

if  necessary,  a  framework  can  provide  an  executor  to  handle  the  execution  of  a  task  

execution  

Page 63: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  a  command  

mesos-slave!

Page 64: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  a  command  

mesos-slave!

task!

Page 65: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  a  command  

mesos-slave!

task! task!

Page 66: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  an  executor  

mesos-slave!

Page 67: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  an  executor  

mesos-slave!

executor!

Page 68: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  an  executor  

mesos-slave!

executor!

task!

Page 69: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  an  executor  

mesos-slave!

executor!

task! task!

Page 70: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  an  executor  

mesos-slave!

executor!

Page 71: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

a  task  with  an  executor  

mesos-slave!

executor!

task! task!

task!

Page 72: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Spark  execution  

masters  

task  +  executor  1  CPUs  3  GB  RAM  

Driver  Program  

Spark  Context  

Page 73: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

Spark  execution  

mesos-slave!

Page 74: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

Spark  execution  

mesos-slave!

Executor   Cache  

Page 75: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

Spark  execution  

mesos-slave!

Executor   Cache  

Task  

Page 76: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

Spark  execution  

mesos-slave!

Executor   Cache  

Task   Task  

Page 77: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

Spark  execution  

mesos-slave!

Executor   Cache  

Task   Task  

Executor   Cache  

Task  

Page 78: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

resource  isolation  

Mesos  has  containerization  support  on  Linux  (built-­‐in  usage  of  cgroups  and  namespaces)  

isolator  modules:  CPU  (upper  and  lower  bounds)  memory  network  I/O  (in  development)  filesystem  (using  LVM,  planned)  

Page 79: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

resource  isolation  

mesos-slave!

executor!

task!

task!

Page 80: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

resource  isolation  

mesos-slave!

executor!

task!

task!

containers  

Page 81: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

resource  isolation  

mesos-slave!

Executor   Cache  

Task   Task  

Executor   Cache  

Task  

Page 82: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

agenda  ① Mesos  

② Spark  on  Mesos  

③ why  Mesos?  ①  multi-­‐tenancy  ②  fine-­‐grained  sharing  ③  why  not?  

④  long-­‐lived  services  and  other  frameworks  

Page 83: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

multi-­‐tenancy  

slave(s)  

mesos-slave!mesos-slave!

Page 84: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

multi-­‐tenancy  (only  Spark)  

slave(s)  

mesos-slave!mesos-slave!

(can  approximate  w/  standalone  mode  by  setting  max  #  cores  per  application,  otherwise  get  FIFO  execution)  

Page 85: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

multi-­‐tenancy  (only  Spark)  

slave(s)  

mesos-slave!mesos-slave!

(run  the  tried  and  true  and  test  out  the  new  at  the  same  time!)  

0.9.0 0.8.1 0.8.1 0.9.0

Page 86: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

agenda  ① Mesos  

② Spark  on  Mesos  

③ why  Mesos?  ①  multi-­‐tenancy  ②  fine-­‐grained  sharing  ③  why  not?  

④  long-­‐lived  services  and  other  frameworks  

Page 87: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache  

Task   Task  

Executor   Cache  

Task   Task  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Page 88: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache  

Task   Task  

Executor   Cache  

Task  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Page 89: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache  

Task  

Executor   Cache  

Task  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task  Task  

Page 90: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache  

Task  

Executor   Cache  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task  Task  

Page 91: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache   Executor   Cache  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task   Task  Task  Task  

Page 92: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache   Executor   Cache  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task   Task  Task  

Page 93: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache   Executor   Cache  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task   Task  Task   Task  

Page 94: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache   Executor   Cache  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task   Task   Task  

Page 95: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache   Executor   Cache  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task   Task   Task   Task  

Page 96: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache   Executor   Cache  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task   Task   Task  

Page 97: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

fine-­‐grained  sharing  

mesos-slave!

Executor   Cache   Executor   Cache  

Spark  executors  only  consume  memory,  can  share  CPU  between  

Task   Task  

Page 98: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

agenda  ① Mesos  

② Spark  on  Mesos  

③ why  Mesos?  ①  multi-­‐tenancy  ②  fine-­‐grained  sharing  ③  why  not?  

④  long-­‐lived  services  and  other  frameworks  

Page 99: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

why  not?  

more  moving  pieces  means  more  things  to  learn  and  more  things  that  can  fail  …  

Page 100: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

master  failover  

framework  

after  a  new  master  is  elected  all  frameworks  and  slaves  connect  to  the  new  master  

all  tasks  keep  running  across  master  failover!  

Page 101: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

slave  failover  

mesos-slave!

task! task!

Page 102: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

slave  failover  

mesos-slave!

task!task!

Page 103: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

slave  failover  

task!task!

Page 104: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

slave  failover  

mesos-slave!

task!task!

Page 105: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

slave  failover  

mesos-slave!

task!task!

Page 106: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

slave  

slave  failover  @twitter  

mesos-slave!

(large  in-­‐memory  services,  expensive  to  restart)  

Page 107: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

masters  

framework  failover  

framework  

framework  re-­‐registers  with  master  and  resumes  operation  

all  tasks  keep  running  across  framework  failover!  

framework  

Page 108: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

agenda  ① Mesos  

② Spark  on  Mesos  

③ why  Mesos?  ①  multi-­‐tenancy  ②  fine-­‐grained  sharing  ③  why  not?  

④  long-­‐lived  services  and  other  frameworks  

Page 109: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Apache  Aurora  (incubating)  

masters  

Aurora  is  a  Mesos  framework  that  makes  it  easy  to  launch  services  written  in  Ruby,  Java,  Scala,  Python,  Go,  etc!  

Page 110: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Marathon  (from  Mesosphere)  

masters  

Marathon  is  a  Mesos  framework  that  makes  it  easy  to  launch  services  written  in  Ruby,  Java,  Scala,  Python,  Go,  etc!  

Marathon  

Page 111: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Jenkins  on  Mesos  

(http://bit.ly/1frLrLf)  

(http://bit.ly/1nHwM3r)  

Apache  Mesos  and  Jenkins  -­‐  elastic  build  slaves  

Page 112: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali
Page 113: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Elastic  Mesos:  elastic.mesosphere.io  

Packages:  

Page 114: Mesosfiles.meetup.com/12063092/mesos-spark-meetup-04-22-14.pdf · 2014-04-24 · alittlehistory Mesos(started(as(a(research(project(at(Berkeley(in(early(2009(by(Benjamin(Hindman,Andy(Konwinski,Matei(Zaharia,Ali

Thank  You!  

mesos.apache.org  

mesos.apache.org/blog  

@ApacheMesos