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
CoreOS @Railscamp
Search
Timo Derstappen
September 30, 2014
Technology
1
120
CoreOS @Railscamp
CoreOS tools and concepts
Timo Derstappen
September 30, 2014
Tweet
Share
More Decks by Timo Derstappen
See All by Timo Derstappen
Automating Kubernetes Cluster Operations with Operators
teemow
0
92
Automating Kubernetes Cluster Operations with Operators
teemow
0
130
Microservices Docker @Bonn Agile
teemow
2
130
CoreOS @Codetalks
teemow
2
110
Other Decks in Technology
See All in Technology
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
13
5k
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
320
技術的負債解消の取り組みと専門チームのお話 #技術的負債_Findy
bengo4com
1
1.2k
7日間でハッキングをはじめる本をはじめてみませんか?_ITエンジニア本大賞2025
nomizone
2
1.7k
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
7
1.6k
マルチモーダル理解と生成の統合 DeepSeek Janus, etc... / Multimodal Understanding and Generation Integration
hiroga
0
370
2.5Dモデルのすべて
yu4u
2
790
株式会社EventHub・エンジニア採用資料
eventhub
0
4.2k
RSNA2024振り返り
nanachi
0
530
Culture Deck
optfit
0
390
現場で役立つAPIデザイン
nagix
32
11k
CZII - CryoET Object Identification 参加振り返り・解法共有
tattaka
0
310
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Thoughts on Productivity
jonyablonski
69
4.5k
A designer walks into a library…
pauljervisheath
205
24k
How to train your dragon (web standard)
notwaldorf
91
5.8k
A better future with KSS
kneath
238
17k
Building an army of robots
kneath
302
45k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
99
18k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Transcript
Timo Derstappen Co-Founder giantswarm.io @teemow
• Minimal Linux to run your containers • Automatic Updates
• Cluster Management • Service Discovery What is CoreOS?
Linux Basis • Based on Gentoo • Images for PXE,
OpenStack, AWS, GCE, Vagrant • Systemd, btrfs • Read-only rootfs (writable overlay)
CoreOS own tools • Etcd • Fleet • Locksmith •
Cloud-config • Flannel github.com/coreos
Etcd • Key/Value store • Basis for ◦ Configuration management
◦ Service Discovery • Raft consensus algorithm • REST Interface
Discovery API > curl https://discovery.etcd.io/new https://discovery.etcd. io/463c1435f9f63c952e0899b1f459c0fe
Cloud Config • Initialization of your instances • Configure etcd,
fleet, locksmith • YAML file • eg. EC2 user data
Configure your cluster #cloud-config coreos: etcd: discovery: https://discovery.etcd.io/<token> addr: $private_ipv4:4001
peer-addr: $private_ipv4:7001
Locksmith • Reboot strategies for CoreOS updates • Uses etcd
for distributed locks • Alpha, Beta, Stable channels
Flannel • Overlay networks backed by etcd • Encapsulate packets
in UDP • VXLAN implementation coming
Fleet • Fleet is systemd for the cluster • Uses
etcd • CLI and API to start your containers
Fleet Scheduler • Simple (eg. based on Metadata) • But
resolves service dependencies! • More to come (eg. based on available resources)
Unit file [Unit] Description=A Redis Server [Service] TimeoutStartSec=0 EnvironmentFile=/etc/environment Environment="IMAGE=teemow/redis"
ExecStartPre=/usr/bin/docker pull $IMAGE ExecStart=/bin/bash -c "exec /usr/bin/docker run --rm -p $COREOS_PRIVATE_IPV4::6379 --name %n $IMAGE" ExecStop=/usr/bin/docker stop %n
Manage a service fleetctl start redis.service fleetctl list-units fleetctl status
redis.service fleetctl journal redis.service fleetctl stop redis.service fleetctl destroy redis.service
Release it! • Load Balancer • App • Database
Sidekick • Keep configuration out of your app
Ambassador • Reverse proxy for your service • Keep service
discovery out of your app
CoreOS • Great foundation to create flexible distributed infrastructures •
Unix philosophy
Kubernetes • Google Container Orchestration • Runs on top of
CoreOS
Kubernetes Master kubecfg Minion 1 Minion 2
Kubernetes Minion Internet Master kubelet service Etcd
cAdvisor • Monitoring for your containers • Collects, aggregates and
processes metrics • InfluxDB Backend • Monitoring of clusters with Heapster
Deis • Open Source PaaS • used Heroku build packs
• now recommends Docker-native builds
Panamax • Web interface to start multi container apps •
App Templates on Github • Open Source project from CenturyLink Labs
• Simple Service Orchestration • Based in Cologne, Germany •
Built on top of CoreOS http://giantswarm.io Giant Swarm
Timo Derstappen @teemow http://giantswarm.io Thanks for listening!