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
簡略化したネットワーク依存関係グラフの可視化基盤 / Simplified network d...
Search
Yuuki Tsubouchi (yuuk1)
November 17, 2018
Research
2
22k
簡略化したネットワーク依存関係グラフの可視化基盤 / Simplified network dependency graph visualization
第3回Web System Architecture研究会@東京
Yuuki Tsubouchi (yuuk1)
November 17, 2018
Tweet
Share
More Decks by Yuuki Tsubouchi (yuuk1)
See All by Yuuki Tsubouchi (yuuk1)
AIスーパーコンピュータにおけるLLM学習処理性能の計測と可観測性 / AI Supercomputer LLM Benchmarking and Observability
yuukit
1
630
SREはサイバネティクスの夢をみるか? / Do SREs Dream of Cybernetics?
yuukit
3
370
SREのためのテレメトリー技術の探究 / Telemetry for SRE
yuukit
13
3k
AIスパコン「さくらONE」の オブザーバビリティ / Observability for AI Supercomputer SAKURAONE
yuukit
2
1.1k
AIスパコン「さくらONE」のLLM学習ベンチマークによる性能評価 / SAKURAONE LLM Training Benchmarking
yuukit
2
970
とあるSREの博士「過程」 / A Certain SRE’s Ph.D. Journey
yuukit
11
5.4k
eBPFを用いたAIネットワーク監視システム論文の実装 / eBPF Japan Meetup #4
yuukit
3
1.6k
クラウドのテレメトリーシステム研究動向2025年
yuukit
4
1.2k
博士論文公聴会: Scaling Telemetry Workloads in Cloud Applications: Techniques for Instrumentation, Storage, and Mining / PhD Defence
yuukit
1
510
Other Decks in Research
See All in Research
ブレグマン距離最小化に基づくリース表現量推定:バイアス除去学習の統一理論
masakat0
0
130
Aurora Serverless からAurora Serverless v2への課題と知見を論文から読み解く/Understanding the challenges and insights of moving from Aurora Serverless to Aurora Serverless v2 from a paper
bootjp
6
1.5k
2026-01-30-MandSL-textbook-jp-cos-lod
yegusa
0
120
Earth AI: Unlocking Geospatial Insights with Foundation Models and Cross-Modal Reasoning
satai
3
470
製造業主導型経済からサービス経済化における中間層形成メカニズムのパラダイムシフト
yamotty
0
480
Collective Predictive Coding and World Models in LLMs: A System 0/1/2/3 Perspective on Hierarchical Physical AI (IEEE SII 2026 Plenary Talk)
tanichu
1
240
超高速データサイエンス
matsui_528
2
380
ペットのかわいい瞬間を撮影する オートシャッターAIアプリへの スマートラベリングの適用
mssmkmr
0
240
LLMアプリケーションの透明性について
fufufukakaka
0
120
教師あり学習と強化学習で作る 最強の数学特化LLM
analokmaus
2
880
社内データ分析AIエージェントを できるだけ使いやすくする工夫
fufufukakaka
1
880
生成AI による論文執筆サポート・ワークショップ ─ サーベイ/リサーチクエスチョン編 / Workshop on AI-Assisted Paper Writing Support: Survey/Research Question Edition
ks91
PRO
0
140
Featured
See All Featured
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
240
Producing Creativity
orderedlist
PRO
348
40k
AI: The stuff that nobody shows you
jnunemaker
PRO
2
240
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Embracing the Ebb and Flow
colly
88
5k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
47
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
580
Designing for humans not robots
tammielis
254
26k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
97
GitHub's CSS Performance
jonrohan
1032
470k
KATA
mclloyd
PRO
34
15k
Transcript
؆ུԽͨ͠ ωοτϫʔΫґଘؔάϥϑ ͷՄࢹԽج൫ id:y_uuki, id:masayoshi, ͯͳ 2018/11/17 ୈ3ճ Web System
Architectureݚڀձ@౦ژ
࣍ 1. എܠͱత 2. ఏҊख๏ 3. ·ͱΊ
1. എܠͱత
എܠ • ωοτϫʔΫґଘؔͷෳࡶԽ • 10୯ҐͷαʔϏεͷظӡ༻ͷؒʹॏͳΔ૿ங • ϚΠΫϩαʔϏεͳͲͷۙͷτϨϯυมԽ • γεςϜཧऀ͕هԱͰ͖ͳ͍ݸʑͷ௨৴ͷґଘؔ •
Өڹൣғ͕Θ͔Βͳ͍ͨΊɺมߋͷͨͼʹґଘؔΛ ௐࠪ͢Δඞཁ͕ൃੜ
ઌߦख๏ • ϑΝΠΞΥʔϧͷϩΪϯάػߏύέοτΩϟϓνϟ • TCP/UDP௨৴ϩάΛूܭαʔόʹసૹ͠ґଘՄࢹԽ • ωοτϫʔΫεΠον͔Βͷ౷ܭใऔಘ (sFlow/NetFlowͳͲ) • αΠυΧʔϓϩΩγΞϓϦέʔγϣϯϩά
(ࢄτϨʔγϯά)
֤ઌߦख๏ͷ՝ • ϑΝΠΞΥʔϧϩΪϯά(iptables) • a) ύέοτϨΠςϯγ͕૿Ճ • ύέοτΩϟϓνϟ(tcpdump) • b)
ύέοτશମΛऩू͢ΔͨΊɺऩू·ͨղੳͷͨΊͷෛՙͷ૿Ճ • sFlow/NetFlow • c) αϯϓϦϯά͞ΕΔͨΊґଘཏ͕Լ • ΞϓϦέʔγϣϯ(L7)ͰͷϦΫΤετ୯ҐͷϩΪϯά • d) ΞϓϦέʔγϣϯͷมߋ͕ඞཁ
ઌߦख๏શମͷ՝ • e) ऩूσʔλ͕ґଘؔΛΔ͚ͩʹ͕ͯ͠ଟ͘ • ύέοτɺTCPଓɺϦΫΤετ୯Ґͷใ • ྫ͑ΤϑΣϝϥϧϙʔτͷଓใͳͲ • f)
ґଘؔάϥϑߏͷෳࡶԽ • ෛՙࢄͳͲʹΑΓϗετ͕૿Ճͨ͠߹ʹϊʔυͱΤο δͷݸ͕૿͑Δ
2. ఏҊख๏
ཁ݅ • 1)ΞϓϦέʔγϣϯੑೳʹӨڹΛ༩͑ͳ͍ଓใͷऩूՄೳ (՝ a),b),c)) • ݱ࣮తͳਫ਼Ͱଓใͷऩूཱ྆ • 2)ΞϓϦέʔγϣϯͷมߋෆཁͰऩूՄೳ (՝d)
• 3)ूԽ͞Εͨϊʔυ୯ҐͰՄࢹԽՄೳ (՝e) • 4)ϗετ୯ҐͰͳ͘ϗετͷෳάϧʔϓ୯ҐͰՄࢹԽՄೳ ՝ f) • 5)ҙͷ࣌ؒൣғͰͷґଘؔΛग़ྗՄೳ
ఏҊख๏ • ΞϓϦέʔγϣϯͷมߋෆཁͳωοτϫʔΫ௨৴ใͷऩू (ཁ݅2) • OSʹ͍߹ΘͤऔಘՄೳͳTCPଓใΛར༻ • ΞϓϦέʔγϣϯੑೳʹӨڹΛ༩͑ͳ͍TCPଓใͷऩू (ཁ݅1) •
OS͕ͭෛՙͰऔಘՄೳͳTCPଓͷ౷ܭใΛར༻ • ूԽ͞ΕͨΤοδͱϊʔυ୯ҐͰՄࢹԽՄೳ • Τοδ: ಉҰϗετ͔ͭಉҰϦοεϯϙʔτͷTCPଓू (ཁ݅3) • ϊʔυ: αʔόཧπʔϧͷAPIͱ࿈ܞՄೳ (ཁ݅4) • ίωΫγϣϯཧDBʹूԽ͞ΕͨTCPଓΛ͖࣌ؒͰཧՄೳ (ཁ݅5)
ϗετϑϩʔू • Τοδ: ಉҰϗετ͔ͭಉҰϦοεϯϙʔτͷTCPଓू • Τοδͷҹͷ͖: TCPͷΞΫςΟϒΦʔϓϯͱύογϒΦʔϓϯͰఆ port 80 port
3306 port 10000 port 10001 port 10002 port 15000 port 15001 port 15002 ϗετϑϩʔ ϗετϑϩʔ Host Host
ϗετϑϩʔूͷ࣮ • 1. Netlink APIʹΑΓTCPଓใΛऔಘ͢Δ • 2. LISTENεςʔτͷଓͷϩʔΧϧϙʔτͷΈநग़ • 3.
1.ͱ2.Λಥ͖߹Θͤɼଓઌϙʔτ͕ϦοεϯϙʔτͰ͋Ε ΞΫςΟϒΦʔϓϯɼͦΕҎ֎ͷଓύογϒΦʔϓϯͱ ఆ͢Δɽ
send agent agent CMDB Host Host agent Host analyzer sysadmin
get get ఏҊख๏ͷશମϑϩʔ֓ཁ
send agent agent Postgres Host Host agent Host CLI sysadmin
get get ఏҊख๏ͷશମϑϩʔ֓ཁ Mackerel get
CMDBͷεΩʔϚ • nodesςʔϒϧ: ϊʔυใ • IDͱIPΞυϨεͱϙʔτ൪߸ • flowsςʔϒϧ: ϗετϑϩʔใ •
IDͱ͖ͱૹ৴ݩͱૹ৴ઌͷͦΕͧΕͷϊʔυID
Mackerel APIʹΑΔෳϊʔυͷάϧʔϓԽ • ͋Β͔͡Ί֤ϗετΛMackerelʹొ͠ɺෳ͞Εͨϗετ܈Λ1 ͭͷϩʔϧʹ·ͱΊ͓ͯ͘ • MackerelΛར༻ͨ͠ෳϊʔυͷάϧʔϓԽखॱ • analyzer͕CMDB͔ΒϊʔυΛऔಘ •
Mackerel APIʹΑΓϗετใҰཡΛऔಘ֘͠ϊʔυͷIPΞυ ϨεͰϑΟϧλ • ಉҰϩʔϧͷϊʔυΛάϧʔϓԽ
github.com/yuuki/mftracer $ mftctl --level 2 --dest-service blog --dest-roles redis --dest-roles
memcached blog:redis ᵋ<-- 10.0.0.22:many (connections:30) ᵋ<-- 10.0.0.23:many (connections:30) ᵋ<-- 10.0.0.24:many (connections:30) ᵋ<-- 10.0.0.30:many (connections:1) ᵋ<-- 10.0.0.31:many (connections:1) ᵋ<-- 10.0.0.25:many (connections:30) blog:memcached ᵋ<-- 10.0.0.23:many (connections:30) ᵋ<-- 10.0.0.25:many (connections:30)
্࣮ͷ՝ • ωοτϫʔΫτϙϩδͷ॥ʹର͢Δߟྀ • Ϋϥυࣄۀऀ͕ఏڙ͢ΔϚωʔδυαʔϏεΛར༻͍ͯ͠Δ ߹ɼIPΞυϨε͔Β࣮ମΛͨͲΔ͜ͱͷࠔ • ͋ΔಛఆͷϊʔυΛࢦఆ͠ɼࢦఆͨ͠ϊʔυ”͔Β”ଓ͢Δ ϊʔυҰཡΛऔಘ͢Δ࣮ (ٯՄೳ)
• ࣌ؒൣғΛࢦఆͨ͠ґଘؔͷऔಘ • ݱࡏ͔Βաڈͯ͢ͷґଘؔΛऔಘ͢ΔΑ͏ʹͳ͍ͬͯΔ
3. ·ͱΊ
·ͱΊ • γεςϜཧऀ͕ݸʑͷωοτϫʔΫґଘؔΛهԱͰ͖ͳ͍ • ΞϓϦέʔγϣϯΛมߋͤͣʹɼΞϓϦέʔγϣϯʹӨڹΛ༩ ͑Δ͜ͱͳ͘ɼదͳநͰใΛऔಘՄೳͳґଘؔղੳ γεςϜ
ࠓޙͷ՝ • αʔϕΠ • ֤ωοτϫʔΫͰઌߦݚڀ͕͋ΔͨΊɺຊݚڀͷཱͪҐஔΛ໌֬Խ • ධՁ • ϑΝΠΞΥʔϧϩΪϯάͱύέοτΩϟϓνϟͷϨΠςϯγ૿େͷධՁ •
ͯ͢ͷଓใΛऔಘͰ͖ΔΘ͚Ͱͳ͍ͨΊɼଓใͷऔಘΛ֬ ೝ͠ɼ࣮ӡ༻ʹ͓͍ͯɼेͳਫ਼Ͱ͋Δ͜ͱΛ֬ೝ • ల • ಉ͡Α͏ͳ௨৴Λ͍ͯ͠ΔϗετΛΫϥελϦϯάਪఆ • ίϯςφܕԾԽڥͰͷґଘؔͷղੳͷൃల