Mesosphere and the Enterprise: Run Your Applications on Apache Mesos
Steve Wong Open Source Engineer
@cantbewong {code} by Dell EMC
© Copyright 2017 Dell Inc. 2
Open source at Dell EMC
– Contribute to meaningful OSS projects – Create new thought leading OSS applications – Drive awareness of OSS opportunities with Dell EMC
product teams – Participate in relevant community engagement projects – Act in the interest of building a community
{code} by Dell EMC is a group of passionate open source engineers and advocates working to build a community around software-based infrastructure.
Platinum Sponsor
© Copyright 2017 Dell Inc. 3
Why Containers? They make managing applications easier • Speed up software innovation
• Deployments are simple
• Creates portable, shareable and reusable units of code and requirements
Code Code and requirements Container
© Copyright 2017 Dell Inc. 4
What is Mesosphere DC/OS?
From a resource perspective:
It’s an infrastructure abstraction layer: – Aggregates systems into a single resource pool.
From an application perspective:
It simplifies management of distributed technologies – A scheduler (= dispatcher). – Dispatches workloads which consume the pooled resources.
© Copyright 2017 Dell Inc. 5
History
Started at UC Berkeley in 2009, became an Apache project in 2013 after nearly two years in incubation
© Copyright 2017 Dell Inc. 6
Project Objective
Deliver Google’s Borg to the rest or world See Wired: How Twitter rebuilt Google’s Borg March 2013
© Copyright 2017 Dell Inc. 7
Two levels of Application Support
Generic
Run anything that can be launched in a standard Linux shell + Docker images
Framework
Allows you to implement a sub-scheduler – Extends Mesos to provide custom workload placement and resource
allocation › For example, reserve 10% of the cluster’s resources to Hadoop jobs,
framework manages prioritized dispatch
© Copyright 2017 Dell Inc. 8
With Marathon & Metronome, all types of jobs are managed
© Copyright 2017 Dell Inc. 9
Marathon Marathon acts as a service dispatcher You provide instructions and Marathon does its best to keep the service up on the cluster, providing automated scaling and high availability restarts
© Copyright 2017 Dell Inc. 10
Metronome – a “chron” for the datacenter Specify:
•The amount of CPU your job will consume.
•The amount of memory your job will consume.
•The disk space your job will consume.
•The schedule for your job, in cron format. You can also set the time zone and starting deadline.
© Copyright 2017 Dell Inc. 11
Overview of Enterprise DC/OS
© Copyright 2017 Dell Inc. 12
Where can you run Mesos?
© Copyright 2017 Dell Inc. 13
Any limitations on what I can use for cluster nodes?
• They do not have to be identical
• Processor model, speed or memory size variations are OK
• They can concurrently run non-Mesos services
• don’t have to give Mesos control over 100% of node’s CPU, memory or disk.
• Elastic scaling is supported
• nodes can come and go
© Copyright 2017 Dell Inc. 14
Production Users & Customers
Government Agencies
© Copyright 2017 Dell Inc. 15
Efficiency and Utilization
Typical Datacenter siloed, over-provisioned servers,
low utilization
DCOS Datacenter automated schedulers, workload multiplexing onto the
same machines
DCOS Multiplexing 30-40% utilization, up to 96% at some customers
4X Industry Average 12-15% utilization
© Copyright 2017 Dell Inc. 16
How big can this really go? Performance Characteristics
© Copyright 2017 Dell Inc. 17
Performance metric at scale
50,000 containers deployed live on stage 1 minute 12 seconds
© Copyright 2017 Dell Inc. 18
Architecture
© Copyright 2017 Dell Inc. 19
How {code} by Dell EMC fits with Mesos
© Copyright 2017 Dell Inc. 20
Back in 2012 container aps must be stateless?
© Copyright 2017 Dell Inc. 21
The picture today
© Copyright 2017 Dell Inc. 22
External Volume Mount Solution
© Copyright 2017 Dell Inc. 23
External Volume Mount Addresses
Availability Risk
•Migrate container to another host – your storage is gone
•Host goes down – your service goes down
Scale Limitation
•Need more storage than the host has? Sorry…
© Copyright 2017 Dell Inc. 24
Components
REX-Ray rexray.codedellemc.com
© Copyright 2017 Dell Inc. 25
REX-Ray
REX-Ray
The leading container storage orchestration engine enabling persistence for cloud native workloads
rexray.codedellemc.com
Cloud Native Interoperability
Open Source
Enterprise Ready – High Availability – CLI Intuitiveness – Effortless Deployment – Architectural Choices
Multi-Platform Storage Management – Storage agnostic (block/file/object)
© Copyright 2017 Dell Inc. 29
Mesos Container Framework Integration
• Marathon from Mesosphere
• Apache Aurora (originally used by Twitter)
• ElasticSeach
© Copyright 2017 Dell Inc. 30
End-to-End Container Persistence Leadership for Mesos
What does it do
Enables external storage to be created / mounted /
unmounted with each agent task
Abstracts Docker Volume Drivers for Mesos Storage orchestration engine
Cool factor
• First Mesos Agent external storage module
• Merged into Mesos 1.0 (2016)
• Allows the use of any Docker volume driver with Mesos!
• Vendor agnostic • DC/OS 1.7+ framework
(2016)
mesos-module-dvdi Docker Volume Driver
Client CLI DVDCLI
REX-Ray
© Copyright 2017 Dell Inc. 31
ScaleIO Framework for Mesos
• A Software-based Storage Framework using ScaleIO to turn commidy hardware and direct attached storage (DAS) into a globally accessible and scalable storage platform that can be deployed anywhere
• Framework installs and configures ScaleIO on all Mesos Agent (compute) nodes. As more Agents are added to the cluster, ScaleIO is installed and adds storage resources to the cluster.
• Deploy and Configure ScaleIO without knowing operational details
• Centralized Monitoring of the storage platform
• Persistent storage native to the container scheduling platform using REX-Ray
• https://github.com/codedellemc/scaleio-framework
© Copyright 2017 Dell Inc. 32
{code} + Mesos
Mesos Module DVDI is officially merged into Mesos 1.0 and allows
any Docker Volume Driver to be used with Mesos Frameworks
REX-Ray is installed on every host and performs storage
orchestration
MARATHON ScaleIO-Framework
installs ScaleIO software on all Mesos Agents
SUPPORTED STORAGE PLATFORMS WITH REX-RAY
© Copyright 2017 Dell Inc. 33
Demo!
DC/OS / Marathon Mesos Database Deploy
© Copyright 2017 Dell Inc. 34
codedellemc.com
community.codedellemc.com
@codeDellEMC
blog.codedellemc.com
{code} by Dell EMC is a group of passionate open source engineers and
advocates working to build a community around software-based infrastructure.
rexray.codedellemc.com
github.com/codedellemc/labs
Steve Wong @cantbewong github.com/cantbewong
HOL01 Use REX-Ray & ScaleIO w/ Docker, Mesos and Kubernetes