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 @Codetalks
Search
Timo Derstappen
October 17, 2014
Technology
2
110
CoreOS @Codetalks
Timo Derstappen
October 17, 2014
Tweet
Share
More Decks by Timo Derstappen
See All by Timo Derstappen
Automating Kubernetes Cluster Operations with Operators
teemow
0
91
Automating Kubernetes Cluster Operations with Operators
teemow
0
130
Microservices Docker @Bonn Agile
teemow
2
120
CoreOS @Railscamp
teemow
1
120
Other Decks in Technology
See All in Technology
OTelCol_TailSampling_and_SpanMetrics
gumamon
1
180
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
330
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
760
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.4k
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
130
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
1.2k
Terraform未経験の御様に対してどの ように導⼊を進めていったか
tkikuchi
2
450
Terraform Stacks入門 #HashiTalks
msato
0
360
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
310
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
13k
Featured
See All Featured
Music & Morning Musume
bryan
46
6.2k
Become a Pro
speakerdeck
PRO
25
5k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Site-Speed That Sticks
csswizardry
0
27
Gamification - CAS2011
davidbonilla
80
5k
Building an army of robots
kneath
302
43k
Done Done
chrislema
181
16k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
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