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
0
120
ウォンテッドリーのインフラチームに加わってみて
Wantedly Tech Night 〜サービスを支えるインフラ/SRE技術〜
https://wantedly.connpass.com/event/332164/
Kazuki Obata
November 20, 2024
Tweet
Share
More Decks by Kazuki Obata
See All by Kazuki Obata
自分だけの仮想クラスタを高速かつ効率的に作る kubefork
donkomura
0
100
散らばったトレースを繋げる技術
donkomura
1
590
AWS CLI で気軽にコスト改善やってみた
donkomura
1
140
入門 KRR
donkomura
0
230
Other Decks in Technology
See All in Technology
OPENLOGI Company Profile for engineer
hr01
1
20k
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
520
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
130
AIエージェント入門
minorun365
PRO
31
18k
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
610
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
470
スキルだけでは満たせない、 “組織全体に”なじむオンボーディング/Onboarding that fits “throughout the organization” and cannot be satisfied by skills alone
bitkey
0
180
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
11
3.9k
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
110
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
190
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
330
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.2k
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
RailsConf 2023
tenderlove
29
1k
Code Review Best Practice
trishagee
67
18k
Statistics for Hackers
jakevdp
797
220k
Optimizing for Happiness
mojombo
376
70k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Why Our Code Smells
bkeepers
PRO
336
57k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Navigating Team Friction
lara
183
15k
How to train your dragon (web standard)
notwaldorf
91
5.9k
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 վળ