Mesos at OpenTable
-
Upload
samsalisbury -
Category
Software
-
view
1.517 -
download
0
Transcript of Mesos at OpenTable
![Page 1: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/1.jpg)
M E S O S @
Feedback/questions @samsalisbury
![Page 2: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/2.jpg)
W H O A M I ?
• Engineer at OpenTable for 1 year
• New to Mesos
• Mostly working in Go
• @samsalisbury on twitter/github
![Page 3: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/3.jpg)
Diners Restaurants
![Page 4: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/4.jpg)
Many Few
![Page 5: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/5.jpg)
! "
# $
+Canada +Mexico
![Page 6: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/6.jpg)
![Page 7: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/7.jpg)
A H U G E A S P. N E T A P P
Prior to 2012
![Page 8: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/8.jpg)
A H U G E A S P. N E T A P P
V M
Prior to 2012
![Page 9: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/9.jpg)
D ATA C E N T R EV M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
Prior to 2012
![Page 10: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/10.jpg)
D ATA C E N T R EV M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
Prior to 2012
![Page 11: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/11.jpg)
D ATA C E N T R EV M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P PPrior to 2012
![Page 12: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/12.jpg)
D ATA C E N T R EV M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
“Fortnightly” big bang deployments.
Tech constrained to single platform.
One defect blocks all progress.
Difficult to experiment with features.
Not much fun.
![Page 13: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/13.jpg)
D ATA C E N T R EV M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
V M
A H U G E A S P. N E T
A P P
“Fortnightly” release cycle.
Big bang deployments.
One defect blocks all progress.
Difficult to experiment with features.
Not much fun.
Early 2012
![Page 14: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/14.jpg)
SOA all the things!
![Page 15: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/15.jpg)
A H U G E A S P. N E T A P P
Prior to 2012
C O D E B A S E
![Page 16: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/16.jpg)
C O D E B A S E
E X T E R N A L A P I S E A R C H R E V I E W S
E M A I L S W H I T E L A B E L
R E S T. P R O F I L E S
R E S E R V-AT I O N A P I
P H O T O S E R V I C E R E S T. A P I
P E R S O N A P I
H O M E PA G E W I D G E T S
C O N T E N T S E R V I C E M E N U A P IF R O N T
D O O R S V C
F E E D B A C K F O R M
AVA I L A B -I L I T Y A P I
L E G A C Y A P I
Now
![Page 17: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/17.jpg)
C O D E B A S E
E X T E R N A L A P I S E A R C H R E V I E W S
E M A I L S W H I T E L A B E L
R E S T. P R O F I L E S
R E S E R V-AT I O N A P I
P H O T O S E R V I C E R E S T. A P I
P E R S O N A P I
H O M E PA G E W I D G E T S
C O N T E N T S E R V I C E M E N U A P IF R O N T
D O O R S V C
F E E D B A C K F O R M
AVA I L A B -I L I T Y A P I
L E G A C Y A P I
Now
Release whenever a feature is ready.
Use whatever tech is most appropriate.
No one defect blocks all progress.
Easy to experiment with features.
Much more fun!
![Page 18: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/18.jpg)
C O D E B A S E
E X T E R N A L A P I S E A R C H R E V I E W S
E M A I L S W H I T E L A B E L
R E S T. P R O F I L E S
R E S E R V-AT I O N A P I
P H O T O S E R V I C E R E S T. A P I
P E R S O N A P I
H O M E PA G E W I D G E T S
C O N T E N T S E R V I C E M E N U A P IF R O N T
D O O R S V C
F E E D B A C K F O R M
AVA I L A B -I L I T Y A P I
L E G A C Y A P I
Now
However.
![Page 19: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/19.jpg)
D ATA C E N T R EV M
E X T E R N A L A P I
V M
S E A R C H
V M
R E V I E W S
V M
E M A I L S
V MR E S E R VAT-
I O N A P I
V M
V MW H I T E L A B E L
V MR E S T.
P R O F I L E S
V MP H O T O
S E R V I C E
V M
R E S T. A P I
V M V M
![Page 20: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/20.jpg)
D ATA C E N T R EV M
E X T E R N A L A P I
V M
S E A R C H
V M
R E V I E W S
V M
E M A I L S
V MR E S E R VAT-
I O N A P I
V M
V MW H I T E L A B E L
V MR E S T.
P R O F I L E S
V MP H O T O
S E R V I C E
V M
R E S T. A P I
V M V M
![Page 21: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/21.jpg)
D ATA C E N T R EV M
S E A R C HV MV MV MV M
V MV MV M
R E V I E W S
V M
E M A I L S
V MV MV MV MR E S E R VAT-
I O N A P I
V MV MV MV MW H I T E L A B E L
V MV MV MV MR E S T.
P R O F I L E S
V MV MV MV MP H O T O
S E R V I C E
V M
R E S T. A P I
V ME X T E R N A L
A P I
![Page 22: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/22.jpg)
D ATA C E N T R EV M
S E A R C HV MV MV MV M
V MV MV M
R E V I E W S
V M
E M A I L S
V MV MV MV MR E S E R VAT-
I O N A P I
V MV MV MV MW H I T E L A B E L
V MV MV MV MR E S T.
P R O F I L E S
V MV MV MV MP H O T O
S E R V I C E
V M
R E S T. A P I
V ME X T E R N A L
A P I
1,231 servers, and rising
(source: Puppetboard)
![Page 23: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/23.jpg)
D ATA C E N T R EV M
S E A R C HV MV MV MV M
V MV MV M
R E V I E W S
V M
E M A I L S
V MV MV MV MR E S E R VAT-
I O N A P I
V MV MV MV MW H I T E L A B E L
V MV MV MV MR E S T.
P R O F I L E S
V MV MV MV MP H O T O
S E R V I C E
V M
R E S T. A P I
V ME X T E R N A L
A P I
1,231 servers, and rising
(source: Puppetboard)
This is expensive.
![Page 24: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/24.jpg)
D ATA C E N T R EV M
S E A R C HV MV MV MV M
V MV MV M
R E V I E W S
V M
E M A I L S
V MV MV MV MR E S E R VAT-
I O N A P I
V MV MV MV MW H I T E L A B E L
V MV MV MV MR E S T.
P R O F I L E S
V MV MV MV MP H O T O
S E R V I C E
V M
R E S T. A P I
V ME X T E R N A L
A P I
1,231 servers, and rising
(source: Puppetboard)
This is expensive.And hard to manage.
![Page 25: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/25.jpg)
D ATA C E N T R EV M
S E A R C HV MV MV MV M
V MV MV M
R E V I E W S
V M
E M A I L S
V MV MV MV MR E S E R VAT-
I O N A P I
V MV MV MV MW H I T E L A B E L
V MV MV MV MR E S T.
P R O F I L E S
V MV MV MV MP H O T O
S E R V I C E
V M
R E S T. A P I
V ME X T E R N A L
A P I
WDWDN?
![Page 26: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/26.jpg)
Puppetise all the things! everything.
Mid 2013
![Page 27: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/27.jpg)
Puppetise everything.
Mid 2013
![Page 28: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/28.jpg)
This helped a lot.
Mid 2013
Puppetise everything.
![Page 29: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/29.jpg)
This helped a lot.
Mid 2013
However…
Puppetise everything.
![Page 30: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/30.jpg)
Infrastructure still very complex.
And expensive.
Puppetise everything.
![Page 31: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/31.jpg)
Dn dn dnnnnnn.
![Page 32: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/32.jpg)
Early 2014
![Page 33: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/33.jpg)
AW S
US Prod EU Prod QA
Now
![Page 34: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/34.jpg)
M A R AT H O N
C H R O N O S
S PA R K
S I N G U L A R I T Y
![Page 35: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/35.jpg)
M A R AT H O N
D I S C O V E R Y O A U T H S E R V E R
R E S TA U R A N T R E P O R T I N G
AVA I L A B I L I T Y C O M P O N E N T S N E W B L O G M E N U A P I
…
https://github.com/mesosphere/marathon
![Page 36: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/36.jpg)
C H R O N O S
U P D AT I N G P E R S I S T E N T C A C H E S
C O O R D I N AT I N G L A R G E
I N T E R D E P E N D E N T D ATA P R O C E S S I N G
J O B S
https://github.com/airbnb/chronos
![Page 37: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/37.jpg)
![Page 39: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/39.jpg)
S I N G U L A R I T Y
E V E R Y T H I N G ?
https://github.com/HubSpot/Singularity
![Page 40: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/40.jpg)
Mesos seems really cool so far.
![Page 41: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/41.jpg)
Of course, now we have a new set of problems.
![Page 42: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/42.jpg)
Where is my app running?!
![Page 43: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/43.jpg)
Where is my app running?!
There are 2 basic approaches to this problem.
![Page 44: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/44.jpg)
Service discovery.
![Page 45: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/45.jpg)
D I S C O V E R Y S E R V E R
( U S E S E T C D )
A P P 1
A P P 2
A P P 3
Announce
Announce
Announce
State
State
State
Data
Data
Data
![Page 46: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/46.jpg)
Fixed addresses?
![Page 48: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/48.jpg)
Enter Mesoshub…
https://github.com/opentable/mesoshub
A web UI over HAProxy.
Integrated with Marathon.
![Page 49: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/49.jpg)
M E S O S H U B
( U S E S H A P R O X Y )
A P P 1
A P P 2
A P P 3
Data
Data
Data
http://app1.ot.com
http://app2.ot.com
http://app3.ot.com
Data
Data
Data
![Page 50: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/50.jpg)
Enter Mesoshub…
https://github.com/opentable/mesoshub
Mesoshub is open source.
We would love contributions!
![Page 51: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/51.jpg)
Use both together for maximum flexibility!
![Page 52: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/52.jpg)
The future…
![Page 53: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/53.jpg)
Configuring Mesos clusters with Puppet?
+ = ?
![Page 54: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/54.jpg)
Deployment?
Orchestration?
Stateful apps?
![Page 55: Mesos at OpenTable](https://reader035.fdocuments.in/reader035/viewer/2022062220/55a20aae1a28ab8b368b46b4/html5/thumbnails/55.jpg)
That’s all, folks!