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
130
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
110
Automating Kubernetes Cluster Operations with Operators
teemow
0
140
Microservices Docker @Bonn Agile
teemow
2
140
CoreOS @Railscamp
teemow
1
120
Other Decks in Technology
See All in Technology
ゼロから始めたFindy初のモバイルアプリ開発
grandbig
2
590
セキュリティ はじめの一歩
nikinusu
0
1.4k
Azure SQL Databaseでベクター検索を活用しよう
nakasho
0
130
DEVCON 14 Report at AAMSX RU65: V9968, MSX0tab5, MSXDIY etc
mcd500
0
240
SREの仕事を自動化する際にやっておきたい5つのポイント
jacopen
6
1.2k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.8k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Claude Codeベストプラクティスまとめ
minorun365
57
32k
入社1ヶ月でデータパイプライン講座を作った話
waiwai2111
1
200
What happened to RubyGems and what can we learn?
mikemcquaid
0
160
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1k
Featured
See All Featured
Building Applications with DynamoDB
mza
96
6.9k
Amusing Abliteration
ianozsvald
0
91
Producing Creativity
orderedlist
PRO
348
40k
The Cost Of JavaScript in 2023
addyosmani
55
9.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Claude Code のすすめ
schroneko
67
210k
How to Talk to Developers About Accessibility
jct
2
120
The Language of Interfaces
destraynor
162
26k
Scaling GitHub
holman
464
140k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
190
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