SlideShare a Scribd company logo
MESOS @ 
Feedback/questions @samsalisbury
WHO AM I? 
• Engineer at OpenTable for 1 year 
• New to Mesos 
• Mostly working in Go 
• @samsalisbury on twitter/github
Diners Restaurants
Many Few
! +Canada 
" 
+Mexico 
# $
A HUGE ASP.NET APP 
Prior to 2012
VM 
A HUGE ASP.NET APP 
Prior to 2012
DATACENTRE 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
Prior to 2012
DATACENTRE 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
Prior to 2012
DATACENTRE 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
APP 
VM 
A HUGE 
ASP.NET 
PriorA tPoP 2012
DATACENTRE 
“Fortnightly” VM 
big VM 
bang deployments. 
VM 
A HUGE 
A HUGE 
A HUGE 
Tech ASP.constrained NET 
ASP.NET 
ASP.NET 
APP 
APP 
to single APP 
platform. 
One VM 
defect blocks VM 
all progress. 
VM 
A HUGE 
A HUGE 
A HUGE 
Difficult ASP.NET 
to experiment ASP.NET 
with ASP.NET 
APP 
APP 
APP 
features. 
VM 
A HUGE 
ASP.NET 
APP 
Not much fun. 
VM 
A HUGE 
ASP.NET 
APP
DATACENTRE 
“Fortnightly” VM 
VM 
release cycle. 
VM 
A HUGE 
A HUGE 
A HUGE 
ASP.Big NET 
bang ASP.deployments. 
NET 
ASP.NET 
APP 
APP 
APP 
One VM 
defect blocks VM 
all progress. 
VM 
A HUGE 
A HUGE 
A HUGE 
Difficult ASP.NET 
to experiment ASP.NET 
with ASP.NET 
APP 
APP 
APP 
features. 
VM 
A HUGE 
ASP.NET 
APP 
Not much fun. 
VM 
A HUGE 
ASP.NET 
APP 
Early 2012
SOA all the things!
CODE BASE 
A HUGE ASP.NET APP 
Prior to 2012
CODE BASE 
EXTERNAL 
API SEARCH REVIEWS 
EMAILS WHITE 
LABEL 
REST. 
PROFILES 
RESERV-ATION 
API 
PHOTO 
SERVICE REST. A P I 
PERSON 
API 
HOME 
PAGE WIDGETS 
CONTENT 
F RONT SERVICE DOOR SVC 
MENU AP I 
FEEDBACK 
AVAI LAB-I 
LEGACY 
FORM 
L I T Y A P I 
API 
Now
CODE BASE 
Release EXTERNAL 
whenever API SEARCH a feature REVIEWS 
is ready. 
Use whatever EMAILS tech WHITE 
REST. 
LABEL 
is most PROFILES 
appropriate. 
RESERV-ATION 
PHOTO 
No one API 
defect SERVICE blocks all REST. progress. 
A P I 
PERSON 
HOME 
Easy API 
to experiment PAGE with WIDGETS 
features. 
CONTENT 
F RONT SERVICE DOOR MENU AP I 
Much more SVC 
fun! 
FEEDBACK 
AVAI LAB-I 
LEGACY 
FORM 
L I T Y A P I 
API 
Now
CODE BASE 
EXTERNAL 
API SEARCH REVIEWS 
EMAILS WHITE 
LABEL 
REST. 
PROFILES 
RESERV-ATION 
API 
PHOTO 
SERVICE REST. A P I 
PERSON 
API 
However. 
HOME 
PAGE WIDGETS 
CONTENT 
F RONT SERVICE DOOR SVC 
MENU AP I 
FEEDBACK 
AVAI LAB-I 
LEGACY 
FORM 
L I T Y A P I 
API 
Now
DATACENTRE 
VM 
EXTERNAL 
API 
VM 
SEARCH 
VM 
REVIEWS 
VM 
EMAILS 
VM 
RESERVAT-ION 
API 
VM 
VM 
WHITE 
LABEL 
VM 
REST. 
PROFILES 
VM 
PHOTO 
SERVICE 
VM 
REST. A P I 
VM VM
DATACENTRE 
VM 
EXTERNAL 
API 
VM 
SEARCH 
VM 
REVIEWS 
VM 
EMAILS 
VM 
RESERVAT-ION 
API 
VM 
VM 
WHITE 
LABEL 
VM 
REST. 
PROFILES 
VM 
PHOTO 
SERVICE 
VM 
REST. A P I 
VM VM
DATACENTRE 
VM 
SEARCH 
VVMM VVMM 
VVMM VM 
REVIEWS 
VM 
EMAILS 
VVMM VVMM 
RESERVAT-ION 
API 
VVMM VVMM 
WHITE 
LABEL 
VVMM VVMM 
REST. 
PROFILES 
VVMM VVMM 
PHOTO 
SERVICE 
VM 
REST. A P I 
VM 
EXTERNAL 
API
DATACENTRE 
VM 
SEARCH 
VVMM VVMM 
VVMM VM 
REVIEWS 
VM 
EMAILS 
VVMM VVMM 
RESERVAT-ION 
API 
VVMM VVMM 
WHITE 
LABEL 
VVMM VVMM 
REST. 
PROFILES 
VVMM VVMM 
PHOTO 
SERVICE 
VM 
REST. A P I 
VM 
EXTERNAL 
API 1,231 
servers, and rising 
(source: Puppetboard)
DATACENTRE 
VM 
SEARCH 
VVMM VVMM 
VVMM VM 
REVIEWS 
VM 
EMAILS 
VVMM VVMM 
RESERVAT-ION 
API 
VVMM VVMM 
WHITE 
LABEL 
VVMM VVMM 
REST. 
PROFILES 
VVMM VVMM 
PHOTO 
SERVICE 
VM 
REST. A P I 
VM 
EXTERNAL 
API 1,231 
servers, and rising 
(source: Puppetboard) 
This is expensive.
DATACENTRE 
VM 
SEARCH 
VVMM VVMM 
VVMM VM 
REVIEWS 
VM 
EMAILS 
VVMM VVMM 
RESERVAT-ION 
API 
VVMM VVMM 
WHITE 
LABEL 
VVMM VVMM 
REST. 
PROFILES 
VVMM VVMM 
PHOTO 
SERVICE 
VM 
REST. A P I 
VM 
EXTERNAL 
API 1,231 
servers, and rising 
(source: Puppetboard) 
This is expensive. 
And hard to manage.
DATACENTRE 
VM 
SEARCH 
VVMM VVMM 
VVMM VM 
REVIEWS 
VM 
EMAILS 
VVMM VVMM 
RESERVAT-ION 
API 
VVMM VVMM 
WHITE 
LABEL 
VVMM VVMM 
REST. 
PROFILES 
VVMM VVMM 
PHOTO 
SERVICE 
VM 
REST. A P I 
VM 
EXTERNAL 
API 
WDWDN?
Puppetise all the things! everything. 
Mid 2013
Puppetise everything. 
Mid 2013
Puppetise everything. 
This helped a lot. 
Mid 2013
Puppetise everything. 
This helped a lot. 
However… 
Mid 2013
Puppetise everything. 
Infrastructure still very complex. 
And expensive.
Dn dn dnnnnnn.
Early 2014
AWS 
US Prod EU Prod QA 
Now
MARATHON 
CHRONOS 
SPARK 
SINGULARITY
MARATHON 
DISCOVERY OAUTH 
SERVER 
RESTAURANT 
REPORTING 
AVAI LABI L ITY 
COMPONENTS NEW BLOG MENU API 
… 
https://github.com/mesosphere/marathon
CHRONOS 
UPDATING 
PERSISTENT CACHES 
COORDINATING 
LARGE 
INTERDEPENDENT 
DATA PROCESSING 
JOBS 
https://github.com/airbnb/chronos
SPARK 
DATA SCIENCE MAGIC 
http://spark.apache.org
SINGULARITY 
EVERYTHING? 
https://github.com/HubSpot/Singularity
Mesos seems really cool so far.
Of course, now we have a new set of problems.
Where is my app running?!
Where is my app running?! 
There are 2 basic approaches to this problem.
Service discovery.
DISCOVERY 
SERVER 
(USES ETCD) 
APP 1 
APP 2 
APP 3 
Announce 
Announce 
Announce 
State 
State 
State 
Data 
Data 
Data
Fixed addresses?
Enter Mesoshub… 
https://github.com/opentable/mesoshub
Enter Mesoshub… 
A web UI over HAProxy. 
Integrated with Marathon. 
https://github.com/opentable/mesoshub
MESOSHUB 
(USES 
HAPROXY) 
APP 1 
APP 2 
APP 3 
Data 
Data 
Data 
http://app1.ot.com 
http://app2.ot.com 
http://app3.ot.com 
Data 
Data 
Data
Enter Mesoshub… 
Mesoshub is open source. 
We would love contributions! 
https://github.com/opentable/mesoshub
Use both together for maximum flexibility!
The future…
+ = ? 
Configuring Mesos clusters with Puppet?
Deployment? 
Orchestration? 
Stateful apps?
That’s all, folks!

More Related Content

What's hot

Helm your way with Kubernetes
Helm your way with Kubernetes Helm your way with Kubernetes
Helm your way with Kubernetes
Ana-Maria Mihalceanu
 
Angular js full stack development
Angular js   full stack developmentAngular js   full stack development
Angular js full stack development
Darius Riggins
 
Afterlife Tales: Troubleshooting containerized applications
Afterlife Tales: Troubleshooting containerized applicationsAfterlife Tales: Troubleshooting containerized applications
Afterlife Tales: Troubleshooting containerized applications
Ana-Maria Mihalceanu
 
Pain Free Frontend Development
Pain Free Frontend DevelopmentPain Free Frontend Development
Pain Free Frontend Development
Vanessa Böhner
 
You are not_hiding_from_me_.net
You are not_hiding_from_me_.netYou are not_hiding_from_me_.net
You are not_hiding_from_me_.net
Chung Wee Jing
 
How to create an api in mule
How to create an api in muleHow to create an api in mule
How to create an api in mule
Ramakrishna kapa
 
Common async misconceptions
Common async misconceptionsCommon async misconceptions
Common async misconceptions
SaebAmini
 
Easy Continuous Deployment You Can Trust (Webinar)
Easy Continuous Deployment You Can Trust (Webinar)Easy Continuous Deployment You Can Trust (Webinar)
Easy Continuous Deployment You Can Trust (Webinar)
Sauce Labs
 
Testing on Mobile Devices with Location Services
Testing on Mobile Devices with Location ServicesTesting on Mobile Devices with Location Services
Testing on Mobile Devices with Location Services
Sauce Labs
 
Automating Hybrid Applications with Appium
Automating Hybrid Applications with AppiumAutomating Hybrid Applications with Appium
Automating Hybrid Applications with Appium
Sauce Labs
 
dotNetConf2019
dotNetConf2019dotNetConf2019
dotNetConf2019
Andrea Tosato
 
WordPress London Developer Operations For Beginners
WordPress London Developer Operations For BeginnersWordPress London Developer Operations For Beginners
WordPress London Developer Operations For Beginners
Stewart Ritchie
 
Simple and Effective Development Process For Software v1
Simple and Effective Development Process For Software v1Simple and Effective Development Process For Software v1
Simple and Effective Development Process For Software v1
Mohamed Alaa El-Din
 
Improving Android app testing with Appium and Sauce Labs
Improving Android app testing with Appium and Sauce LabsImproving Android app testing with Appium and Sauce Labs
Improving Android app testing with Appium and Sauce Labs
Isaac Murchie
 
The Physical World meets the Web
The Physical World meets the WebThe Physical World meets the Web
The Physical World meets the Web
Maximiliano Firtman
 
Troubleshooting containerized applications
Troubleshooting containerized applicationsTroubleshooting containerized applications
Troubleshooting containerized applications
Ana-Maria Mihalceanu
 
WTF is PWA?
WTF is PWA?WTF is PWA?
WTF is PWA?
Alan Semenov
 
JavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with MavenJavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with Maven
Abraham Marin-Perez
 
Angular PWA
Angular PWAAngular PWA
Angular PWA
Vinci Rufus
 
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
Alexandra Anghel
 

What's hot (20)

Helm your way with Kubernetes
Helm your way with Kubernetes Helm your way with Kubernetes
Helm your way with Kubernetes
 
Angular js full stack development
Angular js   full stack developmentAngular js   full stack development
Angular js full stack development
 
Afterlife Tales: Troubleshooting containerized applications
Afterlife Tales: Troubleshooting containerized applicationsAfterlife Tales: Troubleshooting containerized applications
Afterlife Tales: Troubleshooting containerized applications
 
Pain Free Frontend Development
Pain Free Frontend DevelopmentPain Free Frontend Development
Pain Free Frontend Development
 
You are not_hiding_from_me_.net
You are not_hiding_from_me_.netYou are not_hiding_from_me_.net
You are not_hiding_from_me_.net
 
How to create an api in mule
How to create an api in muleHow to create an api in mule
How to create an api in mule
 
Common async misconceptions
Common async misconceptionsCommon async misconceptions
Common async misconceptions
 
Easy Continuous Deployment You Can Trust (Webinar)
Easy Continuous Deployment You Can Trust (Webinar)Easy Continuous Deployment You Can Trust (Webinar)
Easy Continuous Deployment You Can Trust (Webinar)
 
Testing on Mobile Devices with Location Services
Testing on Mobile Devices with Location ServicesTesting on Mobile Devices with Location Services
Testing on Mobile Devices with Location Services
 
Automating Hybrid Applications with Appium
Automating Hybrid Applications with AppiumAutomating Hybrid Applications with Appium
Automating Hybrid Applications with Appium
 
dotNetConf2019
dotNetConf2019dotNetConf2019
dotNetConf2019
 
WordPress London Developer Operations For Beginners
WordPress London Developer Operations For BeginnersWordPress London Developer Operations For Beginners
WordPress London Developer Operations For Beginners
 
Simple and Effective Development Process For Software v1
Simple and Effective Development Process For Software v1Simple and Effective Development Process For Software v1
Simple and Effective Development Process For Software v1
 
Improving Android app testing with Appium and Sauce Labs
Improving Android app testing with Appium and Sauce LabsImproving Android app testing with Appium and Sauce Labs
Improving Android app testing with Appium and Sauce Labs
 
The Physical World meets the Web
The Physical World meets the WebThe Physical World meets the Web
The Physical World meets the Web
 
Troubleshooting containerized applications
Troubleshooting containerized applicationsTroubleshooting containerized applications
Troubleshooting containerized applications
 
WTF is PWA?
WTF is PWA?WTF is PWA?
WTF is PWA?
 
JavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with MavenJavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with Maven
 
Angular PWA
Angular PWAAngular PWA
Angular PWA
 
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
 

Similar to Mesos at OpenTable

Using hapi plugins to version your API (hapiDays 2014)
Using hapi plugins to version your API (hapiDays 2014)Using hapi plugins to version your API (hapiDays 2014)
Using hapi plugins to version your API (hapiDays 2014)
Dave Stevens
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
Danilo Poccia
 
Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)
Future Insights
 
The Power of a Great API
The Power of a Great APIThe Power of a Great API
The Power of a Great API
damovisa
 
Offline of web applications
Offline of web applicationsOffline of web applications
Offline of web applications
FDConf
 
Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014
Jan Jongboom
 
AMIMOTO: WordPress + Amazon Web Services MANILA
AMIMOTO: WordPress + Amazon Web Services MANILAAMIMOTO: WordPress + Amazon Web Services MANILA
AMIMOTO: WordPress + Amazon Web Services MANILA
Kel
 
AMIMOTO: WordPress + Amazon Web Services University of the Philippines Los Baños
AMIMOTO: WordPress + Amazon Web Services University of the Philippines Los BañosAMIMOTO: WordPress + Amazon Web Services University of the Philippines Los Baños
AMIMOTO: WordPress + Amazon Web Services University of the Philippines Los Baños
Kel
 
Tastypie: Easy APIs to Make Your Work Easier
Tastypie: Easy APIs to Make Your Work EasierTastypie: Easy APIs to Make Your Work Easier
Tastypie: Easy APIs to Make Your Work Easier
Harvard Web Working Group
 
Matt Johnson - My developer journey towards true hybrid cloud with Kubernetes...
Matt Johnson - My developer journey towards true hybrid cloud with Kubernetes...Matt Johnson - My developer journey towards true hybrid cloud with Kubernetes...
Matt Johnson - My developer journey towards true hybrid cloud with Kubernetes...
Codemotion
 
戦う情シス!全社 API で社内アプリ開発を加速させよう
戦う情シス!全社 API で社内アプリ開発を加速させよう戦う情シス!全社 API で社内アプリ開発を加速させよう
戦う情シス!全社 API で社内アプリ開発を加速させよう
Yuki Hattori
 
NDC 2011 - Let me introduce my Moncai
NDC 2011 - Let me introduce my MoncaiNDC 2011 - Let me introduce my Moncai
NDC 2011 - Let me introduce my Moncai
moncai
 
Transformação Digital com API Management
Transformação Digital com API ManagementTransformação Digital com API Management
Transformação Digital com API Management
Gustavo Zimmermann (MVP)
 
api_101
api_101api_101
api_101samir
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web apps
Alexandre Marreiros
 
Rapid API Development with LoopBack/StrongLoop
Rapid API Development with LoopBack/StrongLoopRapid API Development with LoopBack/StrongLoop
Rapid API Development with LoopBack/StrongLoop
Raymond Camden
 
Breaking News and Breaking Software by Andy Hume
Breaking News and Breaking Software by Andy HumeBreaking News and Breaking Software by Andy Hume
Breaking News and Breaking Software by Andy Hume
SyncConf
 
Deploying and Testing Microservices
Deploying and Testing MicroservicesDeploying and Testing Microservices
Deploying and Testing Microservices
Thoughtworks
 
Building a full-stack app with Golang and Google Cloud Platform in one week
Building a full-stack app with Golang and Google Cloud Platform in one weekBuilding a full-stack app with Golang and Google Cloud Platform in one week
Building a full-stack app with Golang and Google Cloud Platform in one week
Dr. Felix Raab
 
The What, Why and How of (Web) Analytics Testing (Web, IoT, Big Data)
The What, Why and How of (Web) Analytics Testing (Web, IoT, Big Data)The What, Why and How of (Web) Analytics Testing (Web, IoT, Big Data)
The What, Why and How of (Web) Analytics Testing (Web, IoT, Big Data)
Anand Bagmar
 

Similar to Mesos at OpenTable (20)

Using hapi plugins to version your API (hapiDays 2014)
Using hapi plugins to version your API (hapiDays 2014)Using hapi plugins to version your API (hapiDays 2014)
Using hapi plugins to version your API (hapiDays 2014)
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)
 
The Power of a Great API
The Power of a Great APIThe Power of a Great API
The Power of a Great API
 
Offline of web applications
Offline of web applicationsOffline of web applications
Offline of web applications
 
Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014
 
AMIMOTO: WordPress + Amazon Web Services MANILA
AMIMOTO: WordPress + Amazon Web Services MANILAAMIMOTO: WordPress + Amazon Web Services MANILA
AMIMOTO: WordPress + Amazon Web Services MANILA
 
AMIMOTO: WordPress + Amazon Web Services University of the Philippines Los Baños
AMIMOTO: WordPress + Amazon Web Services University of the Philippines Los BañosAMIMOTO: WordPress + Amazon Web Services University of the Philippines Los Baños
AMIMOTO: WordPress + Amazon Web Services University of the Philippines Los Baños
 
Tastypie: Easy APIs to Make Your Work Easier
Tastypie: Easy APIs to Make Your Work EasierTastypie: Easy APIs to Make Your Work Easier
Tastypie: Easy APIs to Make Your Work Easier
 
Matt Johnson - My developer journey towards true hybrid cloud with Kubernetes...
Matt Johnson - My developer journey towards true hybrid cloud with Kubernetes...Matt Johnson - My developer journey towards true hybrid cloud with Kubernetes...
Matt Johnson - My developer journey towards true hybrid cloud with Kubernetes...
 
戦う情シス!全社 API で社内アプリ開発を加速させよう
戦う情シス!全社 API で社内アプリ開発を加速させよう戦う情シス!全社 API で社内アプリ開発を加速させよう
戦う情シス!全社 API で社内アプリ開発を加速させよう
 
NDC 2011 - Let me introduce my Moncai
NDC 2011 - Let me introduce my MoncaiNDC 2011 - Let me introduce my Moncai
NDC 2011 - Let me introduce my Moncai
 
Transformação Digital com API Management
Transformação Digital com API ManagementTransformação Digital com API Management
Transformação Digital com API Management
 
api_101
api_101api_101
api_101
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web apps
 
Rapid API Development with LoopBack/StrongLoop
Rapid API Development with LoopBack/StrongLoopRapid API Development with LoopBack/StrongLoop
Rapid API Development with LoopBack/StrongLoop
 
Breaking News and Breaking Software by Andy Hume
Breaking News and Breaking Software by Andy HumeBreaking News and Breaking Software by Andy Hume
Breaking News and Breaking Software by Andy Hume
 
Deploying and Testing Microservices
Deploying and Testing MicroservicesDeploying and Testing Microservices
Deploying and Testing Microservices
 
Building a full-stack app with Golang and Google Cloud Platform in one week
Building a full-stack app with Golang and Google Cloud Platform in one weekBuilding a full-stack app with Golang and Google Cloud Platform in one week
Building a full-stack app with Golang and Google Cloud Platform in one week
 
The What, Why and How of (Web) Analytics Testing (Web, IoT, Big Data)
The What, Why and How of (Web) Analytics Testing (Web, IoT, Big Data)The What, Why and How of (Web) Analytics Testing (Web, IoT, Big Data)
The What, Why and How of (Web) Analytics Testing (Web, IoT, Big Data)
 

Recently uploaded

Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
e20449
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Yara Milbes
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 

Recently uploaded (20)

Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 

Mesos at OpenTable

  • 2. WHO AM I? • Engineer at OpenTable for 1 year • New to Mesos • Mostly working in Go • @samsalisbury on twitter/github
  • 5. ! +Canada " +Mexico # $
  • 6.
  • 7. A HUGE ASP.NET APP Prior to 2012
  • 8. VM A HUGE ASP.NET APP Prior to 2012
  • 9. DATACENTRE VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP Prior to 2012
  • 10. DATACENTRE VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP Prior to 2012
  • 11. DATACENTRE VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET APP VM A HUGE ASP.NET PriorA tPoP 2012
  • 12. DATACENTRE “Fortnightly” VM big VM bang deployments. VM A HUGE A HUGE A HUGE Tech ASP.constrained NET ASP.NET ASP.NET APP APP to single APP platform. One VM defect blocks VM all progress. VM A HUGE A HUGE A HUGE Difficult ASP.NET to experiment ASP.NET with ASP.NET APP APP APP features. VM A HUGE ASP.NET APP Not much fun. VM A HUGE ASP.NET APP
  • 13. DATACENTRE “Fortnightly” VM VM release cycle. VM A HUGE A HUGE A HUGE ASP.Big NET bang ASP.deployments. NET ASP.NET APP APP APP One VM defect blocks VM all progress. VM A HUGE A HUGE A HUGE Difficult ASP.NET to experiment ASP.NET with ASP.NET APP APP APP features. VM A HUGE ASP.NET APP Not much fun. VM A HUGE ASP.NET APP Early 2012
  • 14. SOA all the things!
  • 15. CODE BASE A HUGE ASP.NET APP Prior to 2012
  • 16. CODE BASE EXTERNAL API SEARCH REVIEWS EMAILS WHITE LABEL REST. PROFILES RESERV-ATION API PHOTO SERVICE REST. A P I PERSON API HOME PAGE WIDGETS CONTENT F RONT SERVICE DOOR SVC MENU AP I FEEDBACK AVAI LAB-I LEGACY FORM L I T Y A P I API Now
  • 17. CODE BASE Release EXTERNAL whenever API SEARCH a feature REVIEWS is ready. Use whatever EMAILS tech WHITE REST. LABEL is most PROFILES appropriate. RESERV-ATION PHOTO No one API defect SERVICE blocks all REST. progress. A P I PERSON HOME Easy API to experiment PAGE with WIDGETS features. CONTENT F RONT SERVICE DOOR MENU AP I Much more SVC fun! FEEDBACK AVAI LAB-I LEGACY FORM L I T Y A P I API Now
  • 18. CODE BASE EXTERNAL API SEARCH REVIEWS EMAILS WHITE LABEL REST. PROFILES RESERV-ATION API PHOTO SERVICE REST. A P I PERSON API However. HOME PAGE WIDGETS CONTENT F RONT SERVICE DOOR SVC MENU AP I FEEDBACK AVAI LAB-I LEGACY FORM L I T Y A P I API Now
  • 19. DATACENTRE VM EXTERNAL API VM SEARCH VM REVIEWS VM EMAILS VM RESERVAT-ION API VM VM WHITE LABEL VM REST. PROFILES VM PHOTO SERVICE VM REST. A P I VM VM
  • 20. DATACENTRE VM EXTERNAL API VM SEARCH VM REVIEWS VM EMAILS VM RESERVAT-ION API VM VM WHITE LABEL VM REST. PROFILES VM PHOTO SERVICE VM REST. A P I VM VM
  • 21. DATACENTRE VM SEARCH VVMM VVMM VVMM VM REVIEWS VM EMAILS VVMM VVMM RESERVAT-ION API VVMM VVMM WHITE LABEL VVMM VVMM REST. PROFILES VVMM VVMM PHOTO SERVICE VM REST. A P I VM EXTERNAL API
  • 22. DATACENTRE VM SEARCH VVMM VVMM VVMM VM REVIEWS VM EMAILS VVMM VVMM RESERVAT-ION API VVMM VVMM WHITE LABEL VVMM VVMM REST. PROFILES VVMM VVMM PHOTO SERVICE VM REST. A P I VM EXTERNAL API 1,231 servers, and rising (source: Puppetboard)
  • 23. DATACENTRE VM SEARCH VVMM VVMM VVMM VM REVIEWS VM EMAILS VVMM VVMM RESERVAT-ION API VVMM VVMM WHITE LABEL VVMM VVMM REST. PROFILES VVMM VVMM PHOTO SERVICE VM REST. A P I VM EXTERNAL API 1,231 servers, and rising (source: Puppetboard) This is expensive.
  • 24. DATACENTRE VM SEARCH VVMM VVMM VVMM VM REVIEWS VM EMAILS VVMM VVMM RESERVAT-ION API VVMM VVMM WHITE LABEL VVMM VVMM REST. PROFILES VVMM VVMM PHOTO SERVICE VM REST. A P I VM EXTERNAL API 1,231 servers, and rising (source: Puppetboard) This is expensive. And hard to manage.
  • 25. DATACENTRE VM SEARCH VVMM VVMM VVMM VM REVIEWS VM EMAILS VVMM VVMM RESERVAT-ION API VVMM VVMM WHITE LABEL VVMM VVMM REST. PROFILES VVMM VVMM PHOTO SERVICE VM REST. A P I VM EXTERNAL API WDWDN?
  • 26. Puppetise all the things! everything. Mid 2013
  • 28. Puppetise everything. This helped a lot. Mid 2013
  • 29. Puppetise everything. This helped a lot. However… Mid 2013
  • 30. Puppetise everything. Infrastructure still very complex. And expensive.
  • 33. AWS US Prod EU Prod QA Now
  • 34. MARATHON CHRONOS SPARK SINGULARITY
  • 35. MARATHON DISCOVERY OAUTH SERVER RESTAURANT REPORTING AVAI LABI L ITY COMPONENTS NEW BLOG MENU API … https://github.com/mesosphere/marathon
  • 36. CHRONOS UPDATING PERSISTENT CACHES COORDINATING LARGE INTERDEPENDENT DATA PROCESSING JOBS https://github.com/airbnb/chronos
  • 37.
  • 38. SPARK DATA SCIENCE MAGIC http://spark.apache.org
  • 40. Mesos seems really cool so far.
  • 41. Of course, now we have a new set of problems.
  • 42. Where is my app running?!
  • 43. Where is my app running?! There are 2 basic approaches to this problem.
  • 45. DISCOVERY SERVER (USES ETCD) APP 1 APP 2 APP 3 Announce Announce Announce State State State Data Data Data
  • 48. Enter Mesoshub… A web UI over HAProxy. Integrated with Marathon. https://github.com/opentable/mesoshub
  • 49. MESOSHUB (USES HAPROXY) APP 1 APP 2 APP 3 Data Data Data http://app1.ot.com http://app2.ot.com http://app3.ot.com Data Data Data
  • 50. Enter Mesoshub… Mesoshub is open source. We would love contributions! https://github.com/opentable/mesoshub
  • 51. Use both together for maximum flexibility!
  • 53. + = ? Configuring Mesos clusters with Puppet?