SlideShare a Scribd company logo
Till Rohrmann
till@data-artisans.com
@stsffap
Apache Flink® Meets
Apache Mesos® and DC/OS
Jörg Schad
joerg@mesosphere.io
@joerg_schad
Flink Forward Berlin 2017: Jörg Schad, Till Rohrmann - Apache Flink meets Apache Mesos and DC/OS
Flink Forward Berlin 2017: Jörg Schad, Till Rohrmann - Apache Flink meets Apache Mesos and DC/OS
MapReduce is
crunching Data
We need to turn faster!
Evolution of Data Analytics
Batch Event ProcessingMicro-Batch
Days Hours Minutes Seconds Microseconds
Solves problems using predictive and
prescriptive analytics
Reports what has happened using descriptive
analytics
Predictive User InterfaceReal-time Pricing and
Routing
Real-time
Advertising
Billing,

Chargeback
Product
recommendations
FMACK Stack
EVENTS
Ubiquitous data
streams from
connected devices
INGEST
Apache
Kafka
STORE
Apache
Flink
ANALYZE
Apache
Cassandra
ACT
Akka
Ingest millions of
events per second
Distributed & highly
scalable database
Real-time and batch
process data
Visualize data & build
data driven apps
Mesos/ DC/OS
Sensors
Devices
Clients
Datacenter
Naive Approach
Typical Datacenter

siloed, over-provisioned servers,

low utilization
Industry Average

12-15% utilization
mySQL
microservice
Cassandra
Flink
Kafka
© 2017 Mesosphere, Inc. All Rights Reserved. 10
Apache Mesos
Typical Datacenter

siloed, over-provisioned servers,

low utilization
Industry Average

12-15% utilization
mySQL
microservice
Cassandra
Flink
Kafka
Mesos

automated schedulers, workload multiplexing
onto the same machines
Apache Mesos


Why Mesos?
! 2-level scheduling
! Fault-tolerant, battle-tested
! Scalable to 10,000+ nodes
! Created by Mesosphere founder
@ UC Berkeley; used in production
by 100+ web-scale companies [1]
[1] http://mesos.apache.org/documentation/latest/powered-by-mesos/
Apache Flink & Apache Mesos
Why Apache Mesos?
▪ Mesos offers full functionality to implement fault
tolerant and elastic distributed applications
▪ 30% of survey respondents were running Flink
on Mesos (prior to proper Mesos support,
September 2016)
Flink’s Mesos Integration
Apache Flink Framework
Mesos Master
Mesos App Master
Flink Mesos

ResourceManager
JobManager
Mesos Task
TaskManager
Mesos Task
TaskManager
Allocate
Resources
Launch Mesos
tasks
Register
Execute Job
Resource Manager Components
▪ Monitors connection to Mesos
Connection Monitor Launch Coordinator
▪ Resource offer processing and task
scheduling
▪ Gathers offers and matches them to
tasks using Fenzo
Task Monitor
Reconciliation
Coordinator
▪ Monitors Mesos tasks
▪ Triggers reconciliation
▪ Makes sure tasks are properly killed
▪ Reconciles tasks view between
ResourceManager and Mesos Master
Component Interplay
ResourceManager
Connection
Monitor
Launch
Coordinator
Task MonitorReconciliation
Coordinator
Mesos Master
Resource offers
Launch
tasks
Monitor tasks
Status
messages
Trigger
reconciliation
Status messages
Mesos Task
Reconcile tasks
Start
TaskManagers
Recover tasks
Kill task
Fenzo
▪ Generic task scheduler for Mesos frameworks
▪ Developed by Netflix
▪ Matching between tasks and resource offers
▪ Pluggable fitness evaluator
Fenzo
Mesos
Launch
Coordinator
Periodic
resource
offers
Tell Fenzo offered
resources & tasks
Fenzo returns resource
task matchings
Tasks to launch
New Distributed Architecture
Mesos Master
Mesos Cluster
Client
(2) HTTP POST
JobGraph/Jars
Flink Master Process
Flink Mesos

ResourceManager
JobManager
(4) Start Process
(and supervise)
(8) Deploy

Tasks
(7) Register
(5) Request slots
Flink Mesos
Dispatcher
(3) Allocate
container

for Flink
master
(6) Allocate
containers

for TaskManagers
Marathon
(1) Start and
monitor
dispatcher
Mesos Task
TaskManager
Mesos Task
TaskManager
Flink Forward Berlin 2017: Jörg Schad, Till Rohrmann - Apache Flink meets Apache Mesos and DC/OS
DC/OS
Datacenter Operating System (DC/OS)
Distributed Systems Kernel (Mesos)
Big Data + Analytics EnginesMicroservices (in containers)
Streaming
Batch
Machine Learning
Analytics
Functions &
Logic
Search
Time Series
SQL / NoSQL
Databases
Modern App Components
Any Infrastructure (Physical, Virtual, Cloud)
Demo Time
Generator
▪ Financial data generated by generator
▪ Written to Kafka topics
▪ Kafka topics consumed by Flink
▪ Flink pipeline operates on Kafka data
▪ Results written back into Kafka
Conclusion
TL;DL
▪ Apache Flink runs on Mesos using Fenzo
▪ New distributed architecture supports
dynamic resource allocation
▪ DC/OS offers easy to use Flink package
25
Thank you!
@joerg_schad
@stsffap
@ApacheFlink
@dataArtisans
@dcos
We are hiring!
data-artisans.com/careers

More Related Content

PDF
Flink Forward Berlin 2017: Steffen Hausmann - Build a Real-time Stream Proces...
PDF
Flink Forward Berlin 2017: Stephan Ewen - The State of Flink and how to adopt...
PDF
Modern Stream Processing With Apache Flink @ GOTO Berlin 2017
PPTX
Flink Forward Berlin 2017: Till Rohrmann - From Apache Flink 1.3 to 1.4
PDF
Flink Forward SF 2017: Srikanth Satya & Tom Kaitchuck - Pravega: Storage Rei...
PDF
Flink Forward Berlin 2017: Piotr Wawrzyniak - Extending Apache Flink stream p...
PPTX
Flink Forward Berlin 2017: Fabian Hueske - Using Stream and Batch Processing ...
PDF
Flink Forward Berlin 2017: Mihail Vieru - A Materialization Engine for Data I...
Flink Forward Berlin 2017: Steffen Hausmann - Build a Real-time Stream Proces...
Flink Forward Berlin 2017: Stephan Ewen - The State of Flink and how to adopt...
Modern Stream Processing With Apache Flink @ GOTO Berlin 2017
Flink Forward Berlin 2017: Till Rohrmann - From Apache Flink 1.3 to 1.4
Flink Forward SF 2017: Srikanth Satya & Tom Kaitchuck - Pravega: Storage Rei...
Flink Forward Berlin 2017: Piotr Wawrzyniak - Extending Apache Flink stream p...
Flink Forward Berlin 2017: Fabian Hueske - Using Stream and Batch Processing ...
Flink Forward Berlin 2017: Mihail Vieru - A Materialization Engine for Data I...

What's hot (20)

PDF
Flink Forward San Francisco 2018: Steven Wu - "Scaling Flink in Cloud"
PDF
Flink Forward San Francisco 2018: Stefan Richter - "How to build a modern str...
PDF
Flink Forward Berlin 2017: Zohar Mizrahi - Python Streaming API
PPTX
Apache Flink Berlin Meetup May 2016
PDF
Flink Forward SF 2017: Cliff Resnick & Seth Wiesman - From Zero to Streami...
PDF
Stateful Distributed Stream Processing
PDF
Flink Forward Berlin 2017: Francesco Versaci - Integrating Flink and Kafka in...
PDF
Flink Forward San Francisco 2019: Developing and operating real-time applicat...
PPTX
Flink Forward Berlin 2017: Dongwon Kim - Predictive Maintenance with Apache F...
PPTX
Till Rohrmann – Fault Tolerance and Job Recovery in Apache Flink
PDF
Stream Processing with Apache Flink (Flink.tw Meetup 2016/07/19)
PPTX
Flink Forward Berlin 2017: Ruben Casado Tejedor - Flink-Kudu connector: an op...
PDF
Virtual Flink Forward 2020: Production-Ready Flink and Hive Integration - wha...
PPTX
data Artisans Product Announcement
PPTX
Fabian Hueske_Till Rohrmann - Declarative stream processing with StreamSQL an...
PDF
Flink Forward San Francisco 2019: The Trade Desk's Year in Flink - Jonathan ...
PPTX
Fabian Hueske - Stream Analytics with SQL on Apache Flink
PDF
A look at Flink 1.2
PPTX
The Stream Processor as the Database - Apache Flink @ Berlin buzzwords
PDF
Flink Forward San Francisco 2019: Massive Scale Data Processing at Netflix us...
Flink Forward San Francisco 2018: Steven Wu - "Scaling Flink in Cloud"
Flink Forward San Francisco 2018: Stefan Richter - "How to build a modern str...
Flink Forward Berlin 2017: Zohar Mizrahi - Python Streaming API
Apache Flink Berlin Meetup May 2016
Flink Forward SF 2017: Cliff Resnick & Seth Wiesman - From Zero to Streami...
Stateful Distributed Stream Processing
Flink Forward Berlin 2017: Francesco Versaci - Integrating Flink and Kafka in...
Flink Forward San Francisco 2019: Developing and operating real-time applicat...
Flink Forward Berlin 2017: Dongwon Kim - Predictive Maintenance with Apache F...
Till Rohrmann – Fault Tolerance and Job Recovery in Apache Flink
Stream Processing with Apache Flink (Flink.tw Meetup 2016/07/19)
Flink Forward Berlin 2017: Ruben Casado Tejedor - Flink-Kudu connector: an op...
Virtual Flink Forward 2020: Production-Ready Flink and Hive Integration - wha...
data Artisans Product Announcement
Fabian Hueske_Till Rohrmann - Declarative stream processing with StreamSQL an...
Flink Forward San Francisco 2019: The Trade Desk's Year in Flink - Jonathan ...
Fabian Hueske - Stream Analytics with SQL on Apache Flink
A look at Flink 1.2
The Stream Processor as the Database - Apache Flink @ Berlin buzzwords
Flink Forward San Francisco 2019: Massive Scale Data Processing at Netflix us...
Ad

Similar to Flink Forward Berlin 2017: Jörg Schad, Till Rohrmann - Apache Flink meets Apache Mesos and DC/OS (20)

PDF
Apache Flink Meets Apache Mesos And DC/OS @ Mesos Meetup Berlin
PDF
Apache Flink and More @ MesosCon Asia 2017
PDF
Flink Forward San Francisco 2018: Jörg Schad and Biswajit Das - "Operating Fl...
PPTX
Operating Flink on Mesos at Scale
PPTX
Eron Wright - Introducing Flink on Mesos
PDF
DevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
PPTX
DevOps in Age of Kubernetes
PDF
[DO16] Mesosphere : Microservices meet Fast Data on Azure
PDF
Webinar - Big Data: Let's SMACK - Jorg Schad
PDF
Flink forward sf 17
PDF
Flink forward SF 2017: Elizabeth K. Joseph and Ravi Yadav - Flink meet DC/OS ...
PDF
Flink Forward San Francisco 2017 - Flink meet DC/OS
PDF
Mesos and the Architecture of the New Datacenter
PPTX
MANTL Data Platform, Microservices and BigData Services
PPTX
Apache Mesos
PPTX
Unified Batch and Real-Time Stream Processing Using Apache Flink
PPTX
Episode 3: Kubernetes and Big Data Services
PPTX
Apache mesos - overview
PDF
Making Distributed Data Persistent Services Elastic (Without Losing All Your ...
PDF
Introducing Apache Mesos
Apache Flink Meets Apache Mesos And DC/OS @ Mesos Meetup Berlin
Apache Flink and More @ MesosCon Asia 2017
Flink Forward San Francisco 2018: Jörg Schad and Biswajit Das - "Operating Fl...
Operating Flink on Mesos at Scale
Eron Wright - Introducing Flink on Mesos
DevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
DevOps in Age of Kubernetes
[DO16] Mesosphere : Microservices meet Fast Data on Azure
Webinar - Big Data: Let's SMACK - Jorg Schad
Flink forward sf 17
Flink forward SF 2017: Elizabeth K. Joseph and Ravi Yadav - Flink meet DC/OS ...
Flink Forward San Francisco 2017 - Flink meet DC/OS
Mesos and the Architecture of the New Datacenter
MANTL Data Platform, Microservices and BigData Services
Apache Mesos
Unified Batch and Real-Time Stream Processing Using Apache Flink
Episode 3: Kubernetes and Big Data Services
Apache mesos - overview
Making Distributed Data Persistent Services Elastic (Without Losing All Your ...
Introducing Apache Mesos
Ad

More from Flink Forward (20)

PDF
Building a fully managed stream processing platform on Flink at scale for Lin...
PPTX
Evening out the uneven: dealing with skew in Flink
PPTX
“Alexa, be quiet!”: End-to-end near-real time model building and evaluation i...
PDF
Introducing BinarySortedMultiMap - A new Flink state primitive to boost your ...
PDF
Introducing the Apache Flink Kubernetes Operator
PPTX
Autoscaling Flink with Reactive Mode
PDF
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
PPTX
One sink to rule them all: Introducing the new Async Sink
PPTX
Tuning Apache Kafka Connectors for Flink.pptx
PDF
Flink powered stream processing platform at Pinterest
PPTX
Apache Flink in the Cloud-Native Era
PPTX
Where is my bottleneck? Performance troubleshooting in Flink
PPTX
Using the New Apache Flink Kubernetes Operator in a Production Deployment
PPTX
The Current State of Table API in 2022
PDF
Flink SQL on Pulsar made easy
PPTX
Dynamic Rule-based Real-time Market Data Alerts
PPTX
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
PPTX
Processing Semantically-Ordered Streams in Financial Services
PDF
Tame the small files problem and optimize data layout for streaming ingestion...
PDF
Batch Processing at Scale with Flink & Iceberg
Building a fully managed stream processing platform on Flink at scale for Lin...
Evening out the uneven: dealing with skew in Flink
“Alexa, be quiet!”: End-to-end near-real time model building and evaluation i...
Introducing BinarySortedMultiMap - A new Flink state primitive to boost your ...
Introducing the Apache Flink Kubernetes Operator
Autoscaling Flink with Reactive Mode
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
One sink to rule them all: Introducing the new Async Sink
Tuning Apache Kafka Connectors for Flink.pptx
Flink powered stream processing platform at Pinterest
Apache Flink in the Cloud-Native Era
Where is my bottleneck? Performance troubleshooting in Flink
Using the New Apache Flink Kubernetes Operator in a Production Deployment
The Current State of Table API in 2022
Flink SQL on Pulsar made easy
Dynamic Rule-based Real-time Market Data Alerts
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Processing Semantically-Ordered Streams in Financial Services
Tame the small files problem and optimize data layout for streaming ingestion...
Batch Processing at Scale with Flink & Iceberg

Recently uploaded (20)

PPTX
Supervised vs unsupervised machine learning algorithms
PDF
.pdf is not working space design for the following data for the following dat...
PPTX
Data_Analytics_and_PowerBI_Presentation.pptx
PPTX
Moving the Public Sector (Government) to a Digital Adoption
PPTX
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
PDF
Galatica Smart Energy Infrastructure Startup Pitch Deck
PPTX
Major-Components-ofNKJNNKNKNKNKronment.pptx
PPTX
Global journeys: estimating international migration
PPT
Quality review (1)_presentation of this 21
PDF
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
PPTX
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
PDF
“Getting Started with Data Analytics Using R – Concepts, Tools & Case Studies”
PDF
Foundation of Data Science unit number two notes
PPT
Miokarditis (Inflamasi pada Otot Jantung)
PPTX
climate analysis of Dhaka ,Banglades.pptx
PPTX
Database Infoormation System (DBIS).pptx
PPTX
1_Introduction to advance data techniques.pptx
PPTX
05. PRACTICAL GUIDE TO MICROSOFT EXCEL.pptx
PDF
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
Supervised vs unsupervised machine learning algorithms
.pdf is not working space design for the following data for the following dat...
Data_Analytics_and_PowerBI_Presentation.pptx
Moving the Public Sector (Government) to a Digital Adoption
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
Galatica Smart Energy Infrastructure Startup Pitch Deck
Major-Components-ofNKJNNKNKNKNKronment.pptx
Global journeys: estimating international migration
Quality review (1)_presentation of this 21
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
“Getting Started with Data Analytics Using R – Concepts, Tools & Case Studies”
Foundation of Data Science unit number two notes
Miokarditis (Inflamasi pada Otot Jantung)
climate analysis of Dhaka ,Banglades.pptx
Database Infoormation System (DBIS).pptx
1_Introduction to advance data techniques.pptx
05. PRACTICAL GUIDE TO MICROSOFT EXCEL.pptx
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...

Flink Forward Berlin 2017: Jörg Schad, Till Rohrmann - Apache Flink meets Apache Mesos and DC/OS

  • 1. Till Rohrmann till@data-artisans.com @stsffap Apache Flink® Meets Apache Mesos® and DC/OS Jörg Schad joerg@mesosphere.io @joerg_schad
  • 5. We need to turn faster!
  • 6. Evolution of Data Analytics Batch Event ProcessingMicro-Batch Days Hours Minutes Seconds Microseconds Solves problems using predictive and prescriptive analytics Reports what has happened using descriptive analytics Predictive User InterfaceReal-time Pricing and Routing Real-time Advertising Billing,
 Chargeback Product recommendations
  • 7. FMACK Stack EVENTS Ubiquitous data streams from connected devices INGEST Apache Kafka STORE Apache Flink ANALYZE Apache Cassandra ACT Akka Ingest millions of events per second Distributed & highly scalable database Real-time and batch process data Visualize data & build data driven apps Mesos/ DC/OS Sensors Devices Clients
  • 9. Naive Approach Typical Datacenter
 siloed, over-provisioned servers,
 low utilization Industry Average
 12-15% utilization mySQL microservice Cassandra Flink Kafka
  • 10. © 2017 Mesosphere, Inc. All Rights Reserved. 10
  • 11. Apache Mesos Typical Datacenter
 siloed, over-provisioned servers,
 low utilization Industry Average
 12-15% utilization mySQL microservice Cassandra Flink Kafka Mesos
 automated schedulers, workload multiplexing onto the same machines
  • 12. Apache Mesos 
 Why Mesos? ! 2-level scheduling ! Fault-tolerant, battle-tested ! Scalable to 10,000+ nodes ! Created by Mesosphere founder @ UC Berkeley; used in production by 100+ web-scale companies [1] [1] http://mesos.apache.org/documentation/latest/powered-by-mesos/
  • 13. Apache Flink & Apache Mesos
  • 14. Why Apache Mesos? ▪ Mesos offers full functionality to implement fault tolerant and elastic distributed applications ▪ 30% of survey respondents were running Flink on Mesos (prior to proper Mesos support, September 2016)
  • 15. Flink’s Mesos Integration Apache Flink Framework Mesos Master Mesos App Master Flink Mesos
 ResourceManager JobManager Mesos Task TaskManager Mesos Task TaskManager Allocate Resources Launch Mesos tasks Register Execute Job
  • 16. Resource Manager Components ▪ Monitors connection to Mesos Connection Monitor Launch Coordinator ▪ Resource offer processing and task scheduling ▪ Gathers offers and matches them to tasks using Fenzo Task Monitor Reconciliation Coordinator ▪ Monitors Mesos tasks ▪ Triggers reconciliation ▪ Makes sure tasks are properly killed ▪ Reconciles tasks view between ResourceManager and Mesos Master
  • 17. Component Interplay ResourceManager Connection Monitor Launch Coordinator Task MonitorReconciliation Coordinator Mesos Master Resource offers Launch tasks Monitor tasks Status messages Trigger reconciliation Status messages Mesos Task Reconcile tasks Start TaskManagers Recover tasks Kill task
  • 18. Fenzo ▪ Generic task scheduler for Mesos frameworks ▪ Developed by Netflix ▪ Matching between tasks and resource offers ▪ Pluggable fitness evaluator Fenzo Mesos Launch Coordinator Periodic resource offers Tell Fenzo offered resources & tasks Fenzo returns resource task matchings Tasks to launch
  • 19. New Distributed Architecture Mesos Master Mesos Cluster Client (2) HTTP POST JobGraph/Jars Flink Master Process Flink Mesos
 ResourceManager JobManager (4) Start Process (and supervise) (8) Deploy
 Tasks (7) Register (5) Request slots Flink Mesos Dispatcher (3) Allocate container
 for Flink master (6) Allocate containers
 for TaskManagers Marathon (1) Start and monitor dispatcher Mesos Task TaskManager Mesos Task TaskManager
  • 21. DC/OS Datacenter Operating System (DC/OS) Distributed Systems Kernel (Mesos) Big Data + Analytics EnginesMicroservices (in containers) Streaming Batch Machine Learning Analytics Functions & Logic Search Time Series SQL / NoSQL Databases Modern App Components Any Infrastructure (Physical, Virtual, Cloud)
  • 22. Demo Time Generator ▪ Financial data generated by generator ▪ Written to Kafka topics ▪ Kafka topics consumed by Flink ▪ Flink pipeline operates on Kafka data ▪ Results written back into Kafka
  • 24. TL;DL ▪ Apache Flink runs on Mesos using Fenzo ▪ New distributed architecture supports dynamic resource allocation ▪ DC/OS offers easy to use Flink package