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 @Codetalks
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Timo Derstappen
October 17, 2014
Technology
140
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CoreOS @Codetalks
Timo Derstappen
October 17, 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 @Railscamp
teemow
1
130
Other Decks in Technology
See All in Technology
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
190
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
110
AI時代のPRレビューにどう向き合うか?
kairim0
1
200
事業活動を AI Ready にする攻めと守りのデータエンジニアリング / data-engineering-for-ai-ready-business
pei0804
7
2.6k
USB PDを使ってスマホを労わりたい
raspython3
0
160
不可逆な意思決定を避けながら10億超の顧客データを AI Ready にするデータ基盤設計
baseballyama
1
310
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
7
2.9k
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
550
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
2
850
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
260
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
300
12 個 Tool と、 4,096 Token
hlum
0
130
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Designing for humans not robots
tammielis
254
26k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Ruling the World: When Life Gets Gamed
codingconduct
0
400
Abbi's Birthday
coloredviolet
4
10k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Navigating Weather and Climate Data
rabernat
0
550
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Everyday Curiosity
cassininazir
0
350
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
550
Building an army of robots
kneath
307
47k
Transcript
Introduction to CoreOS Timo Derstappen @teemow
Simple service orchestration, built for developers. Based in Cologne, Germany.
Ten terrific folks, and hiring! http://giantswarm.io/
What is CoreOS?
CoreOS enables warehouse-scale computing on top of a minimal, modern
operating system. A new Linux Distribution to provide features needed to run modern infrastructure stacks. Minimal Linux
Features • Automatic Updates • Docker Containers • Cluster management
• Service Discovery
Linux Basis • Based on Gentoo • systemd • btrfs
• Images for PXE, OpenStack, AWS, GCE, Vagrant
“Immutable” System • Read-only rootfs • Writeable overlay on /etc
No classic package manager • ChromeOS inspired update engine •
Atomic Updates • Rollbacks • Using Docker to distribute software
CoreOS own tools • Etcd • Locksmith • Cloud-config •
Flannel • Fleet https://github.com/coreos
Etcd A highly-available key value store for shared configuration and
service discovery.
Etcd • Basis for > Configuration management > Service Discovery
• REST Interface • Raft consensus algorithm http://raftconsensus.github.io/
Etcd Cluster
Discovery API $> curl https://discovery.etcd.io/new https://discovery.etcd. io/463c1435f9f63c952e0899b1f459c0fe $> curl -s
https://discovery.etcd. io/463c1435f9f63c952e0899b1f459c0fe | jq ".node. nodes[].value" "http://172.31.19.1:7001" "http://172.31.19.0:7001" "http://172.31.18.255:7001"
Locksmith Reboot manager for the CoreOS update engine.
Locksmith • Reboot strategies for CoreOS updates • Uses etcd
for distributed locks • Alpha, Beta, Stable channels
Cloud Config Customize a CoreOS machine through user- data.
Cloud Config • Initialization of your instances • Configure etcd,
fleet, locksmith • YAML file • eg. EC2 user-data, Autoscaler launch- config
Configure your cluster #cloud-config coreos: update: reboot-strategy: etcd-lock
Configure your cluster #cloud-config coreos: update: reboot-strategy: etcd-lock etcd: discovery:
https://discovery.etcd.io/<token>
Configure your cluster #cloud-config coreos: update: reboot-strategy: etcd-lock etcd: discovery:
https://discovery.etcd.io/<token> users: - name: teemow coreos-ssh-import-github: teemow
Flannel Overlay networks backed by etcd.
Cloud overlay network • One subnet per machine • Get
rid of docker port mapping • Let containers talk to each other via IP addresses
Backends • Encapsulate packets in UDP • VXLAN implementation coming
Fleet Systemd for the cluster
Fleet • CLI and API to start your containers •
Uses etcd and systemd
Fleet deployment
Fleet Scheduler • Relatively simple > By meta data >
Same machine/exclusion • Resolve service dependencies! • More to come > Resource management (CPU, memory etc.)
Unit file [Unit] Description=A Redis Server [Service] TimeoutStartSec=0 ExecStartPre=/usr/bin/docker pull
teemow/redis ExecStart=/usr/bin/docker run --rm -p 6379 --name %n teemow/redis 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
Service Discovery
Three-Tier Application • Load Balancer • App • Database
Sidekick Keep configuration out of your app
Ambassador Reverse proxy for your service Keep service discovery out
of your app
Using CoreOS
CoreOS • Great foundation to create flexible distributed infrastructures •
Unix philosophy
Kubernetes • Google Container Orchestration • Runs on top of
CoreOS
cAdvisor • Monitoring for your containers • Collects, aggregates and
processes metrics • InfluxDB Backend • Monitoring of clusters with Heapster
Deis Heroku-like Open Source PaaS
Panamax • Web interface to start multi container apps •
App Templates on Github • Open Source project from CenturyLink Labs
We ♥ CoreOS
Docker Cologne - CoreOS Meetup 19:00, 14th October Startplatz Brandon
Philips, CTO of CoreOS Luke Marsden, CTO of Flocker There is a Meetup in Cologne
Sign up for the Giant Swarm private Beta Request Invite
http://giantswarm.io/
Thanks for listening! Reach out: Timo Derstappen @teemow @giantswarm