Maybe you’ve heard of Mesos—that thing that you can run Hadoop on. I think it powers Twitter? Isn’t it an Apache project, or something?
In this talk, we’ll learn all about Mesos—what it is, how you can leverage it to simplify your infrastructure and reduce AWS/cloud computing costs, and why you should develop your next application on top of it. This talk will give you the tools you need to understand whether Mesos is the right fit for your infrastructure, and several starting points for learning more about Mesos.
37. Spark
• In
memory
Map
Reduce,
built
for
“Medium
Data”
• Supports
SQL
as
well
as
Java,
Python,
and
Scala
• Designed
for
interac1ve
analysis
via
REPL
38. How
do
I
use
these?
• Free
online
interac1ve
tutorials!
– hdp://mesosphere.io/learn
• Covers
all
of
the
previously
men1oned
and
many
more
40. Cluster
Manager
Status
Quo
Applica?on/Human
Specifica1on
Cluster
Manager
The
specifica1on
includes
as
much
informa1on
as
possible
to
assist
the
cluster
manager
in
scheduling
and
execu1on
41. Cluster
Manager
Status
Quo
Applica?on/Human
Cluster
Manager
Wait
for
task
to
be
executed
43. Problems
with
Specifica1ons
① Hard
to
specify
certain
desires
or
constraints
② Hard
to
update
specifica1ons
dynamically
as
tasks
execute
and
finish/fail
44. An
Alterna1ve
Model
Scheduler
Mesos
request
3
CPUs
2
GB
RAM
• A
request
is
purposely
simplified
subset
of
a
specifica1on
• It
is
just
the
required
resources
at
that
point
in
)me
46. What
should
you
do
if
you
can’t
sa1sfy
a
request?
①
Wait
un?l
you
can
…
47. What
should
you
do
if
you
can’t
sa1sfy
a
request?
①
Wait
un?l
you
can
…
②
Offer
best
you
can
immediately
48. What
should
you
do
if
you
can’t
sa1sfy
a
request?
①
Wait
un?l
you
can
…
②
Offer
best
you
can
immediately
49. Mesos
Model
Scheduler
Mesos
offer
hostname
4
CPUs
4
GB
RAM
• Resources
are
allocated
via
resource
offers
• A
resource
offer
represents
a
snapshot
of
available
resources
that
a
scheduler
can
use
to
run
tasks
52. Mesos
Model
offer
hostname
4
CPUs
4
GB
RAM
offer
hostname
4
CPUs
4
GB
RAM
offer
hostname
4
CPUs
4
GB
RAM
Scheduler
Mesos
offer
hostname
4
CPUs
4
GB
RAM
Scheduler
uses
the
offers
to
decide
what
tasks
to
run
53. Mesos
Model
Scheduler
Mesos
Scheduler
uses
the
offers
to
decide
what
tasks
to
run
“Two-‐level
scheduling”
task
3
CPUs
2
GB
RAM
54. Two-‐level
Scheduling
• Mesos:
controls
resource
alloca+ons
to
schedulers
• Schedulers:
make
decisions
about
what
tasks
to
run
given
allocated
resources
55. Two-‐level
Scheduling
Elsewhere
• Mesos
influenced
by
opera1ng
system
supported
user-‐space
scheduling
– E.g.
green
threads,
gorou1nes
• Mesos
is
designed
less
like
a
“cluster
manager”
and
more
like
an
opera1ng
system
(or
kernel)
57. Should
I
build
it
on
Mesos?
• Theme
of
MesosCon:
it’s
easy
to
build
frameworks
• Open
source
and
proprietary
frameworks
are
being
created
all
the
1me
– Two
Sigma
– Neplix
– Twider
– Hubspot
58. But
should
I
really
build
it
on
Mesos?
• Most
users
just
use
Marathon,
Hadoop,
Spark,
and
Chronos
• Why
did
we
build
our
own?
– Exo1c
workload
59. The
Plan,
redux
What
is
Mesos?
How
can
I
use
Mesos?
How
can
I
build
on
Mesos?