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 NYC Meetup
Search
Eugene Yakubovich
July 28, 2015
Technology
2
240
CoreOS NYC Meetup
Under the hood of Tectonic and the CoreOS ecosystem
Eugene Yakubovich
July 28, 2015
Tweet
Share
More Decks by Eugene Yakubovich
See All by Eugene Yakubovich
Container Network Interface: Network plugins for Kubernetes and beyond
eyakubovich
0
270
From network namespace to fabric overlay
eyakubovich
0
36
Other Decks in Technology
See All in Technology
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
240
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
5.8k
君も受託系GISエンジニアにならないか
sudataka
2
370
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
130
プロセス改善による品質向上事例
tomasagi
1
1.6k
日経電子版 x AIエージェントの可能性とAgentic RAGによって提案書生成を行う技術
masahiro_nishimi
1
290
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
22
5.8k
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
logica0419
2
730
High Performance PHP
cmuench
0
140
偶然 × 行動で人生の可能性を広げよう / Serendipity × Action: Discover Your Possibilities
ar_tama
1
740
WAF に頼りすぎない AWS WAF 運用術 meguro sec #1
izzii
0
460
関東Kaggler会LT: 人狼コンペとLLM量子化について
nejumi
3
460
Featured
See All Featured
Six Lessons from altMBA
skipperchong
27
3.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Facilitating Awesome Meetings
lara
51
6.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Optimizing for Happiness
mojombo
376
70k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Faster Mobile Websites
deanohume
306
31k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Transcript
Eugene Yakubovich Software Developer Maintainer of flannel @eyakubovich Under the
hood of Tectonic
Under the hood of tectonic CoreOS Linux CoreOS projects (etcd,
fleet, flannel) Kubernetes Tectonic layer
What is CoreOS Linux?
kernel systemd etcd ssh docker python java nginx mysql openssl
app tro distro distro distro distro distro
kernel systemd etcd ssh docker python java nginx mysql openssl
app tro distro distro distro distro distro
tro distro distro distro distro distro python openssl-A app1 java
openssl-B app2 java openssl-B app3 kernel systemd etcd ssh docker
tro distro distro distro distro distro python openssl-A app1 java
openssl-B app2 java openssl-B app3 CoreOS
tro distro distro distro distro distro CoreOS container container container
atomic with rollback auto updates
None
None
None
None
PUT /v2/keys/foo HTTP/1.1 value=bar
GET /v2/keys/foo HTTP/1.1 {“node”: {“value”: “bar”}}
Fault Tolerant Distributed K/V Store
fleet
None
None
None
10.0.16.0/24 10.0.24.0/24 10.0.71.0/24
10.0.16.0/24 10.0.24.0/24 10.0.71.0/24 10.0.16.2 10.0.24.3
None
$ rkt run example.com/app:v2.0.0 rkt: searching for app image example.com/app:v2.0.0
rkt: fetching image from https://example.com/app-v2.0.0-linux-amd64.aci Downloading signature from https://example.com/app-v2.0.0-linux-amd64.aci.asc Downloading ACI: [=================] 3.79 MB/3.79 MB openpgp: signature made by unknown entity
$ rkt run example.com/app:v2.0.0 rkt: searching for app image example.com/app:v2.0.0
rkt: fetching image from https://example.com/app-v2.0.0-linux-amd64.aci Downloading signature from https://example.com/app-v2.0.0-linux-amd64.aci.asc Downloading ACI: [=================] 3.79 MB/3.79 MB openpgp: signature made by unknown entity $ rkt trust --prefix example.com/app https://example.com/pubkeys.gpg Prefix: "example.com/app" Key: "https://example.com/pubkeys.gpg" GPG key fingerprint is: 8B86 DE38 890D DB72 9186 7B02 5210 BD88 8818 2190 ACI Builder <
[email protected]
> Are you sure you want to trust this key (yes/no)? yes Trusting "https://example.com/pubkeys.gpg" for prefix "example.com/app". Added key for prefix "example.com/app" at "/etc/rkt/trustedkeys/prefix. d/example.com/app/8b86de38890ddb7291867b025210bd8888182190"
$ rkt trust --prefix example.com/app https://example.com/pubkeys.gpg Prefix: "example.com/app" Key: "https://example.com/pubkeys.gpg"
GPG key fingerprint is: 8B86 DE38 890D DB72 9186 7B02 5210 BD88 8818 2190 ACI Builder <
[email protected]
> Are you sure you want to trust this key (yes/no)? yes Trusting "https://example.com/pubkeys.gpg" for prefix "example.com/app". Added key for prefix "example.com/app" at "/etc/rkt/trustedkeys/prefix. d/example.com/app/8b86de38890ddb7291867b025210bd8888182190" $ rkt run example.com/app:v2.0.0 rkt: searching for app image example.com/app:v2.0.0 rkt: fetching image from https://example.com/app-v2.0.0-linux-amd64.aci Downloading signature from https://example.com/app-v2.0.0-linux-amd64.aci.asc Downloading ACI: [=================] 3.79 MB/3.79 MB rkt: signature verified: ACI Builder <
[email protected]
>
[Service] ExecStart = /usr/bin/rkt run --inherit-env example.com/app:v2.0.0 Restart = always
CPUShares = 512 MemoryLimit = 1G Environment = HTTP_PROXY=192.0.2.3:5000 Environment = STORAGE_PATH=/opt/app Environment = TMPDIR=/var/tmp
None
None
Replication Controller x 4
kube-apiserver kube-controller-manager kube-scheduler kube-kubelet kube-proxy kube-kubelet kube-proxy
HOW-TO /GoogleCloudPlatform /kubernetes /tree /master /docs /getting-started-guides /coreos
Boot up master ◦ Start a CoreOS image ◦ Bring
up etcd ◦ Configure and bring up flannel ◦ Download and start ➢ kube-apiserver ➢ kube-controller-manager ➢ kube-scheduler
Boot up workers ◦ Bring up etcd proxy ◦ Download
and bring up ➢ kube-proxy ➢ kubelet
None
fleet deploy { } run kube-* CoreOS Linux + etcd
+ flannel
Workers talk to control cluster via proxy
None
Questions? Sign up for Tectonic at tectonic.com