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
ウォンテッドリーのインフラチームに加わってみて
Search
Kazuki Obata
November 20, 2024
Technology
260
0
Share
ウォンテッドリーのインフラチームに加わってみて
Wantedly Tech Night 〜サービスを支えるインフラ/SRE技術〜
https://wantedly.connpass.com/event/332164/
Kazuki Obata
November 20, 2024
More Decks by Kazuki Obata
See All by Kazuki Obata
ウォンテッドリーのアラート設計と Datadog 移行での知見
donkomura
0
640
KubeCon + CloudNativeCon Japan 2025 Recap
donkomura
0
730
計装を見直してアプリケーションパフォーマンスを改善させた話
donkomura
2
470
自分だけの仮想クラスタを高速かつ効率的に作る kubefork
donkomura
0
310
散らばったトレースを繋げる技術
donkomura
1
840
AWS CLI で気軽にコスト改善やってみた
donkomura
1
280
入門 KRR
donkomura
0
370
Other Decks in Technology
See All in Technology
VespaのParent Childを用いたフィードパフォーマンスの改善
taking
0
120
ServiceNow Knowledge 26 の歩き方
manarobot
0
210
AIが書いたコードを信じられない問題 〜レビュー負荷を下げるために変えたこと〜 / The AI Code Trust Gap: Reducing the Review Burden
bitkey
PRO
8
1.4k
Anthropic「Long-running a gents」をGeminiで再現してみた
tkikuchi
0
580
Standards et agents IA : un tour d’horizon de MCP, A2A, ADK et plus encore
glaforge
0
210
独断と偏見で試してみる、 シングル or マルチエージェント どっちがいいの?
shichijoyuhi
1
160
ハーネスエンジニアリングの概要と設計思想
sergicalsix
9
5.5k
AIでAIをテストする - 音声AIエージェントの品質保証戦略
morix1500
1
150
「AIに部下10人」を3ヶ月運用してわかった、生成AI駆動開発のリアル
yoheinabe777
0
110
AIが盛んな時代に 技術記事を書き始めて起きた私の中での小さな変化
peintangos
0
250
生成AI時代のドキュメントに対する期待の整理と実践から得た学び / Rethinking Documentation for LLM: Lessons from Practice
bitkey
PRO
1
100
小説執筆のハーネスエンジニアリング
yoshitetsu
0
810
Featured
See All Featured
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
430
How GitHub (no longer) Works
holman
316
150k
Between Models and Reality
mayunak
3
270
Building the Perfect Custom Keyboard
takai
2
740
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Agile that works and the tools we love
rasmusluckow
331
21k
Documentation Writing (for coders)
carmenintech
77
5.3k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
170
sira's awesome portfolio website redesign presentation
elsirapls
0
220
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
160
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
520
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Transcript
© 2024 Wantedly, Inc. ΥϯςουϦʔͷΠϯϑϥνʔϜ ʹՃΘͬͯΈͯ Wantedly Tech Night ʙαʔϏεΛࢧ͑ΔΠϯϑϥ/SREٕज़ʙ
Nov. 20 2024 - Kazuki Obata @donkomura
© 2024 Wantedly, Inc. ຊͷओ - ΥϯςουϦʔ Infra Squad ΛΔ
- ΥϯςουϦʔͷจԽɾงғؾΛײ͡Δ - VALUE ͱίϛϡχέʔγϣϯ - ۙ Join ͨ͠ࢲͷऔΓΈΛڞ༗ - ओʹ Observability ࢪࡦͷ͓
© 2024 Wantedly, Inc. ࣗݾհ ڊി थ (Obata Kazuki) @donkomura_
Wantedly, Inc. (2024/09 ~ ) ΠϯϑϥΤϯδχΞ #AWS #k8s #ࢄγεςϜ #storage #observability
© 2024 Wantedly, Inc. ࠓ͢͜ͱ - ֎ / ͔ΒݟͨΥϯςουϦʔ -
ೖࣾલޙͷ Wantedly - ଞʹͳ͍ັྗͱ՝ - จԽɾ৬ͷงғؾ - վળ͍ͨ͠ͱ͜Ζ - ೖࣾޙͷऔΓΈͱֶͼ - New Relic ͔Β Datadog ͷҠߦ
© 2024 Wantedly, Inc. ֎͔ΒݟͨΥϯςουϦʔ / ͔ΒݟͨΥϯςουϦʔ
© 2024 Wantedly, Inc. ೖࣾલʹݟ͍ͯͨ Wantedly - σβΠϯ͕͔͍͍ͬ͜ - KubernetesɾϚΠΫϩαʔϏε
- ϓϩμΫτج൫Λ EKS ʹҠߦ͠·ͨ͠ - ϚΠΫϩαʔϏεڞ௨ϥΠϒϥϦͰ “Governance through code” Λ࣮ݱ͢Δ - Go / Ruby - GoΛॻ͍ͯΈ͍ͨͱࢥ͍ͬͯΔֶੜ͞Μɻ͜ΕΛಡΊࠓ͙͢GoΛॻ͖ͨ͘ͳΔ ʢͣʂʣ#gocon ֶੜϒϩά·ͱΊ - ٕज़తʹઑͬͨूஂ ओ؍ଟΊͰ͢
© 2024 Wantedly, Inc. ೖࣾޙʹݟͨ Wantedly - ѻ͏ٕज़ɾͷ͕ଟذʹΘͨΔ - ͍͍ͷͦͷՁͳͲΛΑ͘આ໌্ͨ͠ͰऔΓೖΕ͍ͯ͘
- e.g. k8sɺSaaSɺϓϩάϥϛϯάݴޠɺCI/CD ύΠϓϥΠϯɺgRPC - ϚΠΫϩαʔϏε - Τϥʔௐٕࠪज़ελοΫ monolithic ͱҟͳΔ - ݸʑͷαʔϏεΠϯϑϥͷ͕ࣝඞཁʢΩϟονΞοϓʣ - Code Wins Arguments ❤ - ؾ͍ͨΒ͢ɾ՝ͱͯ͠·ͱΊΔจԽ - Team Geek ͷʮૉΒ͍͠νʔϜจԽΛ࡞Δʯʹ͍ۙ͠ - private ΄ͱΜͲͳ͍ Public ͳจԽ
© 2024 Wantedly, Inc. ଞʹͳ͍ັྗɾվળ͍ͨ͠ͱ͜Ζ - ັྗ - ѻ͏ٕज़ͷ෯͕͘ਂ͍ -
ϓϩδΣΫτͳͲͷॳಈ͕͍ - ෯͘ૉૣ͍ίϥϘϨʔγϣϯ - ΞϥʔτରԠͳͲͰҰ࣍ରԠ͕͍ɾૉૣ͘Ͱ͖Δڥ - վળ͍ͨ͠ͱ͜Ζ - ଐਓతͳͱ͜Ζ͋Δ - ՝ͷίϯςΩετ͕େ͖͍
© 2024 Wantedly, Inc. ۩ମྫ ೖࣾޙͷऔΓΈͱֶͼ
© 2024 Wantedly, Inc. New Relic ͔Β Datadog ͷҠߦ త
- Datadog ͱ New Relic Λซ༻ - ͍ͬͯΔػೳ΄΅ಉ͡ - ίετΛݮ͍ͨ͠ - New Relic ͱ Datadog Ͱඅ༻͕ೋॏʹൃੜ͍ͯ͠Δ - Observability ମݧΛू͢Δ - Datadog ʹ౷Ұ - Wantedly ʹͱͬͯ࠷దͳ Observability Λߟ͑Δ
© 2024 Wantedly, Inc. New Relic ͔Β Datadog ͷҠߦ -
தͰ APM ͷҠߦ͕େม - ظݶ·ͰʹඞͣऴΘΒ͍ͤͨ - ։ൃɾௐࠪͳͲ෯͘༻͍ΒΕ͍ͯΔͨΊ - ֤ॴͱີͳ࿈ܞ͕ඞཁ - ίʔυʹखΛՃ͑ͳ͚ΕͳΒͳ͍έʔε͕͋Δ - APMͱ - ΞϓϦέʔγϣϯͷϨΠςϯγ ΤϥʔΛࢹ͢ΔͨΊͷΈ - ࢄτϨʔγϯάΛ࣮ݱ͍ͯ͠Δ - ϦΫΤετશମͷύϑΥʔϚϯεΛՄࢹԽ ྫ: APM (Application Performance Monitoring) https://docs.datadoghq.com/ja/tracing/glossary/ τϨʔε εύϯ
© 2024 Wantedly, Inc. New Relic ͔Β Datadog ͷҠߦ 1.
Datadog APM ʹτϨʔεΛૹ৴ - OpenCensus with Datadog APM - OpenCensus ݱࡏ deprecated ͳαʔϏε - dd-trace 2. New Relic APM Λഇࢭ͢Δ - ϥΠϒϥϦͷܭ Λআ٫͢Δ - New Relic ͷτϨʔεͷૹ৴ΛΊΔ How
© 2024 Wantedly, Inc. New Relic ͔Β Datadog ͷҠߦ -
dd-trace-go ʹΑΔܭΛࢪ͢ ࣮ // τϨʔεΛ։࢝͢Δ tracer.Start( tracer.WithAgentAddr("host:port")), tracer.WithServiceName("wantedly"), tracer.WithEnv("production"), ) defer tracer.Stop() // εύϯΛੜ͢Δ span, ctx := tracer.StartSpanFromContext(ctx, operationName, tracer.ChildOf(sctx)) defer span.Finish()
© 2024 Wantedly, Inc. New Relic ͔Β Datadog ͷҠߦ -
New Relic ͷܭΛ֎͢ - εύϯͷੜΛΊΔ - τϨʔεΛ New Relic ʹૹ৴͠ͳ͍ - servicex ͷػೳͰ࣮ࢪ - NEWRELIC_ENABLED: 0 # εύϯͷੜΛΊΔ - nrtx := newrelic.FromContext(ctx) - defer newrelic.StartSegment(nrtx, segmentName).End() New Relic APM ͷഇࢭ
© 2024 Wantedly, Inc. New Relic ͔Β Datadog ͷҠߦ -
ಘͨͷɾֶͼ - ࢄτϨʔγϯάͷΈΛཧͰ͖ͨ - Datadog ౷Ұɾ։ൃऀؒͰମݧݟΛڞ༗Ͱ͖Δڥ - టष͘Ҡߦ͍ͯ͘͠ඞཁ͕͋Δ Code Wins Arguments, Get Things Done - plug-and-play ͳ࣮ʹͳ͍ͬͯΔͱخ͔ͬͨ͠ - Ͳ͜ʮྡͷνʔϜʯ One Team - ίϛϡχέʔγϣϯͷোน͕গͳ͍ - ՝ - Datadog ར༻ͷαϙʔτ - New Relic ͱମݧ͕ҟͳΔͨΊ։ൃऀ͚ͷαϙʔτΛ࣮ࢪ༧ఆ - Ͳ͜·ͰΞϓϦέʔγϣϯʹ࣮͢Δ͔ - Γ͗͢Δͱϝϯςφϯε͕େมʹͳΔ ֶͼͱࠓޙͷ՝
© 2024 Wantedly, Inc. ·ͱΊ
© 2024 Wantedly, Inc. ·ͱΊ ͨ͜͠ͱɺ͔͑ͨͬͨ͜ͱ - VALUE ͕͍ࠜͨձࣾ -
New Relic ഇࢭͷதͰײͨ͡ - ίϛϡχέʔγϣϯ͕͍ٞ͢͠ڥ - ૣ͘ಈ͚ΔɺΓ͖ΕΔ - ೖࣾޙͷऔΓΈͷҰྫΛհ - New Relic ഇࢭɾ Observability վળ - ·ͩ·ͩ໘ന͍՝͕ͨ͘͞Μ͋Δ - e.g. Observability ڧԽɺAWSڥཧɺϏϧυߴԽɺkubefork վળ