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
990
Kubernetes始めてみた
沖縄・宜野湾エンジニア勉強会(大LT大会) のトーク資料です
https://connpass.com/event/90184/
かびさん@あおかびん
July 11, 2018
Tweet
Share
More Decks by かびさん@あおかびん
See All by かびさん@あおかびん
K8s進捗報告
aokabin
0
370
Okinawa.go Tour of Go! 説明資料
aokabin
0
950
フリーランスの良さ悪さ
aokabin
1
500
2018年LT大会
aokabin
0
120
将来のためのコミュニティ活動
aokabin
0
140
Other Decks in Technology
See All in Technology
AIと融ける人間の冒険
pujisi
0
110
RALGO : AIを組織に組み込む方法 -アルゴリズム中心組織設計- #RSGT2026 / RALGO: How to Integrate AI into an Organization – Algorithm-Centric Organizational Design
kyonmm
PRO
3
530
田舎で20年スクラム(後編):一個人が企業で長期戦アジャイルに挑む意味
chinmo
1
940
Node vs Deno vs Bun 〜推しランタイムを見つけよう〜
kamekyame
1
160
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
21k
小さく、早く、可能性を多産する。生成AIプロジェクト / prAIrie-dog
visional_engineering_and_design
0
320
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
0
970
製造業から学んだ「本質を守り現場に合わせるアジャイル実践」
kamitokusari
0
210
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
820
ソフトウェアエンジニアとAIエンジニアの役割分担についてのある事例
kworkdev
PRO
1
360
純粋なイミュータブルモデルを設計してからイベントソーシングと組み合わせるDeciderの実践方法の紹介 /Introducing Decider Pattern with Event Sourcing
tomohisa
1
380
AWS re:Inventre:cap ~AmazonNova 2 Omniのワークショップを体験してきた~
nrinetcom
PRO
0
130
Featured
See All Featured
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
0
33
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
Amusing Abliteration
ianozsvald
0
80
The SEO identity crisis: Don't let AI make you average
varn
0
44
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
58
Large-scale JavaScript Application Architecture
addyosmani
515
110k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Building AI with AI
inesmontani
PRO
1
610
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Done Done
chrislema
186
16k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
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