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始めてみた
Search
かびさん@あおかびん
July 11, 2018
Technology
0
890
Kubernetes始めてみた
沖縄・宜野湾エンジニア勉強会(大LT大会) のトーク資料です
https://connpass.com/event/90184/
かびさん@あおかびん
July 11, 2018
Tweet
Share
More Decks by かびさん@あおかびん
See All by かびさん@あおかびん
K8s進捗報告
aokabin
0
350
Okinawa.go Tour of Go! 説明資料
aokabin
0
870
フリーランスの良さ悪さ
aokabin
1
430
2018年LT大会
aokabin
0
120
将来のためのコミュニティ活動
aokabin
0
110
Other Decks in Technology
See All in Technology
TypeScript開発にモジュラーモノリスを持ち込む
sansantech
PRO
2
690
エンジニアカフェ忘年会2024「今年やらかしてしまったこと!」
keropiyo
0
100
Qiita埋め込み用スライド
naoki_0531
0
5.3k
5分でわかるDuckDB
chanyou0311
10
3.3k
多様なメトリックとシステムの健全性維持
masaaki_k
0
120
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
500
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
18
5.6k
PHPerのための計算量入門/Complexity101 for PHPer
hanhan1978
5
700
怖くない!ゼロから始めるPHPソースコードコンパイル入門
colopl
0
170
最近のSfM手法まとめ - COLMAP / GLOMAPを中心に -
kwchrk
4
610
OCI技術資料 : ファイル・ストレージ 概要
ocise
3
11k
Opcodeを読んでいたら何故かphp-srcを読んでいた話
murashotaro
0
320
Featured
See All Featured
The Language of Interfaces
destraynor
155
24k
Bash Introduction
62gerente
609
210k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
RailsConf 2023
tenderlove
29
940
A designer walks into a library…
pauljervisheath
205
24k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
530
4 Signs Your Business is Dying
shpigford
182
21k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Transcript
Kubernetes࢝ΊͯΈͨ ͔ͼ @d_ishitaka
ࣗݾհ • ͔ͼ͞Μˏੴߴେհ Twitter: @d_ishitaka ԾطࠗऀͰ͢ʂʂ Ծࠗ͠·ͨ͠ʂ • ླྀٿେֶʹฤೖ͖ͯͨ͠4ੜ(3ճ)Ͱ͢ɻ •
ڈ·Ͱٳֶͯͯ͠ϑϦʔϥϯεΤϯδχΞͨ͠ΓɺΞϧόΠτͨ͠Γͯ͠·ͨ͠(ࠓ) • ʮࢦథܳਓʯ • Ϋϥυٕज़͕͖ͰɺJAWSUGͱGCPUGʹΑ͘ߦͬͯ·͢ɻ • ͖ͳݴޠGoͰɺ࠷ۙΑ͘RubyΛॻ͍͍ͯ·͢ɻ • ۤखͳͷԾ௨՟Ͱ͢ɻ
ࣗݾհ
ࣗݾհ • ͔ͼ͞Μˏੴߴେհ Twitter: @d_ishitaka ԾطࠗऀͰ͢ʂʂ Ծࠗ͠·ͨ͠ʂ • ླྀٿେֶʹฤೖ͖ͯͨ͠4ੜ(3ճ)Ͱ͢ɻ •
ڈ·Ͱٳֶͯͯ͠ϑϦʔϥϯεΤϯδχΞͨ͠ΓɺΞϧόΠτͨ͠Γͯ͠·ͨ͠(ࠓ) • ʮࢦథܳਓʯ • Ϋϥυٕज़͕͖ͰɺJAWSUGͱGCPUGʹΑ͘ߦͬͯ·͢ɻ • ͖ͳݴޠGoͰɺ࠷ۙΑ͘RubyΛॻ͍͍ͯ·͢ɻ • ۤखͳͷԾ௨՟Ͱ͢ɻ
ࠓ͢͜ͱ •Kubernetesͱʁ(ͬ͘͞Γ) •Ͳ͏͍͍ͷʁ •͡ΊͯΈͨ •ݱঢ়ɺKubernetesΛऔΓר͘ڥ •·ͱΊ
ࠓճͷͷτʔΫͷςʔϚ Kubernetes
KubernetesͬͯΔਓʁ
ΫόωςεͬͯΔਓʁ
ΫϕϧωςεͬͯΔਓʁ
ΫʔϕϧωΠςεͬͯΔਓʁ
ͪͳΈʹਖ਼͍͠ಡΈํ
None
͜ΕӕͰ͠ΐʂ
͜ͷதͰ ۀͰKubernetesΛ͍ͬͯΔਓʁ
͜ͷதͰ ۀͰKubernetesΛ͍ͬͯΔਓʁ ϚαΧϦ࠷ޙʹ·ͱΊ͓ͯ͛Լ͍͞
Kubernetesͱʁ •͍ΘΏΔຊ൪ڥʹ͑Δʮίϯςφʯͷ ʮΦʔέετϨʔγϣϯπʔϧʯͰ͢ɻ →
Kubernetesͱʁ •͍ΘΏΔຊ൪ڥʹ͑Δʮίϯςφʯͷ ʮΦʔέετϨʔγϣϯπʔϧʯͰ͢ɻ → Ͳ͏ͬͯ͏ͷ͔ͳʁ
ͦͦίϯςφͱʁ
ͦͦίϯςφͱʁ •Α͘Θ͔Βͳ͍͚ͲɺΠϝʔδ͜Μͳײ͡ͷ ԾԽٕज़ͷҰͭͩͱଊ͍͑ͯ·͢ɻ
ΦʔέετϨʔγϣϯπʔϧͱʁ •(ଟ)ChefͷKnife(ଟ)AnsibleͷΑ͏ʹɺओʹ ϚγϯͷηοτΞοϓใΛهड़ͨ͠Կ͔͠ΒͷϑΝ Πϧ͕͋ΓɺͦΕΒͷϑΝΠϧΛݩʹ࡞ΒΕͨαʔ όʔΛཧ͢ΔͨΊͷΈ(←ͱղऍ͍ͯ͠Δ) •ͦΕͷίϯςφ൛ (Ͳ͏ΒLXDͷDockerҎ֎ͷίϯςφٕज़ʹ ͑͢ΔΒ͍͠)
ͭ·ΓKubernetes αʔόʔ্ʹ͋ΔίϯςφΛ ཧͯ͘͠ΕΔͭ…ʂ
ͭ·ΓKubernetes αʔόʔ্ʹ͋ΔίϯςφΛ ཧͯ͘͠ΕΔͭ…ʂ Ұ୴ͳΔ΄Ͳ…ʁ
KubernetesͲ͏͍͍ͷʁ
ྑ͘Θ͔Γ·ͤΜʂ
ͰDockerΛ͏έʔεଟͦ͏ •ϚΠΫϩαʔϏεΞʔΩςΫνϟ͕ྲྀߦͬͯ ͖͍ͯͨΓɺ࣮ߦڥͱಉ͡ڥΛ։ൃڥ Ͱ࠶ݱͰ͖ͨΓɺςετͷ࣌αʔόʔཱͯ ͣʹDockerίϯςφΛͬͨΓ͢Δέʔε ૿͍͑ͯΔؾ͕͢Δɻ •ͦ͏͍͏χʔζͷ͜ͱΛߟ͑ΔͱɺAnsible ChefVagrantͰॏ͍ؾ͢Δɻɻɻ
DevOpsͷ྆ํ͕Ͱ͖Δ •࠷ॳ͔ΒKubernetesͰӡ༻͍ͯ͠Εɺαʔόʔ ্ͰͲͷϛυϧΣΞΛར༻͢Δ͔։ൃऀ͕ Dockerfileʹॻ͚ྑ͍͠ɺ͙͢ʹखݩͰࢼͤΔɻ •ChefΛ͍ͬͯΔͱɺϚγϯͷϛυϧΣΞಉ ࢜ͷׯবͱ͔ͱ͔ߟ͑ͳ͍ͱ͍͚ͳ͍ͷͱɺϩʔ ΧϧͰVM༻ҙ͢Δͱ͔݁ߏॏ͍ɻVagrantવ Γɻ
োੑ͕࠷ॳ͔Βߴ͍ •ͪΖΜCookbookͱ͔ʹͪΌΜͱσʔϞϯͱ͠ ͯɺམͪͨΒ࠶ىಈ͢Δͱ͔ॻ͍͍ͯΕ͍͍ ͷ͚ͩͲɺϗετʹΰϛ͕ͬͯͦͷΰϛͷ͍ͤ ͰىಈͰ͖ͳ͍ͱ͔ͩͱհ(inodeͱ͔)ɻ •KubernetesΛ͍ͬͯΕམͪͨΒίϯςφ͕ࢮ ʹɺউखʹ৽ཱͯͯ͘͘͠ΕΔͷͰɺ͋·Γͦͷ ลΛؾʹ͠ͳ͍͍ͯ͘ɺԿͳΒΞϓϦέʔγϣ ϯΤϥʔͰམͪͯɺىಈͯ͘͠ΕΔɻ
ͱ͍͏ͱ͜ΖͰͬͯΈ·ͨ͠
࣮KubernetesΛݚڀʹ Έࠐ͏ͱ͍ͯ͠Δ •ࢄॲཧΛݚڀࣨͰѻ͏ͷͰɺͦͷࢄॲཧ Λߦ͏ڥࣗମΛKubernetes+DockerͰରԠ͠ Α͏ͱ͍ͯ͠Δɻ •ͦ͏͢Δ͜ͱʹΑͬͯݚڀࣨͷ༨ϦιʔεΛ ͬͯɺڥΛԚͣ͞ʹܭࢉॲཧΛߦ͏͜ͱ͕Ͱ ͖ͦ͏ʂ •ͳͷͰKubernetesΛ࢝ΊͯΈ·ͨ͠ɻ
KubernetesͷTutorial •ͱΓ͋͑ͣKubernetesͷTutorialΛ •https://kubernetes.io/docs/tutorials/
Kubernetes Tutorialͷྑ͍ͱ͜Ζ •ϒϥβ্ͰKubernetesΛࢼͤΔʂ
Kubernetes Basics •·ͣKubernetes BasicsͷTutorialΛʂ •༰͜Μͳײ͡ʹͳ͍ͬͯΔΑ͏Ͱ͢ɻ
https://kubernetes.io/docs/tutorials/kubernetes- basics/create-cluster/cluster-interactive/
TutorialΛऴ͑ͯ… •νϡʔτϦΞϧ͘Β͍ͩͬͨΒผʹ͘͠ͳ͍͕ɺ࣮ࡍʹ͓͏ͱ͢ ΔͱɺࣗݾڥͰͷηοτΞοϓ͕໘ͳ༷ࢠ •minikubeΛ͑ϩʔΧϧͰେৎ͚ͩͲϚϧνϊʔυ·ͩରԠ ͯ͠ͳͦ͞͏ •NodeͷωοτϫʔΫઃఆɺKubernetesͷଓʑ… •ҰԠϩʔΧϧͰηοτΞοϓ͢Δํ๏ͱͯ͠bootkubeͱ͍͏πʔϧग़ ͖͍ͯͯͯɺݸਓͰ͏ͷʹෑډԼ͕͖͍ͬͯͯΔΑ͏Ͱ͕͢ɺ KubernetesͰαΫοͱαʔϏε࡞ͬͯग़͔͢ʔɺͷϋʔυϧ·ͩߴ͍ •࠷ۙͷைྲྀʁ
ͬͺΓΫϥυΛ͏ํ͕͍͍ •࠷ۙͰKubernetesʹରԠ͍ͯ͠ΔΫϥυϗεςΟϯάڥॆ࣮ ͖͍ͯͯ͠Δ •GCPͷGKE(Google Kubernetes Engine) •AzureͷAKS(Azure Kubernetes Service) logoແ͔ͬͨ
•AWSͷEKS(Elastic Kubernetes Service) •͜ͷதͩͱ࣮ӡ༻ࣄྫͰݸਓతʹΑ͘ݟΔͷGKEͰɺҙ֎ͳ͜ͱʹ AWSͷEKSҰ൪ޙൃ •ͱ͍͑ݚڀͰ͏ͷͰࣗલͰ·ͳ͍ͱ͍͚ͳ͍Ͱ͕͢ʂʂ
·ͱΊ •Kubernetesɺӡ༻Ͳ͏Βָͦ͏͚ͩͲɺࣗͰΫ ϥελΉͱ݁ߏେมͦ͏ʂ •ͰmicroserviceԽͷྲྀΕ͋Δ͔ΒɺͦΕͱͷ૬ੑ ྑͦ͞͏ʂ •͠ຊ൪ͱͯ͠͏ͳΒGKEͱ͔AKSͱ͔EKSͱ͔Λ ׆༻͢Δͷ͕͍͍͔Ͱ͢Ͷʂ •ࣗલͰΉtipsࠓޙݚڀ͕ਐΊߋ৽ͯ͠ߦ͖·͢ʂ
exit 0
ࠂ •7/17(Ր)ͷʹOkinawa.go͋Γ·͢ʂདྷͯͶʂ •https://okinawa-go.doorkeeper.jp/events/76882