SlideShare a Scribd company logo
1© Copyright 2016 EMC Corporation. All rights reserved. 1© Copyright 2016 EMC Corporation. All rights reserved.
DEEP DIVE WITH MESOS & PERSISTENT
STORAGE FOR APPLICATIONS
DAVID VONTHENEN, EMC {code}
2© Copyright 2016 EMC Corporation. All rights reserved.
• David vonThenen, Developer Advocate - EMC {code}
– Twitter: @dvonthenen
– Blog: http://dvonthenen.com
– Github: https://github.com/dvonthenen
PRESENTER
3© Copyright 2016 EMC Corporation. All rights reserved.
• Quick Review of Mesos
• Frameworks and Two Layer Scheduling
• Production Applications
• Demo
• Q&A
AGENDA
4© Copyright 2016 EMC Corporation. All rights reserved. 4© Copyright 2016 EMC Corporation. All rights reserved.
QUICK REVIEW OF MESOS
5© Copyright 2016 EMC Corporation. All rights reserved.
• From a resource perspective, it’s a cluster manager:
– Pools resources to be centrally managed as a single unit
• From an application perspective, it’s a scheduler:
– Dispatches workloads to consume pooled resources
• Often described as a Data Center Operating System
(DCOS)
– Static versus Dynamic Partition of Resource
– Efficient utilization of CPU, Memory, Disk
• Proven resource scheduler for production workloads
QUICK REVIEW OF MESOS
6© Copyright 2016 EMC Corporation. All rights reserved.
SCHEDULERS ARE DIFFICULT TO BUILD
7© Copyright 2016 EMC Corporation. All rights reserved.
• Master
– Manages Mesos Agents
– Enables fine-grained sharing of resources (CPU, RAM, …)
across frameworks in the form of resource offers.
• Zookeeper
– Enables highly reliable distributed coordination (cluster
state)
• Agent (aka Slave)
– The entity that will be running the task
MESOS COMPONENTS
8© Copyright 2016 EMC Corporation. All rights reserved.
MESOS ARCHITECTURE
9© Copyright 2016 EMC Corporation. All rights reserved.
• Generic
– Anything that can be run on a standard Linux shell
– Provides a mechanism for deploying applications packages
– Supports Docker workloads
• Framework
– A plug-in to Mesos that allows you to implement a sub-
scheduler
– specialize a workload by providing custom placement and
resource allocation
APPLICATION SUPPORT
10© Copyright 2016 EMC Corporation. All rights reserved.
GENERIC APPLICATIONS
11© Copyright 2016 EMC Corporation. All rights reserved. 11© Copyright 2016 EMC Corporation. All rights reserved.
FRAMEWORKS AND
TWO LAYER SCHEDULING
12© Copyright 2016 EMC Corporation. All rights reserved.
• On the surface…
• Allows specialization of
workload by providing
custom placement and
resource allocation
• Provides monitoring of
these workloads to protect
and react when things fail
MESOS FRAMEWORK
13© Copyright 2016 EMC Corporation. All rights reserved.
• Scheduler
– a scheduler that registers with the master to be offered
resources
• Executor
– an executor process that is launched on slave nodes to run
the framework’s tasks
FRAMEWORK COMPONENTS
14© Copyright 2016 EMC Corporation. All rights reserved.
FRAMEWORK ARCHITECTURE
15© Copyright 2016 EMC Corporation. All rights reserved.
FRAMEWORK ARCHITECTURE
16© Copyright 2016 EMC Corporation. All rights reserved.
• Odds are you have been using at least 1 framework
without realizing it…
AS IT TURNS OUT…
• Marathon is a framework
– A framework for performing container
orchestration for long running tasks
• Chronos is a framework
– A framework for performing batch or
scheduled tasks
17© Copyright 2016 EMC Corporation. All rights reserved.
• Zooming into the “Marathon” box…
• Marathon is a Scheduler
• Launching a Marathon task, the “generic”
applications are created inside a “generic” (or
default) executor
• Dogfooding!
MARATHON DISSECTED
18© Copyright 2016 EMC Corporation. All rights reserved.
MESOS FRAMEWORKS
19© Copyright 2016 EMC Corporation. All rights reserved.
• 2 layer scheduling or sub-
scheduling of resources
• Manages the lifecycle of your
workload through application
specific monitoring
• What does this mean
specifically?
DIGGING DEEPER
20© Copyright 2016 EMC Corporation. All rights reserved.
BUILDING HADOOP CLUSTERS
21© Copyright 2016 EMC Corporation. All rights reserved.
MANAGING HADOOP CLUSTERS
22© Copyright 2016 EMC Corporation. All rights reserved.
APPLICATIONS USING HADOOP
23© Copyright 2016 EMC Corporation. All rights reserved.
THIS SEEMS SILLY
24© Copyright 2016 EMC Corporation. All rights reserved.
• Allows you to subsume the default scheduler such
that:
• You can install and configure your application
• Resources can be allocated in a way that optimizes
your applications
• Allows operation real-time automated improvements
for your applications
– Scaling up for load balancing peak times
– Scaling back to free up resources
2 LAYER SCHEDULING
25© Copyright 2016 EMC Corporation. All rights reserved.
• The details of your applications are hidden from the
end user!
– Deployment
– Operations
– Growth
– Disaster recovery
– Performance
• Just a consumer of the application as a service!
THE NON-TECHNICAL VERSION
26© Copyright 2016 EMC Corporation. All rights reserved.
• CouchBase Framework (doesn’t exist, let’s imagine it
does)
– CouchBase is a NoSQL DB
• Monitor the CouchBase instances, when nearing full
– Dynamically add an node using “server-add”
– Then call “rebalance”
• Reactive and Proactive but fully automated
• I think we had all seen this movie…
FOR EXAMPLE
27© Copyright 2016 EMC Corporation. All rights reserved.
SKYNET
28© Copyright 2016 EMC Corporation. All rights reserved. 28© Copyright 2016 EMC Corporation. All rights reserved.
PRODUCTION APPLICATIONS
29© Copyright 2016 EMC Corporation. All rights reserved.
• Containers are ephemeral therefore stateless
• Quickly found the need for state
– Configuration
– Data
– Logging / Auditing
• Containerizers like Mesos and Docker introduced
exporting to local storage
• Failure of a node? hardware? A better way?
EVOLUTION OF STATEFUL
30© Copyright 2016 EMC Corporation. All rights reserved.
• Persistent
– Containers can come and go,
but continue where they left off
– Application Data, Logs, Audit
Trail, etc
• External
– Storage lives outside the Mesos
Agent node
– High Availability
– Tolerates node failure
PERSISTENT EXTERNAL STORAGE
31© Copyright 2016 EMC Corporation. All rights reserved.
• REX-Ray
– Provides a vendor agnostic storage orchestration engine
– AWS, GCE, ScaleIO, XtremIO, many many more
– Github: https://github.com/emccode/rexray
• mesos-module-dvdi
– Provides a hook to Mesos agent nodes to provision, attach,
and detach external storage
– Github: https://github.com/emccode/mesos-module-dvdi
HOW WE ACHIEVE THIS?
32© Copyright 2016 EMC Corporation. All rights reserved.
• We can run “real world” applications
• Persistence – DBs
• Highly Available, Fault Tolerant
• Audit trail – Transaction Logs
• Not worry about the “2am call”
STATELESS TO STATEFUL
33© Copyright 2016 EMC Corporation. All rights reserved.
LET’S FACE IT…
34© Copyright 2016 EMC Corporation. All rights reserved.
• Trouble is… this still represents the “old way” of
thinking
• PREVENT THE CRASH OR FAILURE!
• Problem is you can’t
• What is the alternative?
STATEFUL 2.0?
35© Copyright 2016 EMC Corporation. All rights reserved.
• Mesos frameworks can proactively monitor for thing
going sideways
• Leveraging external persistent storage and
frameworks fail fast and recover quicker!
• Skynet!
FRAMEWORKS + STATEFUL 2.0
36© Copyright 2016 EMC Corporation. All rights reserved. 36© Copyright 2016 EMC Corporation. All rights reserved.
DEMO
37© Copyright 2016 EMC Corporation. All rights reserved.
• Running on Amazon EC2
– Mesos
– Marathon
– Mesos DNS
• Production HA Cluster
– 3 x Master + Zookeeper Nodes (t2.micros)
– 5 x Slave Nodes with Docker Support (t2.medium)
DEMO CONFIGURATION
38© Copyright 2016 EMC Corporation. All rights reserved.
• Elastic Search Framework
– Create and mount external volume
– Pour some data into Elastic Search
– Github: https://github.com/mesos/elasticsearch
• Elastic Search Instances backed by Persistent
External Storage
– Using REX-Ray
– Using mesos-module-dvdi
DEMO: FRAMEWORK + EXTERNAL STORAGE
39© Copyright 2016 EMC Corporation. All rights reserved.
• Deploy Elastic Search Framework using REST API
– Observe Scheduler creation
– Using browser, log into the Elastic Search Framework UI
– Observe Executor nodes get created and attaching to EBS
volumes
• Simulate Failure
– Kill EC2 Instance
– Watch executor recreation and reattach to EBS volumes
DEMO: FRAMEWORK + EXTERNAL STORAGE
40© Copyright 2016 EMC Corporation. All rights reserved.
DEMO: AUTO DEPLOY ELASTIC SEARCH
41© Copyright 2016 EMC Corporation. All rights reserved.
Data Persistence in the New Container World
Wednesday 3PM
Joshua Bernstein
VP of Technology for ETD
Tobi Knaup
CEO & Co-Founder of Mesosphere
Guru Session
42© Copyright 2016 EMC Corporation. All rights reserved.
@EMCcode
@dvonthenen
emccode.com
community.emccode.com
Come visit us at
Booth #1044
or in the vLab
Questions?
43© Copyright 2016 EMC Corporation. All rights reserved. 43© Copyright 2016 EMC Corporation. All rights reserved.
EMC World 2016 - code.14 Deep Dive with Mesos and Persistent Storage for Applications

More Related Content

What's hot (20)

PPTX
EMC World 2016 - code.10 Jumpstart your Open Source Presence through new Coll...
{code}
 
PPTX
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
{code}
 
PPTX
Docker Training - June 2015
{code}
 
PPTX
EMC World 2016 - code.04 Extending Mesos for Storage and External Resources
{code}
 
PPTX
EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infras...
{code}
 
PPTX
Highly Available And Distributed Containers - ContainerCon NA 2016
{code}
 
PPTX
EMC World 2016 - code.03 Introduction to Containers
{code}
 
PPTX
EMC World 2016 - code.15 Better Together: Scale-Out Databases on Scale-Out St...
{code}
 
PPTX
Automating Your Data Center with RackHD - EMC World 2016
Kendrick Coleman
 
PDF
Highly Available Persistent Applications in Containers - DockerCon16
{code}
 
PPTX
EMC World 2016 - code.02 Introduction to Immutable Infrastructure
{code}
 
PPTX
EMC World 2016 - cnaITL.01 Adopting An Open Source Strategy
{code}
 
PPTX
EMC World 2016 - Deep Dive with Mesos and Persistent Storage for Applications
David vonThenen
 
PDF
EMC {code} 2.0 - Charter, Principles, and Execution
{code}
 
PPTX
EMC World 2016 - code.11 Intimidate me not - How to Contribute to Large Open ...
{code}
 
PPTX
EMC World 2016 - code.09 Introduction to the Docker Platform
{code}
 
PPTX
BrightTalk session-The right SDS for your OpenStack Cloud
Eitan Segal
 
PDF
Re-Platforming All the Things
Mesosphere Inc.
 
PPTX
EMC World 2016 - code.12 Managing a Large Open Source community at EMC and Do...
{code}
 
PDF
CoreOS 101 - EMC World 2015
Jonas Rosland
 
EMC World 2016 - code.10 Jumpstart your Open Source Presence through new Coll...
{code}
 
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
{code}
 
Docker Training - June 2015
{code}
 
EMC World 2016 - code.04 Extending Mesos for Storage and External Resources
{code}
 
EMC World 2016 - code.07 Resiliency and Availability of a Cloud Native Infras...
{code}
 
Highly Available And Distributed Containers - ContainerCon NA 2016
{code}
 
EMC World 2016 - code.03 Introduction to Containers
{code}
 
EMC World 2016 - code.15 Better Together: Scale-Out Databases on Scale-Out St...
{code}
 
Automating Your Data Center with RackHD - EMC World 2016
Kendrick Coleman
 
Highly Available Persistent Applications in Containers - DockerCon16
{code}
 
EMC World 2016 - code.02 Introduction to Immutable Infrastructure
{code}
 
EMC World 2016 - cnaITL.01 Adopting An Open Source Strategy
{code}
 
EMC World 2016 - Deep Dive with Mesos and Persistent Storage for Applications
David vonThenen
 
EMC {code} 2.0 - Charter, Principles, and Execution
{code}
 
EMC World 2016 - code.11 Intimidate me not - How to Contribute to Large Open ...
{code}
 
EMC World 2016 - code.09 Introduction to the Docker Platform
{code}
 
BrightTalk session-The right SDS for your OpenStack Cloud
Eitan Segal
 
Re-Platforming All the Things
Mesosphere Inc.
 
EMC World 2016 - code.12 Managing a Large Open Source community at EMC and Do...
{code}
 
CoreOS 101 - EMC World 2015
Jonas Rosland
 

Viewers also liked (14)

PPTX
Managing a large open source community - OSCON 2016
{code}
 
PDF
oVirt and OpenStack integration
Nimbus Concept
 
PDF
Puppet – Make stateful apps easier than stateless
Starcounter
 
PPTX
Pets versus Cattle: servers evolved
Phil Cryer
 
PDF
Servers as Pets v. Servers as Cattle
Radamanthus Batnag
 
PPTX
Why should i care about stateful containers?
ClusterHQ
 
ODP
Enterprise wikis: an introduction
XWiki
 
PDF
Reasons to be cheerful - Fronteers 2010
Christian Heilmann
 
PDF
DCOS Presentation
Jan Repnak
 
PPTX
Open Source is Good for Both Business and Humanity - DockerCon 2016
{code}
 
ODP
Source Code Management Basics
Chris Tankersley
 
PDF
Pets vs. Cattle: The Elastic Cloud Story
Randy Bias
 
PPTX
EMC World 2016 - code.05 Automating your Physical Data Center with RackHD
{code}
 
PPTX
Containers: Life Beyond Microservices? by Sushil Kumar, Robin Systems
Docker, Inc.
 
Managing a large open source community - OSCON 2016
{code}
 
oVirt and OpenStack integration
Nimbus Concept
 
Puppet – Make stateful apps easier than stateless
Starcounter
 
Pets versus Cattle: servers evolved
Phil Cryer
 
Servers as Pets v. Servers as Cattle
Radamanthus Batnag
 
Why should i care about stateful containers?
ClusterHQ
 
Enterprise wikis: an introduction
XWiki
 
Reasons to be cheerful - Fronteers 2010
Christian Heilmann
 
DCOS Presentation
Jan Repnak
 
Open Source is Good for Both Business and Humanity - DockerCon 2016
{code}
 
Source Code Management Basics
Chris Tankersley
 
Pets vs. Cattle: The Elastic Cloud Story
Randy Bias
 
EMC World 2016 - code.05 Automating your Physical Data Center with RackHD
{code}
 
Containers: Life Beyond Microservices? by Sushil Kumar, Robin Systems
Docker, Inc.
 
Ad

Similar to EMC World 2016 - code.14 Deep Dive with Mesos and Persistent Storage for Applications (20)

PPTX
EMC World 2016 - Introduction to Mesos and Mesosphere
David vonThenen
 
PDF
OSDC 2016 - Mesos and the Architecture of the New Datacenter by Jörg Schad
NETWAYS
 
PPTX
Cloud Native Applications - DevOps, EMC and Cloud Foundry
Bob Sokol
 
PDF
Webinar: Nightmares of a Container Orchestration System - Jorg Schad
Codemotion
 
PDF
Webinar - Nightmares of a Container Orchestration System - Jorg Schad
Codemotion
 
PDF
Deploying Containers in Production and at Scale
Mesosphere Inc.
 
PPTX
20191201 kubernetes managed weblogic revival - part 1
makker_nl
 
PDF
The Kubernetes WebLogic revival (part 1)
Simon Haslam
 
PPTX
How Container Schedulers and Software-based Storage will Change the Cloud
David vonThenen
 
PPTX
SCaLE 15x - How Container Schedulers and Software-Defined Storage will Change...
David vonThenen
 
PPTX
Using ScaleIO in an OpenStack Environment
Jason Sturgeon
 
PDF
Kubernetes One-Click Deployment: Hands-on Workshop (Munich)
QAware GmbH
 
PDF
Introduction to Apache Mesos and DC/OS
Steve Wong
 
PDF
Better Practices when Using Terraform to Manage Oracle Cloud Infrastructure
Simon Haslam
 
PPTX
Platform as a Service with Kubernetes and Mesos
Miguel Zuniga
 
PPTX
DevOps in Age of Kubernetes
Mesosphere Inc.
 
PDF
DevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
DevOps.com
 
PDF
Microservices with Terraform, Docker and the Cloud. JavaOne 2017 2017-10-02
Derek Ashmore
 
PPTX
Highly available nodejs
pfremm
 
PDF
CI/CD with Docker, DC/OS, and Jenkins
Karl Isenberg
 
EMC World 2016 - Introduction to Mesos and Mesosphere
David vonThenen
 
OSDC 2016 - Mesos and the Architecture of the New Datacenter by Jörg Schad
NETWAYS
 
Cloud Native Applications - DevOps, EMC and Cloud Foundry
Bob Sokol
 
Webinar: Nightmares of a Container Orchestration System - Jorg Schad
Codemotion
 
Webinar - Nightmares of a Container Orchestration System - Jorg Schad
Codemotion
 
Deploying Containers in Production and at Scale
Mesosphere Inc.
 
20191201 kubernetes managed weblogic revival - part 1
makker_nl
 
The Kubernetes WebLogic revival (part 1)
Simon Haslam
 
How Container Schedulers and Software-based Storage will Change the Cloud
David vonThenen
 
SCaLE 15x - How Container Schedulers and Software-Defined Storage will Change...
David vonThenen
 
Using ScaleIO in an OpenStack Environment
Jason Sturgeon
 
Kubernetes One-Click Deployment: Hands-on Workshop (Munich)
QAware GmbH
 
Introduction to Apache Mesos and DC/OS
Steve Wong
 
Better Practices when Using Terraform to Manage Oracle Cloud Infrastructure
Simon Haslam
 
Platform as a Service with Kubernetes and Mesos
Miguel Zuniga
 
DevOps in Age of Kubernetes
Mesosphere Inc.
 
DevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
DevOps.com
 
Microservices with Terraform, Docker and the Cloud. JavaOne 2017 2017-10-02
Derek Ashmore
 
Highly available nodejs
pfremm
 
CI/CD with Docker, DC/OS, and Jenkins
Karl Isenberg
 
Ad

Recently uploaded (20)

PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
July Patch Tuesday
Ivanti
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
Python basic programing language for automation
DanialHabibi2
 
July Patch Tuesday
Ivanti
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 

EMC World 2016 - code.14 Deep Dive with Mesos and Persistent Storage for Applications

  • 1. 1© Copyright 2016 EMC Corporation. All rights reserved. 1© Copyright 2016 EMC Corporation. All rights reserved. DEEP DIVE WITH MESOS & PERSISTENT STORAGE FOR APPLICATIONS DAVID VONTHENEN, EMC {code}
  • 2. 2© Copyright 2016 EMC Corporation. All rights reserved. • David vonThenen, Developer Advocate - EMC {code} – Twitter: @dvonthenen – Blog: http://dvonthenen.com – Github: https://github.com/dvonthenen PRESENTER
  • 3. 3© Copyright 2016 EMC Corporation. All rights reserved. • Quick Review of Mesos • Frameworks and Two Layer Scheduling • Production Applications • Demo • Q&A AGENDA
  • 4. 4© Copyright 2016 EMC Corporation. All rights reserved. 4© Copyright 2016 EMC Corporation. All rights reserved. QUICK REVIEW OF MESOS
  • 5. 5© Copyright 2016 EMC Corporation. All rights reserved. • From a resource perspective, it’s a cluster manager: – Pools resources to be centrally managed as a single unit • From an application perspective, it’s a scheduler: – Dispatches workloads to consume pooled resources • Often described as a Data Center Operating System (DCOS) – Static versus Dynamic Partition of Resource – Efficient utilization of CPU, Memory, Disk • Proven resource scheduler for production workloads QUICK REVIEW OF MESOS
  • 6. 6© Copyright 2016 EMC Corporation. All rights reserved. SCHEDULERS ARE DIFFICULT TO BUILD
  • 7. 7© Copyright 2016 EMC Corporation. All rights reserved. • Master – Manages Mesos Agents – Enables fine-grained sharing of resources (CPU, RAM, …) across frameworks in the form of resource offers. • Zookeeper – Enables highly reliable distributed coordination (cluster state) • Agent (aka Slave) – The entity that will be running the task MESOS COMPONENTS
  • 8. 8© Copyright 2016 EMC Corporation. All rights reserved. MESOS ARCHITECTURE
  • 9. 9© Copyright 2016 EMC Corporation. All rights reserved. • Generic – Anything that can be run on a standard Linux shell – Provides a mechanism for deploying applications packages – Supports Docker workloads • Framework – A plug-in to Mesos that allows you to implement a sub- scheduler – specialize a workload by providing custom placement and resource allocation APPLICATION SUPPORT
  • 10. 10© Copyright 2016 EMC Corporation. All rights reserved. GENERIC APPLICATIONS
  • 11. 11© Copyright 2016 EMC Corporation. All rights reserved. 11© Copyright 2016 EMC Corporation. All rights reserved. FRAMEWORKS AND TWO LAYER SCHEDULING
  • 12. 12© Copyright 2016 EMC Corporation. All rights reserved. • On the surface… • Allows specialization of workload by providing custom placement and resource allocation • Provides monitoring of these workloads to protect and react when things fail MESOS FRAMEWORK
  • 13. 13© Copyright 2016 EMC Corporation. All rights reserved. • Scheduler – a scheduler that registers with the master to be offered resources • Executor – an executor process that is launched on slave nodes to run the framework’s tasks FRAMEWORK COMPONENTS
  • 14. 14© Copyright 2016 EMC Corporation. All rights reserved. FRAMEWORK ARCHITECTURE
  • 15. 15© Copyright 2016 EMC Corporation. All rights reserved. FRAMEWORK ARCHITECTURE
  • 16. 16© Copyright 2016 EMC Corporation. All rights reserved. • Odds are you have been using at least 1 framework without realizing it… AS IT TURNS OUT… • Marathon is a framework – A framework for performing container orchestration for long running tasks • Chronos is a framework – A framework for performing batch or scheduled tasks
  • 17. 17© Copyright 2016 EMC Corporation. All rights reserved. • Zooming into the “Marathon” box… • Marathon is a Scheduler • Launching a Marathon task, the “generic” applications are created inside a “generic” (or default) executor • Dogfooding! MARATHON DISSECTED
  • 18. 18© Copyright 2016 EMC Corporation. All rights reserved. MESOS FRAMEWORKS
  • 19. 19© Copyright 2016 EMC Corporation. All rights reserved. • 2 layer scheduling or sub- scheduling of resources • Manages the lifecycle of your workload through application specific monitoring • What does this mean specifically? DIGGING DEEPER
  • 20. 20© Copyright 2016 EMC Corporation. All rights reserved. BUILDING HADOOP CLUSTERS
  • 21. 21© Copyright 2016 EMC Corporation. All rights reserved. MANAGING HADOOP CLUSTERS
  • 22. 22© Copyright 2016 EMC Corporation. All rights reserved. APPLICATIONS USING HADOOP
  • 23. 23© Copyright 2016 EMC Corporation. All rights reserved. THIS SEEMS SILLY
  • 24. 24© Copyright 2016 EMC Corporation. All rights reserved. • Allows you to subsume the default scheduler such that: • You can install and configure your application • Resources can be allocated in a way that optimizes your applications • Allows operation real-time automated improvements for your applications – Scaling up for load balancing peak times – Scaling back to free up resources 2 LAYER SCHEDULING
  • 25. 25© Copyright 2016 EMC Corporation. All rights reserved. • The details of your applications are hidden from the end user! – Deployment – Operations – Growth – Disaster recovery – Performance • Just a consumer of the application as a service! THE NON-TECHNICAL VERSION
  • 26. 26© Copyright 2016 EMC Corporation. All rights reserved. • CouchBase Framework (doesn’t exist, let’s imagine it does) – CouchBase is a NoSQL DB • Monitor the CouchBase instances, when nearing full – Dynamically add an node using “server-add” – Then call “rebalance” • Reactive and Proactive but fully automated • I think we had all seen this movie… FOR EXAMPLE
  • 27. 27© Copyright 2016 EMC Corporation. All rights reserved. SKYNET
  • 28. 28© Copyright 2016 EMC Corporation. All rights reserved. 28© Copyright 2016 EMC Corporation. All rights reserved. PRODUCTION APPLICATIONS
  • 29. 29© Copyright 2016 EMC Corporation. All rights reserved. • Containers are ephemeral therefore stateless • Quickly found the need for state – Configuration – Data – Logging / Auditing • Containerizers like Mesos and Docker introduced exporting to local storage • Failure of a node? hardware? A better way? EVOLUTION OF STATEFUL
  • 30. 30© Copyright 2016 EMC Corporation. All rights reserved. • Persistent – Containers can come and go, but continue where they left off – Application Data, Logs, Audit Trail, etc • External – Storage lives outside the Mesos Agent node – High Availability – Tolerates node failure PERSISTENT EXTERNAL STORAGE
  • 31. 31© Copyright 2016 EMC Corporation. All rights reserved. • REX-Ray – Provides a vendor agnostic storage orchestration engine – AWS, GCE, ScaleIO, XtremIO, many many more – Github: https://github.com/emccode/rexray • mesos-module-dvdi – Provides a hook to Mesos agent nodes to provision, attach, and detach external storage – Github: https://github.com/emccode/mesos-module-dvdi HOW WE ACHIEVE THIS?
  • 32. 32© Copyright 2016 EMC Corporation. All rights reserved. • We can run “real world” applications • Persistence – DBs • Highly Available, Fault Tolerant • Audit trail – Transaction Logs • Not worry about the “2am call” STATELESS TO STATEFUL
  • 33. 33© Copyright 2016 EMC Corporation. All rights reserved. LET’S FACE IT…
  • 34. 34© Copyright 2016 EMC Corporation. All rights reserved. • Trouble is… this still represents the “old way” of thinking • PREVENT THE CRASH OR FAILURE! • Problem is you can’t • What is the alternative? STATEFUL 2.0?
  • 35. 35© Copyright 2016 EMC Corporation. All rights reserved. • Mesos frameworks can proactively monitor for thing going sideways • Leveraging external persistent storage and frameworks fail fast and recover quicker! • Skynet! FRAMEWORKS + STATEFUL 2.0
  • 36. 36© Copyright 2016 EMC Corporation. All rights reserved. 36© Copyright 2016 EMC Corporation. All rights reserved. DEMO
  • 37. 37© Copyright 2016 EMC Corporation. All rights reserved. • Running on Amazon EC2 – Mesos – Marathon – Mesos DNS • Production HA Cluster – 3 x Master + Zookeeper Nodes (t2.micros) – 5 x Slave Nodes with Docker Support (t2.medium) DEMO CONFIGURATION
  • 38. 38© Copyright 2016 EMC Corporation. All rights reserved. • Elastic Search Framework – Create and mount external volume – Pour some data into Elastic Search – Github: https://github.com/mesos/elasticsearch • Elastic Search Instances backed by Persistent External Storage – Using REX-Ray – Using mesos-module-dvdi DEMO: FRAMEWORK + EXTERNAL STORAGE
  • 39. 39© Copyright 2016 EMC Corporation. All rights reserved. • Deploy Elastic Search Framework using REST API – Observe Scheduler creation – Using browser, log into the Elastic Search Framework UI – Observe Executor nodes get created and attaching to EBS volumes • Simulate Failure – Kill EC2 Instance – Watch executor recreation and reattach to EBS volumes DEMO: FRAMEWORK + EXTERNAL STORAGE
  • 40. 40© Copyright 2016 EMC Corporation. All rights reserved. DEMO: AUTO DEPLOY ELASTIC SEARCH
  • 41. 41© Copyright 2016 EMC Corporation. All rights reserved. Data Persistence in the New Container World Wednesday 3PM Joshua Bernstein VP of Technology for ETD Tobi Knaup CEO & Co-Founder of Mesosphere Guru Session
  • 42. 42© Copyright 2016 EMC Corporation. All rights reserved. @EMCcode @dvonthenen emccode.com community.emccode.com Come visit us at Booth #1044 or in the vLab Questions?
  • 43. 43© Copyright 2016 EMC Corporation. All rights reserved. 43© Copyright 2016 EMC Corporation. All rights reserved.