Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Docker at scale with Mesos
Search
Phạm Tuấn Anh
August 27, 2016
Technology
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Docker at scale with Mesos
Phạm Tuấn Anh
August 27, 2016
More Decks by Phạm Tuấn Anh
See All by Phạm Tuấn Anh
On building VCCorp Content Delivery Network
andypham
0
97
Infrastructure as Code at VCCorp
andypham
3
500
Other Decks in Technology
See All in Technology
Sony-DroidKaigi2026
sony
0
170
MCPを待つな、パスキーを拡げよう(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
420
EUDIWの枠組みを出発点に民間エコシステムの在り方を考える(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
420
書籍『生成AIの安全性入門』の入門
wataoka
0
150
Genie Code ワークショップ 基礎編 / Genie-Code-Workshop-fundamental
databricksjapan
PRO
0
240
Level Up Your CDK DX: 5 Tools I’ve Been Building
gotok365
2
160
『自分で判断できるか』を基準に、プロダクトのハンズオン研修でAI利用の線を引いてみた / Where We Drew the Line on AI in Hands-on Training
honyanya
1
650
Cloudflare製品を活用した AIガバナンス実践入門 / AI governance with Cloudflare Service
delta_tech
1
170
分割40%キーボードにスムーズに入門するには
hoto17296
1
210
AI時代のキョウソウ戦略
ystk
2
100
AI駆動開発をチームに根付かせる - 「1行も書かない」チームがHarnessを育てた1年 -
kenichirokimura
6
3.6k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
54k
Featured
See All Featured
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.1k
Discover your Explorer Soul
emna__ayadi
2
1.3k
How to train your dragon (web standard)
notwaldorf
97
6.8k
Building AI with AI
inesmontani
PRO
1
1.2k
KATA
mclloyd
PRO
35
15k
WCS-LA-2024
lcolladotor
0
810
Testing 201, or: Great Expectations
jmmastey
46
8.3k
How to Ace a Technical Interview
jacobian
281
24k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
550
Building a Scalable Design System with Sketch
lauravandoore
463
34k
How to Think Like a Performance Engineer
csswizardry
28
2.8k
Practical Orchestrator
shlominoach
191
12k
Transcript
Docker at scale with Mesos Phạm Tuấn Anh Lead engineer
@ VCCloud Platform Services
$ whoami • Lead engineer at VCCloud Platform Services •
Build & work with large-scale/production platform services for about 6 years • Services: Storage, DNS, CDN, DDoS Protection, Logging, Private PaaS
Agenda 1. What is Mesos? 2. How to run docker
containers on Mesos 3. Lessons learned 4. Q&A
1. What is Mesos? 2. How to run docker containers
on Mesos 3. Lessons learned 4. Q&A
None
None
None
None
https://blog.twitter.com/2016/overview-of-the-twitter-cloud-platform-compute
https://mesosphere.com/blog/2015/04/23/apple-details-j-a-r-v-i-s-the-mesos- framework-that-runs-siri/
None
Powered by Mesos: • Apple • Atlassian • CERN •
Cisco • Cloudflare • Foursquare • Groupon • HubSpot • Netflix • Opera • Paypal • Shopee • Shopify • Saleforce • Twitter • Uber • Vimeo • Verizon • Weibo • Yelp • Xiaomi http://mesos.apache.org/documentation/latest/powered-by-mesos/
Solomon Hykes, Founder & CTO of Docker, said at DockerCon
EU 12/2014: Mesos is the “gold standard” for large-scale production clusters running containers
Mesos is: • Open source, top-level Apache project • Proven
at massive scale • Multi-resource (CPU, RAM, Disk, GPU) scheduling • Simplified operational model • Cross platform • Native Docker support
None
None
• PaaS: Marathon, Aurora, Kubernetes, Swarm • Big Data: Hadoop,
Spark, Storm • Database: Cassandra, ArangoDB, • ElasticSearch, Chronos, Jenkins, Kafka… Mesos Frameworks:
1. What is Mesos? 2. How to run docker containers
on Mesos 3. Lessons learned 4. Q&A
• Apache Aurora • Google Kubernetes • HubSpot Singularity •
Mesosphere Marathon
None
None
None
None
None
None
Features: • Start, stop, scale, update, rollback apps • Rolling
deploy / restart • Constraints • Health checks • App dependencies • Highly available, no SPoF
None
None
None
1. What is Mesos? 2. How to run docker containers
on mesos 3. Lessons learned 4. Q&A
– Immutable Infrastructure / CodeShip “Some of the major challenges
today when building infrastructure are predictability, scalability and automated recovery.”
• Container style • Service discovery • Networking Lessons Learned
• Managing secrets • App deployment • Docker annoyances
Choose a container style: • "thin" single-process container • "fat"
container • sshd in container
• Container style • Service discovery • Networking Lessons Learned
• Managing secrets • App deployment • Docker annoyances
Services Discovery • Mesos-DNS: • <app_id>.<app_group>.marathon.mesos • record types: A
/ SRV • simple & stateless
None
• Container style • Service discovery • Networking Lessons Learned
• Managing secrets • App deployment • Docker annoyances
Networking • Project Calico: • IP-per-container • Pure Layer 3
None
None
None
• Container style • Service discovery • Networking Lessons Learned
• Managing secrets • App deployment • Docker annoyances
Managing Secrets • ansible-vault
None
None
None
• Container style • Service discovery • Networking Lessons Learned
• Managing secrets • App deployment • Docker annoyances
App deployment • ansible-playbook • marathon.json • docker tag name
= git commit hash • 1 mesos cluster (3 VMs) per dev • deploy to servers → deploy to marathon
None
marathon.json
None
None
None
None
None
None
None
None
https://flask-hello.marathon.mesos.vn/
Monitoring • Container’s RAM used
Stateful Containers • Local persistent volumes
• Container style • Service discovery • Networking Lessons Learned
• Managing secrets • App deployment • Docker annoyances
Docker • restart / upgrade docker without stopping the running
containers • old images / tags cleanup • container’s stdout / stderr log files • docker pull • docker hub
"Normal" container vs cloud-native container: • No manual steps •
Service discovery friendly • Config files should be optional • Using env vars for config
1. What is Mesos? 2. How to run docker containers
on Mesos 3. Lessons learned 4. Q&A
None
Links • Mesos: http://mesos.apache.org/ • Marathon: https://mesosphere.github.io/marathon/ • Project Calico:
https://www.projectcalico.org/ • Mesos-DNS: https://github.com/mesosphere/mesos-dns • A Healthy Platform Checklist: https://gist.github.com/andy-pham/ 04dedff872b33c07a31277afb900950b