Containerized Data Persistence on Mesos

Joe Stein
Joe SteinArchitect, Developer, Technologist
Containerized Data Persistence
on Mesos with Kafka, MySQL,
Cassandra, HDFS and More!
CEO of Elodina, Inc. Elodina http://www.elodina.net/ is a startup focusing
on the support & maintenance of third party open source software (like
Mesos frameworks) and offering SaaS based solutions for those
systems. Elodina started as Big Data Open Source Security
http://stealth.ly and has been working for the last couple of years on
implementing and assisting organizations with their Kafka, Mesos,
Hadoop, Cassandra, Accumulo, Storm, Spark, etc, Big Data systems.
Twitter: https://twitter.com/allthingshadoop
LinkedIn: https://www.linkedin.com/in/charmalloc
Joe Stein
◉ File systems, databases, object
stores, storage solutions, etc.
◉ Apache Mesos and the Datacenter
Operating System.
◉ Kafka, Cassandra, MySQL, HDFS.
Overview
File Systems
- manages space
- directories
- file names
- meta-data
- permissions
- compression
- quotas
Distributed File System
- Remote block management
- Replication
- Streaming Data Access
- Large Data Sets
Replicated Log
- Immutable Appends
- Replicated Partitions
- Messaging Features
- Log Retention
Transactional and/or Relational Databases ~ ACID
Dynamo
Storage Solutions
- Storage Area Networks
- Network Attached Storage
- W.O.R.M.
- Cold Storage
Quick intro to Mesos
Static partitioning
Static partitioning
Static partitioning
Static partitioning
Better option
Data Center Operating System
Containerized Data Persistence on Mesos
Mesos
Containerized Data Persistence on Mesos
Resources & Attributes
The Mesos system has two basic methods to describe the
slaves that comprise a cluster. One of these is managed
by the Mesos master, the other is simply passed onwards
to the frameworks using the cluster.
--attributes='disks:sata;raid:jbod;dc:1;rack:3'
Roles
Total consumable resources per slave, in the form 'name(role):value;name(role):value...'. This value can be set
to limit resources per role, or to overstate the number of resources that are available to the slave.
--resources="cpus(*):8; mem(*):15360; disk(*):710534; ports(*):[31000-32000]"
--resources="cpus(prod):8; cpus(stage):2 mem(*):15360; disk(*):710534; ports(*):[31000-32000]"
All * roles will be detected, so you can specify only the resources that are not all roles (*). --
resources="cpus(prod):8; cpus(stage)"
Frameworks bind a specific roles or any. A default roll (instead of *) can also be configured.
Roles can be used to isolate and segregate frameworks.
In coming release(s) to make things even better!
MESOS-2018 Dynamic Reservations
MESOS-1554 Persistent resources support for storage-like
services
MESOS-1279 Add resize task primitive
Apache Kafka with Apache Mesos
mesos/kafka
https://github.com/mesos/kafka
Goals we set out with
● smart broker.id assignment.
● preservation of broker placement (through constraints
and/or new features).
● ability to-do configuration changes.
● rolling restarts (for things like configuration changes).
● scaling the cluster up and down with automatic,
programmatic and manual options.
● smart partition assignment via constraints visa vi
roles, resources and attributes.
Scheduler
● Provides the operational automation for a Kafka Cluster.
● Manages the changes to the broker's configuration.
● Exposes a REST API for the CLI to use or any other
client.
● Runs on Marathon for high availability.
Executor
● The executor interacts with the kafka broker as an
intermediary to the scheduler
Scheduler & Executor
CLI & REST API
● scheduler - starts the scheduler.
● add - adds one more more brokers to the cluster.
● update - changes resources, constraints or broker properties one or more
brokers.
● remove - take a broker out of the cluster.
● start - starts a broker up.
● stop - this can either a graceful shutdown or will force kill it (./kafka-mesos.sh
help stop)
● rebalance - allows you to rebalance a cluster either by selecting the brokers
or topics to rebalance. Manual assignment is still possible using the Apache
Kafka project tools. Rebalance can also change the replication factor on a
topic.
● help - ./kafka-mesos.sh help || ./kafka-mesos.sh help {command}
Launch 20 brokers in seconds
./kafka-mesos.sh add 1000..1019 --cpus 0.01 --heap 128 --mem 256 --options num.io.threads=1
./kafka-mesos.sh start 1000..1019
Kafka is available on DCOS
https://mesosphere.com/product/
dcos install kafka
dcos kafka help
Mesosphere DCOS
Apache Cassandra with Apache
Mesos
Cassandra on Mesos
https://github.com/mesosphere/cassandra-mesos
The Mesos scheduler is the component with the most
high-level intelligence in the framework. It will need to
possess the ability to bootstrap a ring and distribute
the correct configuration to all subsequently started
nodes. The Scheduler will also be responsible for
orchestrating all tasks with regard to restarting nodes
and triggering and monitoring periodic administrative
tasks required by a node.
Cassandra Scheduler
◉ Bootstrapping a ring
◉ Adding nodes to a ring
◉ Restarting a node that has crashed
◉ Providing configuration to nodes
o Seed nodes, Snitch Class, JVM
OPTS
◉ Scheduling and running administrative
utilities
o nodetool repair
o nodetool cleanup
◉ Registers with a failover timeout
◉ Supports framework authentication
◉ Declines offers to resources it
doesn't need
◉ Only use necessary fraction of
offers
◉ Deal with lost tasks
◉ Does not rely on in-memory state
◉ Verifies supported Mesos Version
◉ Supports roles
◉ Able to provide set of ports to be
used by Nodes
◉ Initial implementation will be for a
static set of ports with a potential
for longer term dynamic port usage.
Cassandra Executor
◉ Monitor health of running node
◉ Use JMX Mbeans for interfacing
with Cassandra Server Process
◉ Communicate results of
administrative actions via
StatusUpdates to scheduler
when necessary
◉ Does not rely on file system
state outside sandbox
◉ Pure libprocess
communication with Scheduler
leveraging StatusUpdate
◉ Does not rely on running on a
particular slave node
◉ Data directories will be
created and managed by
Mesos leveraging the features
provided in MESOS-1554
Apache HDFS with Apache Mesos
HDFS on Mesos
https://github.com/mesosphere/hdfs
◉ 3 journal nodes
◉ 2 name nodes (active/standby)
◉ data nodes, lots of them!
◉ Fault tolerance more
than just what Hadoop
gives.
◉ Ease of configuration and
distributing nodes.
◉ Elastic DFS
◉ Run multiple frameworks
at a time for new
solutions
MySQL with Apache Mesos
MySQL on Mesos (Apache Incubating)
◉ Open sourced by Twitter https://github.com/twitter/mysos
◉ Moving to Apache https://twitter.com/ApacheMysos
◉ Dramatically simplifies the management of a MySQL cluster:
o Efficient hardware utilization through multi-tenancy (in performance-
isolated containers)
o High reliability through preserving the MySQL state during failure and
automatic backing up to/restoring from HDFS
o An automated self-service option for bringing up new MySQL clusters
o High availability through automatic MySQL master failover
o An elastic solution that allows users to easily scale up and down a MySQL
cluster by changing the number of slave instances
Questions?
Joe Stein
http://www.elodina.net
1 of 38

Recommended

Making Distributed Data Persistent Services Elastic (Without Losing All Your ... by
Making Distributed Data Persistent Services Elastic (Without Losing All Your ...Making Distributed Data Persistent Services Elastic (Without Losing All Your ...
Making Distributed Data Persistent Services Elastic (Without Losing All Your ...Joe Stein
2.2K views40 slides
Making Apache Kafka Elastic with Apache Mesos by
Making Apache Kafka Elastic with Apache MesosMaking Apache Kafka Elastic with Apache Mesos
Making Apache Kafka Elastic with Apache MesosJoe Stein
7.9K views23 slides
Apache Kafka, HDFS, Accumulo and more on Mesos by
Apache Kafka, HDFS, Accumulo and more on MesosApache Kafka, HDFS, Accumulo and more on Mesos
Apache Kafka, HDFS, Accumulo and more on MesosJoe Stein
7.1K views37 slides
Developing Frameworks for Apache Mesos by
Developing Frameworks  for Apache MesosDeveloping Frameworks  for Apache Mesos
Developing Frameworks for Apache MesosJoe Stein
2.3K views38 slides
Introduction To Apache Mesos by
Introduction To Apache MesosIntroduction To Apache Mesos
Introduction To Apache MesosJoe Stein
1.7K views49 slides
Ceph-Mesos framework by
Ceph-Mesos frameworkCeph-Mesos framework
Ceph-Mesos frameworkZhongyue Luo
1.7K views11 slides

More Related Content

What's hot

Introduction to Mesos by
Introduction to MesosIntroduction to Mesos
Introduction to Mesoskoboltmarky
657 views26 slides
Introduction of mesos persistent storage by
Introduction of mesos persistent storageIntroduction of mesos persistent storage
Introduction of mesos persistent storageZhou Weitao
2.4K views24 slides
Streaming Processing with a Distributed Commit Log by
Streaming Processing with a Distributed Commit LogStreaming Processing with a Distributed Commit Log
Streaming Processing with a Distributed Commit LogJoe Stein
3.1K views77 slides
Apache Mesos by
Apache MesosApache Mesos
Apache MesosPuneet soni
695 views22 slides
Mesos and containers by
Mesos and containersMesos and containers
Mesos and containersJiang Yan Xu
3.8K views34 slides
Elastic HBase on Mesos - HBaseCon 2015 by
Elastic HBase on Mesos - HBaseCon 2015Elastic HBase on Mesos - HBaseCon 2015
Elastic HBase on Mesos - HBaseCon 2015Cosmin Lehene
12.8K views46 slides

What's hot(20)

Introduction to Mesos by koboltmarky
Introduction to MesosIntroduction to Mesos
Introduction to Mesos
koboltmarky657 views
Introduction of mesos persistent storage by Zhou Weitao
Introduction of mesos persistent storageIntroduction of mesos persistent storage
Introduction of mesos persistent storage
Zhou Weitao2.4K views
Streaming Processing with a Distributed Commit Log by Joe Stein
Streaming Processing with a Distributed Commit LogStreaming Processing with a Distributed Commit Log
Streaming Processing with a Distributed Commit Log
Joe Stein3.1K views
Mesos and containers by Jiang Yan Xu
Mesos and containersMesos and containers
Mesos and containers
Jiang Yan Xu3.8K views
Elastic HBase on Mesos - HBaseCon 2015 by Cosmin Lehene
Elastic HBase on Mesos - HBaseCon 2015Elastic HBase on Mesos - HBaseCon 2015
Elastic HBase on Mesos - HBaseCon 2015
Cosmin Lehene12.8K views
Real-Time Distributed and Reactive Systems with Apache Kafka and Apache Accumulo by Joe Stein
Real-Time Distributed and Reactive Systems with Apache Kafka and Apache AccumuloReal-Time Distributed and Reactive Systems with Apache Kafka and Apache Accumulo
Real-Time Distributed and Reactive Systems with Apache Kafka and Apache Accumulo
Joe Stein3.1K views
Cassandra on Mesos Across Multiple Datacenters at Uber (Abhishek Verma) | C* ... by DataStax
Cassandra on Mesos Across Multiple Datacenters at Uber (Abhishek Verma) | C* ...Cassandra on Mesos Across Multiple Datacenters at Uber (Abhishek Verma) | C* ...
Cassandra on Mesos Across Multiple Datacenters at Uber (Abhishek Verma) | C* ...
DataStax11.2K views
8a. How To Setup HBase with Docker by Fabio Fumarola
8a. How To Setup HBase with Docker8a. How To Setup HBase with Docker
8a. How To Setup HBase with Docker
Fabio Fumarola9.8K views
Making Distributed Data Persistent Services Elastic (Without Losing All Your ... by C4Media
Making Distributed Data Persistent Services Elastic (Without Losing All Your ...Making Distributed Data Persistent Services Elastic (Without Losing All Your ...
Making Distributed Data Persistent Services Elastic (Without Losing All Your ...
C4Media529 views
Cassandra Introduction & Features by Phil Peace
Cassandra Introduction & FeaturesCassandra Introduction & Features
Cassandra Introduction & Features
Phil Peace951 views
Introduction to mesos bay by hongbin034
Introduction to mesos bayIntroduction to mesos bay
Introduction to mesos bay
hongbin034474 views
Introduction to Apache Mesos by tomasbart
Introduction to Apache MesosIntroduction to Apache Mesos
Introduction to Apache Mesos
tomasbart25.8K views
Introduction to Apache Mesos by Knoldus Inc.
Introduction to Apache MesosIntroduction to Apache Mesos
Introduction to Apache Mesos
Knoldus Inc.1K views
HBaseConEast2016: HBase on Docker with Clusterdock by Michael Stack
HBaseConEast2016: HBase on Docker with ClusterdockHBaseConEast2016: HBase on Docker with Clusterdock
HBaseConEast2016: HBase on Docker with Clusterdock
Michael Stack753 views
Cassandra and Rails at LA NoSQL Meetup by Michael Wynholds
Cassandra and Rails at LA NoSQL MeetupCassandra and Rails at LA NoSQL Meetup
Cassandra and Rails at LA NoSQL Meetup
Michael Wynholds2.8K views
Drupaljam 2017 - Deploying Drupal 8 onto Hosted Kubernetes in Google Cloud by Dropsolid
Drupaljam 2017 - Deploying Drupal 8 onto Hosted Kubernetes in Google CloudDrupaljam 2017 - Deploying Drupal 8 onto Hosted Kubernetes in Google Cloud
Drupaljam 2017 - Deploying Drupal 8 onto Hosted Kubernetes in Google Cloud
Dropsolid3.5K views
Develop with linux containers and docker by Fabio Fumarola
Develop with linux containers and dockerDevelop with linux containers and docker
Develop with linux containers and docker
Fabio Fumarola1.4K views

Viewers also liked

Real-Time Log Analysis with Apache Mesos, Kafka and Cassandra by
Real-Time Log Analysis with Apache Mesos, Kafka and CassandraReal-Time Log Analysis with Apache Mesos, Kafka and Cassandra
Real-Time Log Analysis with Apache Mesos, Kafka and CassandraJoe Stein
9.7K views37 slides
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기 by
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기종빈 오
1.4K views40 slides
하스켈학교 세미나 - Haxl by
하스켈학교 세미나 - Haxl하스켈학교 세미나 - Haxl
하스켈학교 세미나 - HaxlJooyung Han
556 views36 slides
jstein.cassandra.nyc.2011 by
jstein.cassandra.nyc.2011jstein.cassandra.nyc.2011
jstein.cassandra.nyc.2011Joe Stein
2.3K views21 slides
Data Pipeline with Kafka by
Data Pipeline with KafkaData Pipeline with Kafka
Data Pipeline with KafkaPeerapat Asoktummarungsri
1.4K views33 slides
Storing Time Series Metrics With Cassandra and Composite Columns by
Storing Time Series Metrics With Cassandra and Composite ColumnsStoring Time Series Metrics With Cassandra and Composite Columns
Storing Time Series Metrics With Cassandra and Composite ColumnsJoe Stein
5.1K views14 slides

Viewers also liked(17)

Real-Time Log Analysis with Apache Mesos, Kafka and Cassandra by Joe Stein
Real-Time Log Analysis with Apache Mesos, Kafka and CassandraReal-Time Log Analysis with Apache Mesos, Kafka and Cassandra
Real-Time Log Analysis with Apache Mesos, Kafka and Cassandra
Joe Stein9.7K views
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기 by 종빈 오
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
종빈 오1.4K views
하스켈학교 세미나 - Haxl by Jooyung Han
하스켈학교 세미나 - Haxl하스켈학교 세미나 - Haxl
하스켈학교 세미나 - Haxl
Jooyung Han556 views
jstein.cassandra.nyc.2011 by Joe Stein
jstein.cassandra.nyc.2011jstein.cassandra.nyc.2011
jstein.cassandra.nyc.2011
Joe Stein2.3K views
Storing Time Series Metrics With Cassandra and Composite Columns by Joe Stein
Storing Time Series Metrics With Cassandra and Composite ColumnsStoring Time Series Metrics With Cassandra and Composite Columns
Storing Time Series Metrics With Cassandra and Composite Columns
Joe Stein5.1K views
Developing Realtime Data Pipelines With Apache Kafka by Joe Stein
Developing Realtime Data Pipelines With Apache KafkaDeveloping Realtime Data Pipelines With Apache Kafka
Developing Realtime Data Pipelines With Apache Kafka
Joe Stein4.9K views
Apache Cassandra 2.0 by Joe Stein
Apache Cassandra 2.0Apache Cassandra 2.0
Apache Cassandra 2.0
Joe Stein6.4K views
Developing Real-Time Data Pipelines with Apache Kafka by Joe Stein
Developing Real-Time Data Pipelines with Apache KafkaDeveloping Real-Time Data Pipelines with Apache Kafka
Developing Real-Time Data Pipelines with Apache Kafka
Joe Stein2.7K views
Introduction Apache Kafka by Joe Stein
Introduction Apache KafkaIntroduction Apache Kafka
Introduction Apache Kafka
Joe Stein5.1K views
Developing with the Go client for Apache Kafka by Joe Stein
Developing with the Go client for Apache KafkaDeveloping with the Go client for Apache Kafka
Developing with the Go client for Apache Kafka
Joe Stein20.9K views
Current and Future of Apache Kafka by Joe Stein
Current and Future of Apache KafkaCurrent and Future of Apache Kafka
Current and Future of Apache Kafka
Joe Stein9K views
SMACK Stack 1.1 by Joe Stein
SMACK Stack 1.1SMACK Stack 1.1
SMACK Stack 1.1
Joe Stein5.7K views
Hadoop Streaming Tutorial With Python by Joe Stein
Hadoop Streaming Tutorial With PythonHadoop Streaming Tutorial With Python
Hadoop Streaming Tutorial With Python
Joe Stein9.9K views
cloud scheduling by Mudit Verma
cloud schedulingcloud scheduling
cloud scheduling
Mudit Verma9.2K views
core.logic (Clojure) by Seonho Kim
core.logic (Clojure)core.logic (Clojure)
core.logic (Clojure)
Seonho Kim5.2K views
Apache Kafka by Joe Stein
Apache KafkaApache Kafka
Apache Kafka
Joe Stein23.8K views

Similar to Containerized Data Persistence on Mesos

Fully fault tolerant real time data pipeline with docker and mesos by
Fully fault tolerant real time data pipeline with docker and mesos Fully fault tolerant real time data pipeline with docker and mesos
Fully fault tolerant real time data pipeline with docker and mesos Rahul Kumar
359 views37 slides
Fully Fault tolerant Streaming Workflows at Scale using Apache Mesos & Spark ... by
Fully Fault tolerant Streaming Workflows at Scale using Apache Mesos & Spark ...Fully Fault tolerant Streaming Workflows at Scale using Apache Mesos & Spark ...
Fully Fault tolerant Streaming Workflows at Scale using Apache Mesos & Spark ...Akhil Das
993 views16 slides
OSDC 2015: Bernd Mathiske | Why the Datacenter Needs an Operating System by
OSDC 2015: Bernd Mathiske | Why the Datacenter Needs an Operating SystemOSDC 2015: Bernd Mathiske | Why the Datacenter Needs an Operating System
OSDC 2015: Bernd Mathiske | Why the Datacenter Needs an Operating SystemNETWAYS
243 views33 slides
DataStax | Building a Spark Streaming App with DSE File System (Rocco Varela)... by
DataStax | Building a Spark Streaming App with DSE File System (Rocco Varela)...DataStax | Building a Spark Streaming App with DSE File System (Rocco Varela)...
DataStax | Building a Spark Streaming App with DSE File System (Rocco Varela)...DataStax
2.4K views27 slides
Realtime Data Pipeline with Spark Streaming and Cassandra with Mesos (Rahul K... by
Realtime Data Pipeline with Spark Streaming and Cassandra with Mesos (Rahul K...Realtime Data Pipeline with Spark Streaming and Cassandra with Mesos (Rahul K...
Realtime Data Pipeline with Spark Streaming and Cassandra with Mesos (Rahul K...DataStax
7.1K views39 slides
Real time data pipeline with spark streaming and cassandra with mesos by
Real time data pipeline with spark streaming and cassandra with mesosReal time data pipeline with spark streaming and cassandra with mesos
Real time data pipeline with spark streaming and cassandra with mesosRahul Kumar
471 views39 slides

Similar to Containerized Data Persistence on Mesos(20)

Fully fault tolerant real time data pipeline with docker and mesos by Rahul Kumar
Fully fault tolerant real time data pipeline with docker and mesos Fully fault tolerant real time data pipeline with docker and mesos
Fully fault tolerant real time data pipeline with docker and mesos
Rahul Kumar359 views
Fully Fault tolerant Streaming Workflows at Scale using Apache Mesos & Spark ... by Akhil Das
Fully Fault tolerant Streaming Workflows at Scale using Apache Mesos & Spark ...Fully Fault tolerant Streaming Workflows at Scale using Apache Mesos & Spark ...
Fully Fault tolerant Streaming Workflows at Scale using Apache Mesos & Spark ...
Akhil Das993 views
OSDC 2015: Bernd Mathiske | Why the Datacenter Needs an Operating System by NETWAYS
OSDC 2015: Bernd Mathiske | Why the Datacenter Needs an Operating SystemOSDC 2015: Bernd Mathiske | Why the Datacenter Needs an Operating System
OSDC 2015: Bernd Mathiske | Why the Datacenter Needs an Operating System
NETWAYS243 views
DataStax | Building a Spark Streaming App with DSE File System (Rocco Varela)... by DataStax
DataStax | Building a Spark Streaming App with DSE File System (Rocco Varela)...DataStax | Building a Spark Streaming App with DSE File System (Rocco Varela)...
DataStax | Building a Spark Streaming App with DSE File System (Rocco Varela)...
DataStax2.4K views
Realtime Data Pipeline with Spark Streaming and Cassandra with Mesos (Rahul K... by DataStax
Realtime Data Pipeline with Spark Streaming and Cassandra with Mesos (Rahul K...Realtime Data Pipeline with Spark Streaming and Cassandra with Mesos (Rahul K...
Realtime Data Pipeline with Spark Streaming and Cassandra with Mesos (Rahul K...
DataStax7.1K views
Real time data pipeline with spark streaming and cassandra with mesos by Rahul Kumar
Real time data pipeline with spark streaming and cassandra with mesosReal time data pipeline with spark streaming and cassandra with mesos
Real time data pipeline with spark streaming and cassandra with mesos
Rahul Kumar471 views
Getting Started Running Apache Spark on Apache Mesos by Paco Nathan
Getting Started Running Apache Spark on Apache MesosGetting Started Running Apache Spark on Apache Mesos
Getting Started Running Apache Spark on Apache Mesos
Paco Nathan13.6K views
Big Data Open Source Security LLC: Realtime log analysis with Mesos, Docker, ... by DataStax Academy
Big Data Open Source Security LLC: Realtime log analysis with Mesos, Docker, ...Big Data Open Source Security LLC: Realtime log analysis with Mesos, Docker, ...
Big Data Open Source Security LLC: Realtime log analysis with Mesos, Docker, ...
DataStax Academy1.2K views
xPatterns on Spark, Tachyon and Mesos - Bucharest meetup by Radu Chilom
xPatterns on Spark, Tachyon and Mesos - Bucharest meetupxPatterns on Spark, Tachyon and Mesos - Bucharest meetup
xPatterns on Spark, Tachyon and Mesos - Bucharest meetup
Radu Chilom506 views
Reusable, composable, battle-tested Terraform modules by Yevgeniy Brikman
Reusable, composable, battle-tested Terraform modulesReusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modules
Yevgeniy Brikman28.4K views
DockerCon14 Cluster Management and Containerization by Docker, Inc.
DockerCon14 Cluster Management and ContainerizationDockerCon14 Cluster Management and Containerization
DockerCon14 Cluster Management and Containerization
Docker, Inc.2.8K views
Spark on Mesos-A Deep Dive-(Dean Wampler and Tim Chen, Typesafe and Mesosphere) by Spark Summit
Spark on Mesos-A Deep Dive-(Dean Wampler and Tim Chen, Typesafe and Mesosphere)Spark on Mesos-A Deep Dive-(Dean Wampler and Tim Chen, Typesafe and Mesosphere)
Spark on Mesos-A Deep Dive-(Dean Wampler and Tim Chen, Typesafe and Mesosphere)
Spark Summit8.2K views
Abhishek Kumar - CloudStack Locking Service by ShapeBlue
Abhishek Kumar - CloudStack Locking ServiceAbhishek Kumar - CloudStack Locking Service
Abhishek Kumar - CloudStack Locking Service
ShapeBlue489 views
In Memory Analytics with Apache Spark by Venkata Naga Ravi
In Memory Analytics with Apache SparkIn Memory Analytics with Apache Spark
In Memory Analytics with Apache Spark
Venkata Naga Ravi3.5K views
Cassandra - A decentralized storage system by Arunit Gupta
Cassandra - A decentralized storage systemCassandra - A decentralized storage system
Cassandra - A decentralized storage system
Arunit Gupta1.2K views
HPC and cloud distributed computing, as a journey by Peter Clapham
HPC and cloud distributed computing, as a journeyHPC and cloud distributed computing, as a journey
HPC and cloud distributed computing, as a journey
Peter Clapham871 views
Big data processing using hadoop poster presentation by Amrut Patil
Big data processing using hadoop poster presentationBig data processing using hadoop poster presentation
Big data processing using hadoop poster presentation
Amrut Patil3K views
Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ... by Accumulo Summit
Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...
Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...
Accumulo Summit1.4K views

Recently uploaded

Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT by
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBITUpdates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBITShapeBlue
138 views8 slides
State of the Union - Rohit Yadav - Apache CloudStack by
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStackShapeBlue
218 views53 slides
Microsoft Power Platform.pptx by
Microsoft Power Platform.pptxMicrosoft Power Platform.pptx
Microsoft Power Platform.pptxUni Systems S.M.S.A.
74 views38 slides
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ... by
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...ShapeBlue
121 views15 slides
Uni Systems for Power Platform.pptx by
Uni Systems for Power Platform.pptxUni Systems for Power Platform.pptx
Uni Systems for Power Platform.pptxUni Systems S.M.S.A.
60 views21 slides
"Surviving highload with Node.js", Andrii Shumada by
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada Fwdays
49 views29 slides

Recently uploaded(20)

Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT by ShapeBlue
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBITUpdates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
ShapeBlue138 views
State of the Union - Rohit Yadav - Apache CloudStack by ShapeBlue
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStack
ShapeBlue218 views
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ... by ShapeBlue
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...
ShapeBlue121 views
"Surviving highload with Node.js", Andrii Shumada by Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays49 views
DRBD Deep Dive - Philipp Reisner - LINBIT by ShapeBlue
DRBD Deep Dive - Philipp Reisner - LINBITDRBD Deep Dive - Philipp Reisner - LINBIT
DRBD Deep Dive - Philipp Reisner - LINBIT
ShapeBlue110 views
Data Integrity for Banking and Financial Services by Precisely
Data Integrity for Banking and Financial ServicesData Integrity for Banking and Financial Services
Data Integrity for Banking and Financial Services
Precisely76 views
Digital Personal Data Protection (DPDP) Practical Approach For CISOs by Priyanka Aash
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Priyanka Aash103 views
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ... by ShapeBlue
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
ShapeBlue48 views
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue by ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
ShapeBlue63 views
Business Analyst Series 2023 - Week 4 Session 7 by DianaGray10
Business Analyst Series 2023 -  Week 4 Session 7Business Analyst Series 2023 -  Week 4 Session 7
Business Analyst Series 2023 - Week 4 Session 7
DianaGray10110 views
The Power of Heat Decarbonisation Plans in the Built Environment by IES VE
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built Environment
IES VE67 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software373 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue113 views
Confidence in CloudStack - Aron Wagner, Nathan Gleason - Americ by ShapeBlue
Confidence in CloudStack - Aron Wagner, Nathan Gleason - AmericConfidence in CloudStack - Aron Wagner, Nathan Gleason - Americ
Confidence in CloudStack - Aron Wagner, Nathan Gleason - Americ
ShapeBlue58 views
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava... by ShapeBlue
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
ShapeBlue74 views
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue by ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
ShapeBlue75 views

Containerized Data Persistence on Mesos

  • 1. Containerized Data Persistence on Mesos with Kafka, MySQL, Cassandra, HDFS and More!
  • 2. CEO of Elodina, Inc. Elodina http://www.elodina.net/ is a startup focusing on the support & maintenance of third party open source software (like Mesos frameworks) and offering SaaS based solutions for those systems. Elodina started as Big Data Open Source Security http://stealth.ly and has been working for the last couple of years on implementing and assisting organizations with their Kafka, Mesos, Hadoop, Cassandra, Accumulo, Storm, Spark, etc, Big Data systems. Twitter: https://twitter.com/allthingshadoop LinkedIn: https://www.linkedin.com/in/charmalloc Joe Stein
  • 3. ◉ File systems, databases, object stores, storage solutions, etc. ◉ Apache Mesos and the Datacenter Operating System. ◉ Kafka, Cassandra, MySQL, HDFS. Overview
  • 4. File Systems - manages space - directories - file names - meta-data - permissions - compression - quotas
  • 5. Distributed File System - Remote block management - Replication - Streaming Data Access - Large Data Sets
  • 6. Replicated Log - Immutable Appends - Replicated Partitions - Messaging Features - Log Retention
  • 9. Storage Solutions - Storage Area Networks - Network Attached Storage - W.O.R.M. - Cold Storage
  • 10. Quick intro to Mesos
  • 18. Mesos
  • 20. Resources & Attributes The Mesos system has two basic methods to describe the slaves that comprise a cluster. One of these is managed by the Mesos master, the other is simply passed onwards to the frameworks using the cluster. --attributes='disks:sata;raid:jbod;dc:1;rack:3'
  • 21. Roles Total consumable resources per slave, in the form 'name(role):value;name(role):value...'. This value can be set to limit resources per role, or to overstate the number of resources that are available to the slave. --resources="cpus(*):8; mem(*):15360; disk(*):710534; ports(*):[31000-32000]" --resources="cpus(prod):8; cpus(stage):2 mem(*):15360; disk(*):710534; ports(*):[31000-32000]" All * roles will be detected, so you can specify only the resources that are not all roles (*). -- resources="cpus(prod):8; cpus(stage)" Frameworks bind a specific roles or any. A default roll (instead of *) can also be configured. Roles can be used to isolate and segregate frameworks.
  • 22. In coming release(s) to make things even better! MESOS-2018 Dynamic Reservations MESOS-1554 Persistent resources support for storage-like services MESOS-1279 Add resize task primitive
  • 23. Apache Kafka with Apache Mesos
  • 25. Goals we set out with ● smart broker.id assignment. ● preservation of broker placement (through constraints and/or new features). ● ability to-do configuration changes. ● rolling restarts (for things like configuration changes). ● scaling the cluster up and down with automatic, programmatic and manual options. ● smart partition assignment via constraints visa vi roles, resources and attributes.
  • 26. Scheduler ● Provides the operational automation for a Kafka Cluster. ● Manages the changes to the broker's configuration. ● Exposes a REST API for the CLI to use or any other client. ● Runs on Marathon for high availability. Executor ● The executor interacts with the kafka broker as an intermediary to the scheduler Scheduler & Executor
  • 27. CLI & REST API ● scheduler - starts the scheduler. ● add - adds one more more brokers to the cluster. ● update - changes resources, constraints or broker properties one or more brokers. ● remove - take a broker out of the cluster. ● start - starts a broker up. ● stop - this can either a graceful shutdown or will force kill it (./kafka-mesos.sh help stop) ● rebalance - allows you to rebalance a cluster either by selecting the brokers or topics to rebalance. Manual assignment is still possible using the Apache Kafka project tools. Rebalance can also change the replication factor on a topic. ● help - ./kafka-mesos.sh help || ./kafka-mesos.sh help {command}
  • 28. Launch 20 brokers in seconds ./kafka-mesos.sh add 1000..1019 --cpus 0.01 --heap 128 --mem 256 --options num.io.threads=1 ./kafka-mesos.sh start 1000..1019
  • 29. Kafka is available on DCOS https://mesosphere.com/product/ dcos install kafka dcos kafka help Mesosphere DCOS
  • 30. Apache Cassandra with Apache Mesos
  • 31. Cassandra on Mesos https://github.com/mesosphere/cassandra-mesos The Mesos scheduler is the component with the most high-level intelligence in the framework. It will need to possess the ability to bootstrap a ring and distribute the correct configuration to all subsequently started nodes. The Scheduler will also be responsible for orchestrating all tasks with regard to restarting nodes and triggering and monitoring periodic administrative tasks required by a node.
  • 32. Cassandra Scheduler ◉ Bootstrapping a ring ◉ Adding nodes to a ring ◉ Restarting a node that has crashed ◉ Providing configuration to nodes o Seed nodes, Snitch Class, JVM OPTS ◉ Scheduling and running administrative utilities o nodetool repair o nodetool cleanup ◉ Registers with a failover timeout ◉ Supports framework authentication ◉ Declines offers to resources it doesn't need ◉ Only use necessary fraction of offers ◉ Deal with lost tasks ◉ Does not rely on in-memory state ◉ Verifies supported Mesos Version ◉ Supports roles ◉ Able to provide set of ports to be used by Nodes ◉ Initial implementation will be for a static set of ports with a potential for longer term dynamic port usage.
  • 33. Cassandra Executor ◉ Monitor health of running node ◉ Use JMX Mbeans for interfacing with Cassandra Server Process ◉ Communicate results of administrative actions via StatusUpdates to scheduler when necessary ◉ Does not rely on file system state outside sandbox ◉ Pure libprocess communication with Scheduler leveraging StatusUpdate ◉ Does not rely on running on a particular slave node ◉ Data directories will be created and managed by Mesos leveraging the features provided in MESOS-1554
  • 34. Apache HDFS with Apache Mesos
  • 35. HDFS on Mesos https://github.com/mesosphere/hdfs ◉ 3 journal nodes ◉ 2 name nodes (active/standby) ◉ data nodes, lots of them! ◉ Fault tolerance more than just what Hadoop gives. ◉ Ease of configuration and distributing nodes. ◉ Elastic DFS ◉ Run multiple frameworks at a time for new solutions
  • 37. MySQL on Mesos (Apache Incubating) ◉ Open sourced by Twitter https://github.com/twitter/mysos ◉ Moving to Apache https://twitter.com/ApacheMysos ◉ Dramatically simplifies the management of a MySQL cluster: o Efficient hardware utilization through multi-tenancy (in performance- isolated containers) o High reliability through preserving the MySQL state during failure and automatic backing up to/restoring from HDFS o An automated self-service option for bringing up new MySQL clusters o High availability through automatic MySQL master failover o An elastic solution that allows users to easily scale up and down a MySQL cluster by changing the number of slave instances