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
Kubernetes とゼットラボの取り組み / Kubernetes and Z Lab's...
Search
Kazuki Suda
August 01, 2017
Technology
1.7k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Kubernetes とゼットラボの取り組み / Kubernetes and Z Lab's works
ビッグデータ基盤研究会@茗荷谷 17.08.01
Kazuki Suda
August 01, 2017
More Decks by Kazuki Suda
See All by Kazuki Suda
"なるべくスケジューリングしない" を実現する "PreferNoSchedule" taint
superbrothers
0
220
実践/先取り「入門 Kubernetes Validating/Mutating Admission Policy」 / CloudNative Days Winter 2024
superbrothers
0
73
個人的、Kubernetes の最新注目機能! (2024年5月版)
superbrothers
0
170
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher" エラーが発生する原因と対策
superbrothers
0
1.6k
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版)
superbrothers
2
1.6k
コミュニティ/ 勉強会紹介
superbrothers
0
280
高可用性、省力運用を目指す 自宅 Kubernetes クラスタ (K8s@home #1)
superbrothers
13
6.6k
KubeCon + CloudNativeCon Europe 2022 Recap
superbrothers
0
110
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後!
superbrothers
2
8.7k
Other Decks in Technology
See All in Technology
ご挨拶「10周年を迎える共創ラボのこれまでとこれから」
iotcomjpadmin
0
180
GitHub Copilot運用のリアル ~AI Credit時代にどう向き合うか~
takafumisu2uk1
0
620
そこにあるから地図ができる~位置を示す"モノ"を愉しむ~ - Interface 2026年6月号GPS特集オフ会 / interface_202606_GPS_offline
sakaik
1
190
Tech-Verse 2026_Keynote
lycorptech_jp
PRO
0
130
最近評価が難しくなった
maroon8021
0
200
FinOps X 2026 Recap from Engineer Side #JapanFinOps
chacco38
0
240
トークン最適化のためのユーザーストーリー分析 / User Story Analysis for Token Optimization
oomatomo
0
160
Hatena Engineer Seminar 37 jj1uzh
jj1uzh
0
420
AWS Blocks を触ってみた/first-tach-aws-blocks
fossamagna
2
140
CVE-2026-20833_脆弱性対応とAES 化について
jukishiya
0
350
Terraform 101 (初心者向け) 資料
shuadachi
0
170
Docker Desktop不要の時代が来る? WSL標準の「wslc」で Linuxコンテナを動かしてみた.
ueponx
0
600
Featured
See All Featured
Leo the Paperboy
mayatellez
7
1.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
A Modern Web Designer's Workflow
chriscoyier
698
190k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
160
We Have a Design System, Now What?
morganepeng
55
8.2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Discover your Explorer Soul
emna__ayadi
2
1.2k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.6k
Transcript
痥㔐ؽحؚر٦ة㛇湍灇瑔⠓ ,B[VLJ4VEBLTVEB![MBCDPKQ!TVQFSCSPUIFST ,VCFSOFUFTהئحزٓنך《穈
갭歊♧鰛,B[VLJ4VEB Ӝ 4PGUXBSF&OHJOFFS!;-BC Ӝ !TVQFSCSPUIFST
ئحزٓن吳䒭⠓爡 Ӝ 䎃剢鏣甧 Ӝ ؎ٝؿٓ㛇湍䪮遭ך锃叨٥灇瑔涪 ,VCFSOFUFT %PDLFS 1SPNFUIFVT (PMBOH
Ӝ َؿ٦吳䒭⠓爡㶨⠓爡 Ӝ IUUQT[MBCDPKQ
،آؑٝت ,VCFSOFUFTהכ⡦ַ ז,VCFSOFUFTזךַ ,VCFSOFUFTכוֲ⹛ֻךַ ئحزٓنך《穈
,VCFSOFUFTהכ⡦ַ
,VCFSOFUFT Ӝ ؝ٝذشؔ٦؛أزٖ٦ءّٝخ٦ٕ ؝ٝذشךꂁ⪒ծ鏣㹀ծ盖椚遤ֲ Ӝ ĜĦĔėģğήĥęςؘٔءٍ铂ד乼菭㡦 Ӝ (PPHMFך爡ⰻءأذيַ؎ٝأػ؎،ׁ “Kubernetes
is open source—a contrast to Borg and Omega, which were developed as purely Google-internal systems. “ Borg, Omega, and Kubernetes https://research.google.com/pubs/pub44843.html
https://twitter.com/brendandburns/status/585479466648018944
ז,VCFSOFUFTזךַ
,VCFSOFUFTכؔ٦فٝד֮ Ӝ ؔ٦فٝا٦أاؿزؐؑ، HJUIVCDPNLVCFSOFUFTLVCFSOFUFT "QBDIF-JDFOTF Ӝ ؔ٦فٝرؠ؎ٝ HJUIVCDPNLVCFSOFUFTDPNNVOJUZ Ӝ
ؔ٦فٝ؝ىُصذ؍ 4QFDJBM*OUFSFTU(SPVQT 4*(T 4MBDL 4UBDL0WFSPX Ⰻ⚅歲ד⟃♳ךى٦ز،حف Ӝ $MPVE/BUJWF$PNQVUJOH'PVOEBUJPO $/$'
,VCFSOFUFTכه٦ةـٕד֮ Ӝ DMPVEQSPWJEFS --# ـٗحؙأزٖ٦آזוך乼⡲䬄韋⻉ ($1 "84 "[VSF 0QFO4UBDL
Ӝ $/* $POUBJOFS/FUXPSL*OUFSGBDF $BMJDP 'MBOOFM 0QFOW4XJUDI 8FBWF Ӝ $POUBJOFS3VOUJNF %PDLFS SLU DSJP
,VCFSOFUFTכ䧭ꞿ׃גְ Kubernetes Docker Swarm Apache Mesos All Time Statistics
Contributors 1,473 201 288 Commits 49,619 3,331 24,308 12 Month Statistics Contributors 756 66 155 Commits 19,223 567 7,946 https://www.openhub.net/p/_compare?project_0=Kubernetes&project_1=docker+swarm&project_2=Apache+Mesos As of 17/06/12
,VCFSOFUFTכ䧭ꞿ׃גְ
,VCFSOFUFTכוֲ⹛ֻךַ
،٦ؗذؙثٍ $POUSPMMFS .BOBHFS FUDE 4DIFEVMFS BQJTFSWFS LVCFMFU $POUBJOFS 3VOUJNF CLI
API UI Master Node 1 LVCFMFU $POUBJOFS 3VOUJNF Node “n”
؝،؝ٝإفز Ӝ 1PET Ӝ -BCFMT Ӝ 3FQMJDB4FUT Ӝ 4FSWJDFT Ӝ
1FSTJTUFOU7PMVNFT
1PET Ӝ 醱侧ך؝ٝذشה 醱侧ךنُٔ٦ي Ӝ رفٗ؎ך剑㼭⽃⡘ Ӝ *1QFS1PE 1PE
Volume Web Server Agent
-BCFMT Ӝ ؗ٦غُٔ٦ךر٦ة Ӝ ㈓♧ךؚٕ٦ؾؚٝ堣腉 Ӝ ٓكٕإؙٖة BQQXFC SFMFBTFDBOBSZ
1PE release stable app web 1PE release canary app web
-BCFMT Ӝ ؗ٦غُٔ٦ךر٦ة Ӝ ㈓♧ךؚٕ٦ؾؚٝ堣腉 Ӝ ٓكٕإؙٖة BQQXFC SFMFBTFDBOBSZ
1PE release stable app web 1PE release canary app web
3FQMJDB4FUT Ӝ /⦐ך1PEָ㹋遤ׁגְ朐䡾⥂א 3FQMJDB4FU Replicas: 2 Selector: app=web Pod
Template 1PE app web 1PE app web
3FQMJDB4FUT Ӝ /⦐ך1PEָ㹋遤ׁגְ朐䡾⥂א 3FQMJDB4FU Replicas: 2 Selector: app=web Pod
Template 1PE app web
3FQMJDB4FUT Ӝ /⦐ך1PEָ㹋遤ׁגְ朐䡾⥂א 3FQMJDB4FU Replicas: 2 Selector: app=web Pod
Template 1PE app web 1PE app web
4FSWJDFT Ӝ ⟎䟝*1הه٦ز Ӝ ٓكٕإؙٖةח״ 1PEךؚٕ٦ؾؚٝ Ӝ DMVTUFSQSPWJEFSה鸬䵿׃ &YUFSOBM-#
1PE app web 1PE app web 3FQMJDB4FU 4FSWJDF VIP: 10.0.0.249 Selector: app=web
ך➭ Ӝ /BNFTQBDFTؙٓأةⴓⶴׅ Ӝ %FQMPZNFOUTٗ٦ؚٔٝ،حفر٦زծٗ٦ٕغحؙ Ӝ $POH.BQT،فٔ؛٦ءّٝה鏣㹀ךⴓꨄ Ӝ 4FDSFUT،فٔ؛٦ءّٝהء٦ؙٖحزךⴓꨄ Ӝ
1FSTJTUFOU7PMVNFT 1FSTJTUFOU7PMVNF$MBJNT宕竲نُٔ٦ي Ӝ *OHSFTT-頾蚚ⴓ侔ծغ٦ثٍٕمأزծ5-4穄畭 Ӝ +PCTٙٝءّحزآّـ Ӝ $SPO+PCآّـך㹀劍㹋遤 Ӝ 4UBUFGVM4FUTأذ٦زؿٕ،فٔ؛٦ءّٝ Ӝ %BFNPO4FUTⰋגךظ٦سד1PE㹋遤 Ӝ )PMJ[POUBM1PE"VUP4DBMFSؔ٦زأ؛٦ٕ
Demo
ئحزٓنך《穈
,VCFSOFUFTBTB4FSWJDF 涪罏ָإٕؿ؟٦ؽأד,VCFSOFUFTؙٓأة⡲䧭ծꤐծ刿 倜ָדֹ؟٦ؽأ Ӝ ؙٓأةךؔ٦زؼ٦ؚٔٝ Ӝ ؙٓأةךأ؛٦ٕ،ؐز٥أ؛٦ٕ؎ٝ Ӝ ؙٓأةךؔ٦ز،حفر٦ز /PEPXOUJNF
ٗ٦ؚٔٝ،حفر٦ز
,VCFSOFUFTBTB4FSWJDFPO,VCFSOFUFT ,VCFSOFUFTⰻ鿇ך堣腉ⵃ欽ֿׅהדծؽآطأٗآحؙך㹋 鄲ח㼔䙀דֹ Ӝ "1*ؒٝسه؎ٝزծ$36%ծ8BUDI"1* $VTUPN3FTPVSDF%FOJUJPOT Ӝ أذ٦زך㢌刿زٔؖח⹛⡲ׅ؝ٝزٗ٦ٓך㹋鄲 HJUIVCDPNLVCFSOFUFTDMJFOUHP
$VTUPN3FTPVSDF%FOJUJPOT Ӝ ⟣䠐ךٔا٦أ鷄⸇ "1*ؒٝسه؎ٝز $36%PQFSBUJPOT 8BUDI"1* Ӝ 513כWד䐖姺 apiVersion:
apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: kubernetesclusters.kubernetes.zlab.co.jp spec: scope: Namespaced group: kubernetes.zlab.co.jp version: v1alpha1 names: kind: KubernetesCluster plural: kubernetesclusters singular: kubernetescluster
$VTUPN3FTPVSDF%FOJUJPOT Ӝ ⟣䠐ךٔا٦أ鷄⸇ "1*ؒٝسه؎ٝز $36%PQFSBUJPOT 8BUDI"1* Ӝ 513כWד䐖姺 $
cat cluster01.yaml apiVersion: kubernetes.zlab.co.jp/v1alpha1 kind: KubernetesCluster metadata: name: cluster01 spec: version: "1.7.0" masterReplicas: 3 masterFlavor: large workerReplicas: 5 workerFlavor: large $ kubectl create -f ./cluster01.yaml kubernetescluster “cluster01” created
LVCFSOFUFT$MVTUFS WFSTJPONBTUFS3FQMJDBTXPSLFS3FQMJDBT LVCFSOFUFT UZQFNBTUFSWFSTJPOSFQMJDBT LVCFSOFUFT UZQFXPSLFSWFSTJPOSFQMJDBT NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF
NBDIJOF4FU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF4FU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF NBDIJOF NBDIJOF NBDIJOF NBDIJOF NBDIJOF
LVCFSOFUFT$MVTUFS WFSTJPONBTUFS3FQMJDBTXPSLFS3FQMJDBT LVCFSOFUFT UZQFNBTUFSWFSTJPOSFQMJDBT LVCFSOFUFT UZQFXPSLFSWFSTJPOSFQMJDBT NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF
NBDIJOF4FU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF4FU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF NBDIJOF NBDIJOF NBDIJOF NBDIJOF NBDIJOF XPSLFS3FQMJDBT̔
LVCFSOFUFT$MVTUFS WFSTJPONBTUFS3FQMJDBTXPSLFS3FQMJDBT LVCFSOFUFT UZQFNBTUFSWFSTJPOSFQMJDBT LVCFSOFUFT UZQFXPSLFSWFSTJPOSFQMJDBT NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF
NBDIJOF4FU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF4FU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF NBDIJOF NBDIJOF NBDIJOF NBDIJOF NBDIJOF NBDIJOF XPSLFS3FQMJDBT̔
LVCFSOFUFT$MVTUFS WFSTJPONBTUFS3FQMJDBTXPSLFS3FQMJDBT LVCFSOFUFT UZQFNBTUFSWFSTJPOSFQMJDBT LVCFSOFUFT UZQFXPSLFSWFSTJPOSFQMJDBT NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF
NBDIJOF4FU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF4FU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF NBDIJOF NBDIJOF NBDIJOF NBDIJOF NBDIJOF ؔ٦زؼ٦ؚٔٝ
LVCFSOFUFT$MVTUFS WFSTJPONBTUFS3FQMJDBTXPSLFS3FQMJDBT LVCFSOFUFT UZQFNBTUFSWFSTJPOSFQMJDBT LVCFSOFUFT UZQFXPSLFSWFSTJPOSFQMJDBT NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF%FQMPZNFOU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF
NBDIJOF4FU SFQMJDBTUFNQMBUFNBTUFS5FNQMBUF NBDIJOF4FU SFQMJDBTUFNQMBUFXPSLFS5FNQMBUF NBDIJOF NBDIJOF NBDIJOF NBDIJOF ؔ٦زؼ٦ؚٔٝ NBDIJOF
،٦ؗذؙثٍ $POUSPMMFS .BOBHFS FUDE 4DIFEVMFS BQJTFSWFS XJUI$3% CLI API $VTUPN
$POUSPMMFST DMVTUFS DMVTUFS DMVTUFS˒O˒ Kubernetes
״鑫׃ֻ濼חכ Ӝ LVCFSOFUFTJP Ӝ TMBDLLTJPKQVTFST KQFWFOUT Ӝ ,VCFSOFUFT.FFUVQ5PLZPCJUMZLTKQ Ӝ ,VCFSOFUFT6QBOE3VOOJOH03FJMMZ.FEJB
Ӝ #PSH 0NFHB BOE,VCFSOFUFT
5IBOLT Ӝ 4MJEF CJUMZLT[MBC Ӝ 2VFTUJPOT ,B[VLJ4VEBLTVEB![MBCDPKQ!TVQFSCSPUIFST 8FˏSFIJSJOHCJUMZ[MBCDBSFFST