Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CoreOS @Railscamp
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Timo Derstappen
September 30, 2014
Technology
130
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CoreOS @Railscamp
CoreOS tools and concepts
Timo Derstappen
September 30, 2014
More Decks by Timo Derstappen
See All by Timo Derstappen
Automating Kubernetes Cluster Operations with Operators
teemow
0
130
Automating Kubernetes Cluster Operations with Operators
teemow
0
170
Microservices Docker @Bonn Agile
teemow
2
140
CoreOS @Codetalks
teemow
2
140
Other Decks in Technology
See All in Technology
組み立てて楽しむ AWS Blocks 入門
kmiya84377
0
230
12 個 Tool と、 4,096 Token
hlum
0
130
全人類(ほぼ)AWS Organizations の上でAWSを利用している、その世界を知る話
htan
1
140
DevelopersIO 2026 知識の地図を描く ─ オントロジーとは何か?
ishikawa_satoru
1
1.5k
契約書画像からの情報抽出に特化した視覚接地モデルを育てる話
sansantech
PRO
1
170
AI時代のAPI開発を加速する品質ガードレール / API Quality Guardrails in the AI Era
yokawasa
0
190
Cognition AI Japan - ウェビナー2_テストQA_運用監視
cogakira
0
130
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
380
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
690
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
7
2.9k
継続的なAIコスト最適化
bgpat
1
290
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
480
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
Rails Girls Zürich Keynote
gr2m
96
14k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
Large-scale JavaScript Application Architecture
addyosmani
516
110k
30 Presentation Tips
portentint
PRO
1
430
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
How GitHub (no longer) Works
holman
316
150k
New Earth Scene 8
popppiees
4
2.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Code Reviewing Like a Champion
maltzj
529
40k
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!