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 と CI/CD の 活用について
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
k725
January 27, 2021
Technology
0
2.8k
Kubernetes と CI/CD の 活用について
k725
January 27, 2021
Tweet
Share
Other Decks in Technology
See All in Technology
自動テストが巻き起こした開発プロセス・チームの変化 / Impact of Automated Testing on Development Cycles and Team Dynamics
codmoninc
1
960
Kaggleの経験が実務にどう活きているか / kaggle_findy
sansan_randd
1
320
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
3
430
Security Diaries of an Open Source IAM
ahus1
0
190
マルチロールEMが実践する「組織のレジリエンス」を高めるための組織構造と人材配置戦略
coconala_engineer
2
310
Databricksアシスタントが自分で考えて動く時代に! エージェントモード体験もくもく会
taka_aki
0
300
ヘルシーSRE
tk3fftk
2
230
LINEアプリ開発のための Claude Code活用基盤の構築
lycorptech_jp
PRO
1
1.3k
WBCの解説は生成AIにやらせよう - 生成AIで野球解説者AI Agentを実現する / Baseball Commentator AI Agent for Gemini
shinyorke
PRO
0
330
マイグレーションガイドに書いてないRiverpod 3移行話
taiju59
0
350
入門DBSC
ynojima
0
130
Datadog Cloud Cost Management で実現するFinOps
taiponrock
PRO
0
130
Featured
See All Featured
Deep Space Network (abreviated)
tonyrice
0
85
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Documentation Writing (for coders)
carmenintech
77
5.3k
How to Ace a Technical Interview
jacobian
281
24k
Designing for humans not robots
tammielis
254
26k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
HDC tutorial
michielstock
1
490
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
850
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
620
Scaling GitHub
holman
464
140k
New Earth Scene 8
popppiees
1
1.7k
Transcript
Kubernetes ͱ CI/CD ͷ ׆༻ʹ͍ͭͯ
Agenda • ͡Ίʹ • γεςϜ֓ཁ • Kubernetes ͷ׆༻ • GitHub
Actions Ͱͷ CI/CD • ࠓޙͷվળ
͡Ίʹ
୭ • ύʔιϧΩϟϦΞגࣜձࣾ αʔϏεاը։ൃຊ෦ • @_k725 • ۀ: Πϯϑϥ, ηΩϡϦςΟͷ
ΞυόΠεɾۀڥվળͳͲ • झຯ: ϓϩάϥϛϯά, OPSEC, OSINT, ͓ण͖࢘🍣
༰ʹؔͯ͠ • Kubernetes ʹ͍ͭͯ৮ΕΔ෦͕ଟ͍Ͱ͢ 🙇
γεςϜ֓ཁ
ͦͦ͜Ε…? • ݱࡏӡ༻͍ͯ͠Δ CAREER POCKET* ͷத৺తͳσʔλϕʔε • σʔλϕʔεͷϓϩδΣΫτ໊ Candicom •
Candidate (ީิ) + Communication (ΓͱΓ) = Candicom • αΠϘζࣾͷ Kintone Λར༻͍͕ͯͨ͠ ࣾͷنఆʹΑΓར༻Λଓ͚Δͷ͕͘͠ͳͬͨ • ؆୯ͳಡΈॻ͖͢Δ API Λඋ͑ͨɺϛχαΠζͷΫϩʔϯ * CAREER POCKET ʹ͍ͭͯޙड़
ར༻Πϝʔδ ߘ స৬τʔΫ ཤྺه* Candicom * ཤྺͳͲͷใར༻ऀͷಉҙͷԼอ͍ͯ͠·͢
ػೳ • ϑΟϧλΛ༻ͨ͠Ϧετ • CSV Πϯϙʔτ, ΤΫεϙʔτ • RESTful ͳ
CRUD API
Kubernetes ͷ׆༻
Kubernetes (k8s) ͱ • Google ͕ઃܭͨ͠ίϯςφΦʔέ ετϨʔγϣϯγεςϜ • ίϯςφΛΫϥελ (ෳͷϚγϯ
ͷଋ) Ͱԣஅͯ͠σϓϩΠ, ε έʔϦϯά͢ΔͨΊͷϓϥοτ ϑΥʔϜ Kubernetes - Wikimedia Commons / CC BY 4.0
Πϯϑϥߏ
Pros and Cons • Pros ☺ • ಛఆͷίϯϙʔωϯτͷΈͷߋ৽ͷ߹ɺӨڹൣғ͕ݶΒΕΔ • εέʔϦϯά,
Autohealing, ϩΪϯά, ϝτϦΫεऔಘͷԸܙ͕ Kubernetes ʹΑͬͯಘΒΕΔ (ओʹϚωʔδυͳ Kubernetes ͷ߹) • Cons 😭 • Kubernetes ୯ମͰͷӡ༻͖ͬΓݴͬͯͭΒ͍ [ཁग़య] • σϓϩΠपΓͳͲॳظͷஈ֊Ͱؾͮ͘ • ಛʹεςʔτΛ࣋ͭϦιʔε (DB, ΩϟογϡͳͲ) Λ ΫϥελʹࠞͥΔͱհͳଘࡏʹͳΔ
GitHub Actions Ͱͷ CI/CD
Կߟ͑ͳ͍ͱ٧·Δ • ಛʹ kubectl yaml ؔ࿈ • Q. ࠷৽ͷΠϝʔδΛৗʹ͏Α͏ʹ͢Δʹʁ •
ΠϝʔδλάΛมߋ͠ͳ͍ͱ৽͍͠ίϯςφ͕σϓϩΠ͞Εͳ͍ • ͰɺࢮͰ docker pull [image]:latest ͍ͨ͠ • Q. ։ൃ, εςʔδϯά, ༻ڥͰͷͷΓସ͑Λߦ͏ʹʁ • ʑ͍͠ yaml ΛίϐϖࡇΓͨ͘͠ͳ͍ • Q. ൿಗʹ͖͢ใͲ͏ͬͯӅ͢ʁ • ྲྀੴʹڥมʹϕλॻ͖ͭΒ͍
࠷৽ͷΠϝʔδΛৗʹ͍͍ͨ • 1. Skaffold* ͰΠϝʔδͷ Ϗϧυɾϓογϡ • 2. latest λάϏϧυ͠
ͨΠϝʔδʹ͚ͭͯ͋͛ ͯϓογϡ͢Δ • 3. Skaffold Ͱ Kubernetes ΫϥελͷσϓϩΠ * Skaffold ʹ͍ͭͯޙड़
Skaffoldͱ • Google Ͱ࡞ΒΕͨ Kubernetes ͷσϓϩΠΛศརʹ͢Δπʔϧ • kubectl, kustomize, helm
ͳͲΛΑ͠ͳʹ࣮ߦͯ͘͠ΕΔ • ϥούʔ + Ұ෦ಠࣗͷػೳ ͷΑ͏ͳ…
ڥຖʹΛΓସ͍͑ͨ
ൿಗใΛ͍࣋ͪͨ • Β͘Β͘ίʔε (ඪ४ػೳ) • ΫϥελͷཧݖݶΛ࣋ͬͯΔͱ༨༟ͰσʔλΛݟΔ͜ͱ͕ग़དྷΔ • GCP ͷཧը໘͔Β Key-Value
ͷ Key ֬ೝՄೳ • ͜ͷϦιʔεࣗମ yaml ͰදݱͰ͖Δ͕ɺ͜ͷํ๏Λ͏߹ ҙਤతʹ yaml Λॻ͔ͳ͍ํ͕ྑͦ͞͏ɻ (git ʹίϛοτͱ͔ͷՄೳੑ)
ൿಗใΛ͍࣋ͪͨ • ηΩϡΞίʔε • HashiCorp Vault • جຊతͳ Key-Value ܗࣜͰͷอҎ֎ʹɺಈతͳ
IAM ੜɺ σʔλͷ༗ޮظݶɺࠪϩάɺσʔλͷ҉߸Խ/෮߸Խ ͳͲͳͲ ߦ͑Δ • AWS KMS, Cloud KMS, Cloud Secret Manager ͳͲ
ͨͩ͠ • (ͲͷΈͪ) Ϋϥελ, Pod ʹ৵ೖ͞ΕΔͱ͍͘Β IAM Λߜ͍ͬͯͯ Ωπ͍෦͋Δ (RBAC
ͷ༻ͰΧόʔग़དྷΔ෦͋Δ) • ϓϩάϥϜଆϝϞϦʹೝূใͳͲΛ࣋ͭ͜ͱʹͳΔͷͰɺϦʔυ ΦϯϦʔίϯςφ & γΣϧΞΫηεണୣͩͬͨΓ͢Δ͖ (?) • ͜ͷลΓ GKE ͷυΩϡϝϯτͳͲΛಡΈ·͕࣮ͨ֬͠ͳͷෆ ໌…
ࠓޙ*ͷվળ ͜ͷลղܾ👏 *ࠓޙͱ͔ॻ͖ͭͭ͜ͷͷݩωλ 2020/06 ͘Β͍Ͱ͢…
END