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
fleet @ LinuxCon US 2014
Search
Brandon Philips
August 28, 2014
Technology
1
88
fleet @ LinuxCon US 2014
Brandon Philips
August 28, 2014
Tweet
Share
More Decks by Brandon Philips
See All by Brandon Philips
Node.js Workflow with Minikube and Skaffold
philips
0
280
Manage the App on Kubernetes
philips
0
360
Production Backbone Monitoring Containerized Apps
philips
0
210
KubeCon EU 2017: Dancing on the Edge of a Volcano
philips
1
810
rkt - KubeCon EU keynote - 2017
philips
1
290
FOSDEM_Keynote_2017-_.pdf
philips
0
150
Tectonic Summit Day 2 Keynote
philips
0
380
Kubernetes: Simple to Manage Anywhere (self-hosted, Tectonic upgrade demo)
philips
0
420
KubeCon Keynote 2016- Distributed Systems Simplified on Kubernetes
philips
2
570
Other Decks in Technology
See All in Technology
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
120
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
160
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
420
toCプロダクトにおけるAI機能開発のしくじりと学び / ai-product-failures-and-learnings
rince
6
5.4k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
130
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
660
MCPでつなぐElasticsearchとLLM - 深夜の障害対応を楽にしたい / Bridging Elasticsearch and LLMs with MCP
sashimimochi
0
120
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
3
1.1k
システムのアラート調査をサポートするAI Agentの紹介/Introduction to an AI Agent for System Alert Investigation
taddy_919
2
1.5k
開発メンバーが語るFindy Conferenceの裏側とこれから
sontixyou
2
580
今日から始めるAmazon Bedrock AgentCore
har1101
4
340
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
160
Featured
See All Featured
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
Navigating Weather and Climate Data
rabernat
0
97
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
170
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
120
Accessibility Awareness
sabderemane
0
47
sira's awesome portfolio website redesign presentation
elsirapls
0
140
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
55
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Visualization
eitanlees
150
17k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
430
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
110
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Transcript
fleet systemd for clusters @coreoslinux
About Me CTO/CO-FOUNDER systems engineer @brandonphilips github.com/philips
None
what are we all doing? clusters
systemd configure, execute, monitor
# cat myservice.service [Service] ExecStart=/usr/bin/myservice # systemctl start myservice.service
# cat myservice.service [Service] ExecStart=/usr/bin/myservice
# cat myservice.service [Service] Environment=”PASSWORD=123” ExecStart=/usr/bin/myservice
# cat myservice.service [Service] Environment=”PASSWORD=123” ExecStart=/usr/bin/myservice CPUShares=512 MemoryLimit=1G
# cat myservice.service [Unit] Description=My Awesome Service [Service] Environment=”PASSWORD=123” ExecStart=/usr/bin/myservice
CPUShares=512 MemoryLimit=1G
configuration env variables current working directory users and groups cgroups
namespaces CPU affinity dependencies seccomp filters resources limits
whats the process doing? monitoring
github.com/coreos/go-systemd
cluster schedulers how do they work?
Warning: advanced graphics ahead
SCHEDULE - Task 1 - Task 2 - Task 3
Scheduler API
Machine A Machine B Machine C Task 1 SCHEDULE -
Task 1 - Task 2 - Task 3 Scheduler
Machine A Machine B SCHEDULE - Task 1 - Task
2 - Task 3 Scheduler
Machine A Machine B Task 1 SCHEDULE - Task 1
- Task 2 - Task 3 Scheduler
Scheduler Agent Machine C Task 1 systemd
etcd holder of global state
etcd
/etc distributed
open source software highly available and reliable sequentially consistent watchable
exposed via HTTP runtime reconfigurable
-X GET Get Wait -X PUT Put Create CAS -X
DELETE Delete CAD
Available
Available
Available
Unavailable
demo!
don’t lose stuff conclusion
make atomic changes conclusion
fleet scheduler & agent
# cat myservice.service [Service] ExecStart=/usr/bin/myservice # systemctl start myservice.service
# cat myservice.service [Service] ExecStart=/usr/bin/myservice # fleetctl start myservice.service
demo!
fleet engine take global state & schedule
Machine A Machine B Machine C Task 1 SCHEDULE -
Task 1 - Task 2 - Task 3 Scheduler
machine with this tag require
same machine as this require
this specific machine require
# cat myservice.service [Service] ExecStart=/usr/bin/myservice [X-Fleet] X-Conflicts=notmyservice.service # fleetctl start
myservice.service
fleet agent run schedule & report state
Scheduler Agent Machine C Task 1 systemd
demo!
service discovery where is this stuff running?
do it yourself registration
get some help registration
None
None
fleetctl and API control remotely
demo!
future work
None