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
自己診断能力の獲得を目指して / Toward the acquisition of self...
Search
Takeshi Kondo
August 03, 2023
Technology
7.5k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
自己診断能力の獲得を目指して / Toward the acquisition of self-diagnostic skills
CNDF2023
https://event.cloudnativedays.jp/cndf2023
Takeshi Kondo
August 03, 2023
More Decks by Takeshi Kondo
See All by Takeshi Kondo
SREの知識地図 - 第2章の紹介 - / Knowledge Map of SRE – Introduction to Chapter 2 –
chaspy
0
100
SRE NEXT CfP チームが語る 聞きたくなるプロポーザルとは / Proposals by the SRE NEXT CfP Team that are sure to be accepted
chaspy
2
1.8k
Slack Platform(Deno) での RAG 実装 - LangChain(js) を使ってみた / rag-implementation-on-slack-platform-deno-experimenting-with-langchain-js
chaspy
0
310
SRE の考えをマネジメントに活かす / applying SRE ideas to management
chaspy
7
8.4k
RAGの簡易評価によるフィードバックサイクル実践 / Feedback cycle practice through simplified assessment of RAGs
chaspy
2
6.1k
定量データと定性評価を用いた技術戦略の組織的実践 / Systematic implementation of technology strategies using quantitative data and qualitative evaluation
chaspy
9
2.3k
エンジニアブランディングチームの KPI / KPI's of engineer branding team
chaspy
2
2.6k
「SLO Review」今やるならこうする / If I had to do the "SLO Review" again
chaspy
3
2.4k
開発者とともに作る Site Reliability Engineering / SREing with Developers
chaspy
10
9.1k
Other Decks in Technology
See All in Technology
タクシーアプリ『GO』の実践的データ活用〜位置情報データの収集とStreamlitでの可視化〜
mot_techtalk
2
200
GitHub CopilotのFinOps- AI CreditのObservabilityと価値を生むためのエージェント設計
yuriemori
0
100
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
120
OSPN.JPバージョンアップ作業進捗のご報告 / 20260801-osc26kyoto
akkiesoft
0
260
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
760
サイバー捜査員研修(前半)
nomizone
1
1.6k
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
1
350
変化の早いClaude Codeを 書籍に落とし込む
oikon48
6
1.3k
制約理論(ToC)入門 2026版
recruitengineers
PRO
3
430
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
2
680
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
120
AI駆動開発は個人技からチーム戦へ:組織でAIを使いこなすための実践設計
moongift
PRO
0
440
Featured
See All Featured
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
460
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
41k
How STYLIGHT went responsive
nonsquared
100
6.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
560
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.7k
Discover your Explorer Soul
emna__ayadi
2
1.2k
Technical Leadership for Architectural Decision Making
baasie
3
460
Mind Mapping
helmedeiros
PRO
1
300
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
360
Transcript
ࣗݾஅೳྗͷ֫ಘΛࢦͯ͠ Takeshi Kondo / @chaspy 2023/08/03 Cloud Native Days Fukuoka
2023
Who am I 2 chaspy chaspy_ Engineering Manager Site Reliability
and Web Application Development at Recruit Co., Ltd. Ԭग़ͳͷͰࠓ͓͠Ͱ͖ͯخ͍͠Ͱ͢😄 Takeshi Kondo https://chaspy.me
ʰελσΟαϓϦʱখதߴͷ։ൃΛ͍ͯ͠·͢ 3
Cloud Native…? 4
5 • Infra: AWS & EKS / GCP (Pub/Sub, BigQuery)
• CI: GitHub Actions & Self-Hosted runner • Ref: GitHub Actions Self-hosted Runner ͷಋೖͱ҆ఆӡ༻ʹ͚ͨي • CD: ArgoCD & ͷ deploy-action ʰελσΟαϓϦʱ Cloud Native
Cloud Native ʹΑͬͯ։ൃऀ͕ࣗݾ݁͢ΔੈքΛࢦ͢ • SRE νʔϜͷϛογϣϯ • “ࣗݾ݁νʔϜ͕ϓϩμΫτΛૉૣ҆͘શʹಧ͚ଓ͚ΔͨΊͷϓϥοτ ϑΥʔϜͱจԽΛ࡞Δ” •
ࣗݾ݁: ࣗͨͪͰඞཁͳͷΛࣗͨͪͰ༻ҙͰ͖Δ͜ͱ • ։ൃɺQAɺσϓϩΠɺࢹɺશͯҰ؏ͯ͠։ൃऀ͕ߦ͏ • QA ΤϯδχΞɺSRE ͦͷαϙʔτ • ։ൃऀ͕ Kubernetes yaml Terraform HCL ॻ͘͠ɺDatadog ͷ Dashboard ݟͯ Monitor ͷઃఆΛ͢ΔɻE2E ςετͷγφϦΦॻ͘ɻ ҙͷλΠϛϯάͰσϓϩΠ͢Δɻ 6
Cloud Native ͔ͩΒͦ͜Ͱ͖Δ”͋ͨΓ·͑” (1/3) • On-Demand & Scalable • Pull
Request ͝ͱͷ Preview ڥ • ಠཱͨ͠ෛՙࢼݧڥ (ref: GitHub Actions Self-hosted Runner ͱ Gatling ʹΑΔෛՙࢼݧ) • ؒɾٳͷ։ൃڥఀࢭ • ຊ൪σʔλϕʔεΛ։ൃڥ࣌ͰϦετΞ (ref: εϜʔζͳ։ൃମݧΛࢧ͑ΔσʔλϕʔεϦετΞͷΈ) 7
Cloud Native ͔ͩΒͦ͜Ͱ͖Δ”͋ͨΓ·͑” (2/3) • Declarative Con fi guration, Infrastructure
as Code • ίʔυ͔Β API ܦ༝ͰϦιʔεΛมߋՄೳ • ίʔυࣗಈੜʹΑΓೝෛՙΛݮ͢Δ • Ϙλϯ1ͭͰ Terraform ͷ৽ن state / directory ΛੜՄೳ • ϚΠΫϩαʔϏεΛ৽ن࡞͢Δࡍͷ Kubernetes yaml Λࣗಈੜ • Datadog SLO ͷ Terraform HCL ͷࣗಈੜ 8
Cloud Native ͔ͩΒͦ͜Ͱ͖Δ”͋ͨΓ·͑” (3/3) • Declarative Con fi guration, Infrastructure
as Code • Policy Check & CI ͰͷΨΠυʹΑΓೝෛՙΛݮ͢Δ 9 S3 όέοτআ࣌ɺforce_destroy ͕͍ͭͯͳ͍ͷͰܯࠂ PR ͝ͱͷ Preview ڥσϓϩΠޙʹ௨ ArgoCD ͷϦϯΫ͕͋ΔͷͰ Քಇঢ়ଶ͕Θ͔Γ͍͢
ࠓ͓͢͠Δ͜ͱ Cloud Native ͳϓϩμΫτ։ൃ৫ʹ͓͚Δ ࣗݾஅೳྗൃ۷ͷࣄྫ 10
ઌʹ4ߦ·ͱΊ Cloud Native ͳϓϩμΫτ։ൃ৫Ͱ ٕज़ઓུάϧʔϓΛ্ཱͪ͛ͯ ࣗݾஅೳྗͷൃ۷Λࢦͨ݁͠Ռ ʮܧଓੑͱଟ༷ੑʯʹΑͬͯ͏·͘ߦͬͨ 11
Key Messages ܧଓੑͱଟ༷ੑ 12
Outline • ʰελσΟαϓϦʱʹ͓͚Δ Cloud Native • ʮٕज़ઓུʯͱʮٕज़ઓུάϧʔϓʯʹ͍ͭͯ • ࣗݾஅೳྗͱԿ͔ /
ͳͥࣗݾஅೳྗ͕ॏཁͳͷ͔ • ͜Ε·ͰͷऔΓΈ • ߟ • ·ͱΊ 13
Outline • ʰελσΟαϓϦʱʹ͓͚Δ Cloud Native • ʮٕज़ઓུʯͱʮٕज़ઓུάϧʔϓʯʹ͍ͭͯ • ࣗݾஅೳྗͱԿ͔ /
ͳͥࣗݾஅೳྗ͕ॏཁͳͷ͔ • ͜Ε·ͰͷऔΓΈ • ߟ • ·ͱΊ 14
ٕज़ઓུͱ ϓϩμΫτ։ൃ৫ʹ͓͍ͯ ԿΛΔ͔ɺԿΛΒͳ͍͔ 15
ͳٕͥज़ઓུ͕ඞཁ͔ • Ϗδωεͷʹਵ͢ΔͨΊ • มߋΛ͍͢͠γεςϜɾίʔυɾ৫ʹ͢Δ • มߋΛ͛ΔཁҼઌճΓͯ͠ରॲ͢Δ(ٕज़తෛ࠴ͷฦࡁ) • ͦͷঢ়ଶΛظతʹҡ࣋Ͱ͖ΔೳྗΛಘΔ 16
ͳٕͥज़ઓུ”άϧʔϓ”͕ඞཁ͔ 17 • ٕज़ઓུͷܾΊํ৫ʹΑͬͯҟͳΔ • 1ਓͷ CTO ͕τοϓμϯͰܾΊ͍͍ͯ • ϘτϜΞοϓͰશһ߹ٞͰܾΊ͍͍ͯ
• ͦͷதؒͰ͍͍ • ʰελσΟαϓϦʱٕज़ઓུΛ1ਓʹґଘ͠ͳ͍ΈΛ࡞Δ͜ͱʹ ઓ͍ͯ͠Δ
ٕज़ઓུάϧʔϓͱ 18 • త • ϓϩμΫτ։ൃ৫ͱͦͷγεςϜΛΑΓมԽʹڧ͘͢Δ • ඪ • ٕज़తͳϏδϣϯͱํͷࡦఆ
• ٕज़త՝ɾෛ࠴ΛίϯτϩʔϧԼʹஔ͘ • վળαΠΫϧͷཱ֬ͱࣗݾஅೳྗͷ֫ಘ
׆ಈମ 19 • త • ϓϩμΫτ։ൃ৫ͱͦͷγεςϜΛΑΓมԽʹڧ͘͢Δ • ඪ • ٕज़తͳϏδϣϯͱํͷࡦఆ
• ٕज़త՝ɾෛ࠴ΛίϯτϩʔϧԼʹஔ͘ • վળαΠΫϧͷཱ֬ͱࣗݾஅೳྗͷ֫ಘ ԣஅG Ref: Who owns the Service Level? ٕज़ઓུԣஅϫʔΩϯάάϧʔϓͷ׆ಈใࠂ DevOps G
DevOps G ͷతͱ׆ಈ 20 • తɿʢ։ൃνʔϜͷʣࣗݾஅೳྗͷ֫ಘͷͨΊʹઃஔ • ϝϯόʔ ྖҬ͝ͱͷ WebDev
/ QA / SRE • ߹ܭ7໊ɺ༷ʑͳνʔϜ͔Βू·͍ͬͯΔ • શһ݉Ͱߏ • ׆ಈिʹ1࣌ؒͷϛʔςΟϯά͕ϕʔε • Leader ͕ςʔϚʹԊͬͯϑΝγϦςʔγϣϯΛ͢Δ • ͍ͨ͠τϐοΫ͕͋Ε୭Ͱ࣋ͪࠐΈok
͔Γ͍͢·ͱΊ 21 ελσΟαϓϦখதߴϓϩμΫτ։ൃ෦ Stream Aligned Teams BtoB BtoC ԣஅܥ 5FBN
5FBN 5FBN 5FBN 43& ج൫։ൃ 2" 5FBN 5FBN 5FBN 5FBN ԣஅ 'SPOUFOE %FW0QT ٕज़ઓུ ٕज़ઓུͷ͏ͪʮࣗݾஅೳྗͷ ֫ಘʯΛࢦ͢ ֤νʔϜ͔Βશһ݉ͰࢀՃ
Outline • ʰελσΟαϓϦʱʹ͓͚Δ Cloud Native • ʮٕज़ઓུʯͱʮٕज़ઓུάϧʔϓʯʹ͍ͭͯ • ࣗݾஅೳྗͱԿ͔ /
ͳͥࣗݾஅೳྗ͕ॏཁͳͷ͔ • ͜Ε·ͰͷऔΓΈ • ߟ • ·ͱΊ 22
ࣗݾஅೳྗͱ 23 அ͢ΔͨΊʹঢ়گΛ Ѳ͢Δඞཁ͕͋Δʢࢦඪ Ξηεϝϯτʣ அ͢Δʹ·ͣප Ӄʹߦ͘ඞཁ͕͋Δ ʢஅͷτϦΨʔʣ ͯ͠පؾ͔Ͳ͏͔ͷ ఆʢධՁʣɺ͋Δ͍
࣏ྍʢվળʣΛ͠ͳ͚Ε ͳΒͳ͍
ͳͥࣗݾஅೳྗ͕ॏཁ͔ 24 • ʮ՝ʯͷಛ • ৗʹݟ͍͑ͯΔͱݶΒͳ͍ • มΘΓଓ͚Δ • ࢦඪΞηεϝϯτΛ௨ͯࣗͨͪ͡ͷݱঢ়ΛఆྔతʹѲ͢
Δඞཁ͕͋Δ • oneshot Ͱͳ͘ɺܧଓੑॏཁ • ࣗͨͪͷߦಈʹΑͬͯԿ͕มΘͬͨͷ͔ɺ͋Δ͍มΘΒͳ͔ͬͨͷ͔ ΛධՁ͠ଓ͚Δඞཁ͕͋Δ
Outline • ʰελσΟαϓϦʱʹ͓͚Δ Cloud Native • ʮٕज़ઓུʯͱʮٕज़ઓུάϧʔϓʯʹ͍ͭͯ • ࣗݾஅೳྗͱԿ͔ /
ͳͥࣗݾஅೳྗ͕ॏཁͳͷ͔ • ͜Ε·ͰͷऔΓΈ • ߟ • ·ͱΊ 25
Timeline 26 2021 2022 2023 CloudNative Days Fukuoka 2023 όϦϡʔετϦʔϜ
Ϛοϐϯά σϓϩΠසͷܭଌ DX Criteria (2) DX Criteria (1) άϧʔϓͷϏδϣϯ ͱظඪͷઃఆ ։ൃνʔϜͰͷࢦඪΛ ༻͍ͨվળ͕ߦΘΕΔ DX Criteria (3) ͓͢͢ΊϝτϦΫεͷ ࡦఆ ܰྔ൛ͷࢹৼΓฦΓ ͷ࡞ͱݕূ νʔϜͷࢹशख़ ৼΓฦΓ࡞
Timeline 27 2021 2022 2023 CloudNative Days Fukuoka 2023 όϦϡʔετϦʔϜ
Ϛοϐϯά σϓϩΠසͷܭଌ DX Criteria (2) DX Criteria (1) άϧʔϓͷϏδϣϯ ͱظඪͷઃఆ ։ൃνʔϜͰͷࢦඪΛ ༻͍ͨվળ͕ߦΘΕΔ DX Criteria (3) ͓͢͢ΊϝτϦΫεͷ ࡦఆ ܰྔ൛ͷࢹৼΓฦΓ ͷ࡞ͱݕূ νʔϜͷࢹशख़ ৼΓฦΓ࡞
2021લ 28 • ·ͣόϦϡʔετϦʔϜϚοϐϯάͰݱঢ়ೝࣝΛ߹Θͤͨ • ީิͱͳΔ Metrics Λग़͢ • σϓϩΠճʢසʣͷϞχλϦϯά
• DX Criteria ʢΞηεϝϯτʣͷ࣮ࢪ
όϦϡʔετϦʔϜϚοϐϯά 29 Meta Issue (Epic) ࡞~ ։ൃ
όϦϡʔετϦʔϜϚοϐϯά 30 ։ൃྃ ~ εϓϦϯτϨϏϡʔ QA ~ ຊ൪ϦϦʔε
ީิͱͳΔ Metrics / Indicator ͷચ͍ग़͠ͱܭଌ 31 όϦϡʔετϦʔϜϚοϐ ϯάΛΠϯϓοτʹɺվ ળͨ͠߹ͷϝϦοτͷ ԾઆɺͦΕΛ્ͯ͠
͍ΔΛϐοΫΞοϓ
DX Criteria ͷ࣮ࢪ 32 • ຊ CTO ڠձ͕ࡦఆͨ͠ DX ʹؔ͢ΔΞηεϝϯτ
• https://dxcriteria.cto-a.org/ • DX = Digital Transformation & Developer Experience • 5ͭͷςʔϚ͕͋Δ • νʔϜ / γεςϜ / σʔλۦಈ / σβΠϯࢥߟ / ίʔϙϨʔτ • ։ൃ৫ͳΒνʔϜɺγεςϜ͔Β࢝ΊΔͷ͕͓͢͢Ί
DX Criteria ͷ࣮ࢪ 33 ref: ࣗͨͪͷγεςϜΛஅ͢ΔͨΊʹ DX Criteria"γεςϜ"ςʔϚΛ࣮ࢪ͠·ͨ͠
Timeline 34 2021 2022 2023 CloudNative Days Fukuoka 2023 όϦϡʔετϦʔϜ
Ϛοϐϯά σϓϩΠසͷܭଌ DX Criteria (2) DX Criteria (1) άϧʔϓͷϏδϣϯ ͱظඪͷઃఆ ։ൃνʔϜͰͷࢦඪΛ ༻͍ͨվળ͕ߦΘΕΔ DX Criteria (3) ͓͢͢ΊϝτϦΫεͷ ࡦఆ ܰྔ൛ͷࢹৼΓฦΓ ͷ࡞ͱݕূ νʔϜͷࢹशख़ ৼΓฦΓ࡞
2021ޙ 35 • औಘͨ͠ metrics ͕׆༻͞Ε͍ͯͳ͍͜ͱ͕՝ʹ্͕Δ • σϓϩΠΛऔ͕ͬͨੳ͞Ε͍ͯͳ͍ • Coverband
ʹΑΔίʔυΧόϨοδ͕ݟΒΕ͍ͯͳ͍ • DX Criteria 2ճ࣮ࢪ • ઃͷҙਤͷ֬ೝʹ͕͔͔࣌ؒΔ՝
2021ͷৼΓฦΓ 36 • 😄׆ಈΛܧଓͰ͖ͨ • 😄ࢦඪΛݕ౼͠ɺܭଌͨ͠ • 😄DX CriteriaʢΞηεϝϯτʣΛ2࣮ࢪͨ͠ •
🤔ࢦඪ͕վળͷʹཱ͍ͯͯͳ͍ • 🤔DX Criteria ࣮ࢪେมʢ͕͔͔࣌ؒΔɺղऍ͕͍͠ʣ
Timeline 37 2021 2022 2023 CloudNative Days Fukuoka 2023 όϦϡʔετϦʔϜ
Ϛοϐϯά σϓϩΠසͷܭଌ DX Criteria (2) DX Criteria (1) άϧʔϓͷϏδϣϯ ͱظඪͷઃఆ ։ൃνʔϜͰͷࢦඪΛ ༻͍ͨվળ͕ߦΘΕΔ DX Criteria (3) ͓͢͢ΊϝτϦΫεͷ ࡦఆ ܰྔ൛ͷࢹৼΓฦΓ ͷ࡞ͱݕূ νʔϜͷࢹशख़ ৼΓฦΓ࡞
2022લ 38 • άϧʔϓͷϏδϣϯΛࡦఆ • શͯͷ։ൃνʔϜ͕ΛࣗΒൃݟ͠վળ͠ଓ͚Δੈքͷ࣮ݱ • άϧʔϓͷ͝ͱͷඪΛఆΊͨ • DevOps
G Ͱൃ۷ͨ͠ࢦඪΛͬͯෳͷ։ൃνʔϜ͕վળαΠΫϧΛճͤͯ ͍Δ͜ͱ • DX Criteria 3ճͷ࣮ࢪ • அͱͯ͠༗ޮ͕ͩɺ࣮ࡍʹվળΛ͢Δ͕࣌ؒͳ͍ͱ͍͏՝ • ՝Λ࣋ͪࠐΜͰɺͦͷͰղܾ͢Δ͜ͱ͕૿͖͑ͯͨ • ྫ: ͜ͷΛධՁ͢Δ Metrics ͋Δʁ͜͏ͨ͠ΒͰ͖ΔΑ
2022લͷৼΓฦΓ 39 • 😄ඪΛୡͰ͖ͨ • DevOps G ࢀՃϝϯόʔ͕νʔϜʹ࣋ͪؼͬͯվળΛϦʔυ • DX
Criteria ΛνʔϜͰ࣮ࢪ • ςετΧόϨοδΛදࣔ͠ɺςετΛ૿͢ • 🤔DX Criteria ࣮ࢪେมʢ͕͔͔࣌ؒΔɺղऍ͕͍͠ʣ • લͷظ͔Βܧଓ
Timeline 40 2021 2022 2023 CloudNative Days Fukuoka 2023 όϦϡʔετϦʔϜ
Ϛοϐϯά σϓϩΠසͷܭଌ DX Criteria (2) DX Criteria (1) άϧʔϓͷϏδϣϯ ͱظඪͷઃఆ ։ൃνʔϜͰͷࢦඪΛ ༻͍ͨվળ͕ߦΘΕΔ DX Criteria (3) ͓͢͢ΊϝτϦΫεͷ ࡦఆ ܰྔ൛ͷࢹৼΓฦΓ ͷ࡞ͱݕূ νʔϜͷࢹशख़ ৼΓฦΓ࡞
2022ޙ 41 • άϧʔϓͷඪΛมߋ • Before: DevOps G Ͱൃ۷ͨ͠ࢦඪΛͬͯෳͷ։ൃνʔϜ͕վળαΠΫϧΛճ͍ͤͯ Δ͜ͱ
• After: ։ൃνʔϜ͕ࣗΒඞཁͳࢦඪΛൃݟ͠ɺվળαΠΫϧΛճ͢͜ͱ͕Ͱ͖͍ͯΔ͜ͱ • ʮ͓͢͢ΊϝτϦΫεʯͷࡦఆ • લʹચ͍ग़ͨ͠ࢦඪͱผ • औಘํ๏ޮՌޮೳΛهࡌ • ͓͢͢ΊϝτϦΫεಉ࢜ͷؔਤ࡞ • ಠࣗͷʮνʔϜͷࢹशख़ৼΓฦΓʯΛ࡞ɺ࣮ࢪ
͓͢͢ΊϝτϦΫε 42
͓͢͢ΊϝτϦΫεؔਤ 43
νʔϜͷࢹशख़ৼΓฦΓ - Google form Ͱ࣮ࢪ 44
νʔϜͷࢹशख़ৼΓฦΓ - Ϩϕϧ͝ͱͷΞΫγϣϯ(1/3) 45 ॳظঢ়ଶɻࢹ͓ͯ͠ΒͣྼԽΛͰ͖ͳ͍ɺΞΫγϣϯͷओମऀෆ໌ྎͰ͋Δɻ ࢹͷͨΊͷΈ Production Readiness Checklist ͳͲΛ௨ͯ͡ఆΊΒΕ͍ͯΔɻ
͔͠͠ྼԽʹର͢ΔΞΫγϣϯ͕ͳ͞Ε͍ͯͳ͍ɻ
νʔϜͷࢹशख़ৼΓฦΓ - Ϩϕϧ͝ͱͷΞΫγϣϯ(2/3) 46 ࢹͷͨΊͷϓϩηε͕श׳Խ͞Εɺͨ͠ྼԽʹ͍ͨͯ͠ΞΫγϣϯ͕औΒΕ͍ͯΔɻ
νʔϜͷࢹशख़ৼΓฦΓ - Ϩϕϧ͝ͱͷΞΫγϣϯ(3/3) 47 Level 2 ʹՃ͑ɺࢹख๏ϓϩηεܧଓతʹݟ͓ͯ͠Γɺվળ͠ଓ͚͍ͯΔɻ
νʔϜͷࢹशख़ৼΓฦΓΛͬͯΈͯ 48 • ΄ͱΜͲͷαʔϏε͕ Level 2 ͩͬͨ • Level2: ࢹͷͨΊͷϓϩηε͕श׳Խ͞Εɺͨ͠ྼԽʹରͯ͠ΞΫγϣϯ͕औΒΕ
͍ͯΔ • Production Readiness Checklist ͰࢹઃఆҰ௨Γ͢ΔͨΊ • Level 3 ͷαʔϏε΄΅ͳ͍ • Level3: Level 2 ʹՃ͑ɺࢹख๏ϓϩηεܧଓతʹݟ͓ͯ͠Γɺվળ͠ଓ͚͍ͯΔɻ • ϓϩηεͦͷͷͷఆظతͳݟ͠ = ࣗݾஅࣗମͷஅͰ͖͍ͯͳ͍ • ϚΠΫϩαʔϏε୯Ґɾػೳ୯ҐͰ࣮ࢪͨ͠ͷͰɺ1ͭͷνʔϜ͕ෳճ͠ ͳ͚ΕͳΒͣɺճࣗମ͕ॏ͔ͬͨ • ܧଓੑʹ՝͕͋Δ
2022ޙͷৼΓฦΓ 49 • 😄͓͢͢ΊϝτϦΫεͷ੍ఆͱͦͷؔਤͷ࡞Λͨ͠ • 😄ࢹʹؔ͢ΔಠࣗͷΞηεϝϯτΛ࡞ͨ͠ • 😄ίϥϘϨʔγϣϯ͕૿͑ͨ • quipper/google-cloud-pub-sub-operator
• SRE / WebDev Ͱ PR ڥͰڞ༗ͷ Cloud Pub/Sub ʹΑΓɺτϐοΫ ͕औΒΕͯ͠·͏՝Λղܾ͢ΔͨΊʹ࡞ͬͨ Kubernetes Operator • 🤔Ξηεϝϯτࣗମ͕ʮॏ͍ʯ͜ͱΓ՝ʹ
Timeline 50 2021 2022 2023 CloudNative Days Fukuoka 2023 όϦϡʔετϦʔϜ
Ϛοϐϯά σϓϩΠසͷܭଌ DX Criteria (2) DX Criteria (1) άϧʔϓͷϏδϣϯ ͱظඪͷઃఆ ։ൃνʔϜͰͷࢦඪΛ ༻͍ͨվળ͕ߦΘΕΔ DX Criteria (3) ͓͢͢ΊϝτϦΫεͷ ࡦఆ ܰྔ൛ͷࢹৼΓฦΓ ͷ࡞ͱݕূ νʔϜͷࢹशख़ ৼΓฦΓ࡞
2023લʢݱࡏʣ 51 • άϧʔϓͷඪҡ࣋ • ։ൃνʔϜ͕ࣗΒඞཁͳࢦඪΛൃݟ͠ɺվળαΠΫϧΛճ͢͜ͱ͕Ͱ͖͍ͯΔ͜ͱ • ༗ӹͳࢦඪͷൃ۷ͱվળ • monorepo
ͷ CI ܭଌπʔϧΛಈ͔͢ • ্ه GitHub Action Λ OSS ͱͯ͠Γग़ͨ͠ ref: quipper/send-ci-result-to-bigquery-action • ES2 Test(MagicPod) ͷ࣮ߦ݁Ռͷܭଌ ref: chaspy/magicpod-datadog-action / ʰελσΟαϓϦ தֶߨ࠲ʱʹ͓͚Δ E2E Test ͷӡ༻ͱܭଌʹΑΔվળ • ࢹͷৼΓฦΓΞηεϝϯτͷܰྔ൛Λ࡞ɺݕূத
༗ӹͳࢦඪͷൃ۷ͱվળ / DevOps G Ͱ࡞ͬͨ CI ܭଌ͔Βվળ 52
ࢹৼΓฦΓͷܰྔ൛ 53
ࢹৼΓฦΓͷܰྔ൛ 54
ࢹৼΓฦΓͷܰྔ൛ΛͬͯΈͯ 55 • ·ͣ DevOps WG Ͱෳճ࣮ࢪ͍ͯ͠Δ • 5ஈ֊ධՁ؆୯ •
அࣗମΛܰྔԽ͢Δ͜ͱʹΑͬͯश׳Խͤ͞ΒΕΔ • ओ؍ʹΑΓϒϨͯ͠·͏՝্͕͕ͬͨɺ͍ͭͨࣗମͲ͏Ͱ Α͘ɺνʔϜͰղऍΛձ͢Δ͜ͱ͕ॏཁ • ࢹπʔϧʹؔ͢Δ Tips ͕ू·Δͷఆ֎ʹ༗ӹͩͬͨ
Outline • ʰελσΟαϓϦʱʹ͓͚Δ Cloud Native • ʮٕज़ઓུʯͱʮٕज़ઓུάϧʔϓʯʹ͍ͭͯ • ࣗݾஅೳྗͱԿ͔ /
ͳͥࣗݾஅೳྗ͕ॏཁͳͷ͔ • ͜Ε·ͰͷऔΓΈ • ߟ • ·ͱΊ 56
͜ͷ׆ಈΛ௨ͯ͡զʑ͕ಘͨͷ 57 • ࢦඪΞηεϝϯτΛ࣮ӡ༻ʹܨ͛Δݟ • ࢦඪͷऔಘํ๏ͱޮՌޮೳ͕·ͱ·ͬͨද • զʑ͕࡞ͬͨɾධՁͨ͠Ξηεϝϯτπʔϧ • ࣗݾஅೳྗʹ͍ͭͯձ͠ଓ͚ΒΕΔॴ
• ͨ͘͞Μͷ՝ղܾ
͜ͷ׆ಈΛ௨ͯ͡զʑ͕ಘͨͷ 58 • ࢦඪΞηεϝϯτΛ࣮ӡ༻ʹܨ͛Δݟ • ࢦඪͷऔಘํ๏ͱޮՌޮೳ͕·ͱ·ͬͨද • զʑ͕࡞ͬͨɾධՁͨ͠Ξηεϝϯτπʔϧ • ࣗݾஅೳྗʹ͍ͭͯձ͠ଓ͚ΒΕΔॴ
• ͨ͘͞Μͷ՝ղܾ
ࢦඪΞηεϝϯτʹؔ͢Δߟ 59 • ࢦඪऔಘ͢Δ͚ͩͰҙຯ͕ͳ͍ʢͦΕͦ͏ʣ • ධՁͯ͠վળ͠ͳ͚Εҙຯ͕ͳ͍ => νʔϜʹ࣋ͪؼͬͯΒ͏ඞཁ͕͋Δ • ࢦඪ՝͕͋ͬͯॳΊͯʹͨͭ
=> ՝͕ू·Δ͕༗ޮ • ࢦඪͷऔಘࣗମٕज़ྗγεςϜͷཧղ͕ඞཁ • ΞηεϝϯτͷϙΠϯτ • ܧଓ͕ͦ͜࠷ॏཁ • ࣮ࢪࣗମ͕େมͩͱଓ͔ͳ͍ɺश׳ԽͱܰྔԽ͕ॏཁ • ΞΫγϣϯʹܨ͛ΔʹνʔϜͰճͷࠜڌΛ͢ͷ͕େࣄ
͜ͷ׆ಈΛ௨ͯ͡զʑ͕ಘͨͷ 60 • ࢦඪΞηεϝϯτΛ࣮ӡ༻ʹܨ͛Δݟ • ࢦඪͷऔಘํ๏ͱޮՌޮೳ͕·ͱ·ͬͨද • զʑ͕࡞ͬͨɾධՁͨ͠Ξηεϝϯτπʔϧ • ࣗݾஅೳྗʹ͍ͭͯձ͠ଓ͚ΒΕΔॴ
• ͨ͘͞Μͷ՝ղܾ
ࣗݾஅೳྗʹ͍ͭͯձ͠ଓ͚ΒΕΔॴ 61 • िʹ1ɺ1͚࣌ؒͩ͢ • 1ؒͰ52࣌ؒʢ࣮ࡍʹٳΈ͕͋ΔͷͰͬͱগͳ͍ʣ • ͍ͭͰΛ͛ࠐΊΔॴ͕͋Δ͜ͱʹΑΔར • ݱΕଓ͚Δ͠ɺܗΛม͑ଓ͚Δ
• ଟ༷ͳϝϯόʔͰղܾ͕Ͱ͖Δ • ͔ͩΒͦࣗ͜ݾஅೳྗ͕ॏཁͰ͋Γɺܧଓੑ͕େࣄ
͜ͷ׆ಈΛ௨ͯ͡զʑ͕ಘͨͷ 62 • ࢦඪΞηεϝϯτΛ࣮ӡ༻ʹܨ͛Δݟ • ࢦඪͷऔಘํ๏ͱޮՌޮೳ͕·ͱ·ͬͨද • զʑ͕࡞ͬͨɾධՁͨ͠Ξηεϝϯτπʔϧ • ࣗݾஅೳྗʹ͍ͭͯձ͠ଓ͚ΒΕΔॴ
• ͨ͘͞Μͷ՝ղܾ
͜ͷάϧʔϓΛىʹͨ͘͞Μͷ՝ղܾ͕Ͱ͖ͨ 63 • ՝ղܾओͳతͰͳ͔ͬͨͨΊɺ෭࣍తʹى͖ͨ • ՝Λ࣋ͪࠐΉͱʮͦΕ͙͢Ͱ͖ΔΑʯͱͳΔ • εϐϯΦϑతʹαϒϓϩδΣΫτ͍͔ͭ͘ੜ·Εͨ • ߏϝϯόʔͷଟ༷ੑͱٕज़ྗʹΑΓɺ୯ҰνʔϜͰಘΒΕͳ͍ྑ͍
՝ͷൃݟͱղܾ͕Ͱ͖͍ͯΔ • ৫ͷঢ়گʹ׆ಈ͕Ϛονͨ͠ • େن(80~)৫͔ͭɺCloud Native ʹΑΓ֤νʔϜ͕ࣗݾ݁తʹ։ൃΛਐΊΒΕ ΔΑ͏ʹͳͬͨ໘ɺνʔϜؒͷίϛϡχέʔγϣϯ࠷খԽ͞Ε͍ͯΔ͜ͱͰɺ՝ ൃݟݟͷڞ༗͕ͮ͠Β͘ͳ͍ͬͯͨ • ԣஅతɾଟ༷ͳϝϯόʔͰߏ͞Εͨάϧʔϓ͕ޮՌΛൃشͨ͠
࠷େͳ͜ͱ ܧଓੑͱଟ༷ੑ 64
ܧଓͰ͖͍ͯΔཧ༝: Ϛωδϝϯτͷ 65 • 2ɺԣஅɺશһ݉Ͱܧଓ͍ͯ͠Δͷ͍͢͝ • ʮ͍͠ͷͰ…ʯͱͳΓ͕ͪ • Lead /
Management ͷ(Ұൠ) • νʔϜʹඞཁͳεΩϧΛௐୡͨ͠ΓɺํੑΛܾΊΔ Management • ඪʹ͔ͬͯνʔϜΛલʹਐΊΔ Lead • ͜ΕΛ1ਓ͕ΔͱർΕͯ͠·͏ • Ϗδϣϯɾϛογϣϯͷࡦఆ(Ұൠ) • νʔϜΛલʹਐΊΔͷʹ༗ޮ • ϝϯόʔͷɾଟ༷ੑҡ࣋ɾLeader ΞαΠϯ • ৬ɾ͜Ε·Ͱগͳ͔Βͣ͋ͬͨ • ͦͷࡍඞͣଟ༷ੑ͕୲อ͞ΕΔΑ͏ʹϝϯόʔͷΞαΠϯΛ৺͕͚ͨ
ܧଓͰ͖͍ͯΔཧ༝: ৫ߏ 66 • ֤νʔϜ͔Βଟ༷ͳϝϯόʔ͕બΕͯɺνʔϜʹ࣋ͪؼΔ͜ͱͷྑ͞ • ࢦඪΞηεϝϯτΛݕূͯ͠ɺ࣮ࡍʹվળʹ׆͔͢ɺͱ͍͏άϧʔϓͷඪʹϚονͨ͠ • ͜ͷߏҎԼͷར͕͋Δ •
։ൃνʔϜͷ Ownership ΛߴΊΒΕɺࣗݾ݁νʔϜΛࢧ͑ΒΕΔ • DevOps νʔϜ vs ։ൃνʔϜͷΑ͏ʹରཱߏʹͳΒͳ͍ɾݖҖతʹͳΒͳ͍ • ՝͕ू·ΔॴʹͳΔ • நతɾ൚༻తͳιϦϡʔγϣϯΛੜΈग़͘͢͠ͳΔ • ͜ΕҰछͷσβΠϯύλʔϯʢ໊લΛ͚͍ͭͨ…ʣ • ֤νʔϜ͔Β݉Ͱू߹ͯٞ͠ˍνʔϜʹ࣋ͪؼ࣮ͬͯફΛϑΝγϦςʔγϣϯ • QA จ຺Ͱಉ༷ͷޭମݧΛಘΒΕͨͷͰ࠶ݱੑ͕͋Δ Ref: ʰελσΟαϓϦ தֶߨ࠲ʱʹ͓͚Δ E2E Test ͷӡ༻ͱܭଌʹΑΔվળ
֤νʔϜ͔Β݉Ͱू߹ͯٞ͠ˍνʔϜʹ࣋ͪؼ࣮ͬͯફΛϑΝγϦςʔγϣϯύλʔϯ 67 ελσΟαϓϦখதߴϓϩμΫτ։ൃ෦ Stream Aligned Teams BtoB BtoC ԣஅܥ 5FBN
5FBN 5FBN 5FBN 43& ج൫։ൃ 2" 5FBN 5FBN 5FBN 5FBN ԣஅ 'SPOUFOE %FW0QT ٕज़ઓུ 1. ू߹ͯٞ͠ 2. ࣋ͪؼ࣮ͬͯફ
ܧଓͰ͖͍ͯΔཧ༝: ৫จԽ 68 • ձࣾ౷߹લ(Quipper࣌)͔Β͋ΔόϦϡʔͱϚονͨ͠ • Fact-Based • Ownership ref:
ձࣾհࢿྉ • Fact-Based ʹٞ͢ΔͨΊʹࢦඪΛ୳ڀ͢Δ • Cloud Native ʹΑͬͯ։ൃऀ͕ Ownership Λ࣋ͬͯϑϧα ΠΫϧͰ໘ΛݟΔ
Outline • ʰελσΟαϓϦʱʹ͓͚Δ Cloud Native • ʮٕज़ઓུʯͱʮٕज़ઓུάϧʔϓʯʹ͍ͭͯ • ࣗݾஅೳྗͱԿ͔ /
ͳͥࣗݾஅೳྗ͕ॏཁͳͷ͔ • ͜Ε·ͰͷऔΓΈ • ߟ • ·ͱΊ 69
·ͱΊ Cloud Native ͳϓϩμΫτ։ൃ৫Ͱ ٕज़ઓུάϧʔϓΛ্ཱͪ͛ͯ ࣗݾஅೳྗͷൃ۷Λࢦͨ݁͠Ռ ʮܧଓੑͱଟ༷ੑʯʹΑͬͯ͏·͘ߦͬͨ 70
·ͱΊ 71 • ࣗݾஅೳྗͷπʔϧͰ͋ΔࢦඪΞηεϝϯτͦΕࣗମΛݕ ূɺධՁ͠ɺࣗ৫ʹϑΟοτ͢Δ͔Λ֬ೝ͢Δඞཁ͕͋Δ • ࣗݾஅܧଓੑ͕࠷ॏཁͰ͋ΓɺͦͷͨΊʹஅࣗମΛܰ ͘͢Δ͜ͱɺஅΛਪ͠ਐΊΔϫʔΩϯάάϧʔϓࣗମ͕ܧଓ ͍ͯ͠Δ͜ͱ͕ॏཁͰ͋Δ •
ࣗݾஅೳྗͷ࣮Λ୲͏ԣஅάϧʔϓΛଟ༷ͳϩʔϧɾνʔϜ ͔Βߏ͢Δ͜ͱʹΑΓɺଟ༷ͳϢʔεέʔε͕ू·Δ͜ͱʹͳ Γɺ՝ൃݟͱվળαΠΫϧ͕Ճ͞ΕΔ • ݁Ռɺ෭࣍తʹ࣮ࡍͷ՝ղܾଅਐ͞Εͨ
࠷େͳ͜ͱ ܧଓੑͱଟ༷ੑ 72
հ࣮ͨ͠ྫϚωδϝϯτͷ͔Β ώϯτΛಘͯΒ͑Δͱخ͍͠Ͱ͢ 73
Thank you! 74 chaspy chaspy_ Engineering Manager Site Reliability and
Web Application Development at Recruit Co., Ltd. Ԭָ͠ΜͰ͍ͬͯͶ😄 ࠙ձͰ͠·͠ΐ͏ʂ👋 Takeshi Kondo https://chaspy.me