Mackerelでの家庭用ルータの監視 / Monitoring home routers with Mackerel
by
Kasumi Hanazuki
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
Mackerelでの 家庭用ルータの監視 @k_hanazuki
Slide 2
Slide 2 text
2016-06-14 @k_hanazuki 花月かすみ ● Github: hanazuki ● Twitter: k_hanazuki
Slide 3
Slide 3 text
2016-06-14 @k_hanazuki 家庭用ルータ ● 5千円くらい(実売) ● OpenWrt ○ ルータ用Linux
Slide 4
Slide 4 text
2016-06-14 @k_hanazuki mackerel-agent ● Goで書かれている ○ シングルバイナリ ○ 置くだけで動いてべんり
Slide 5
Slide 5 text
2016-06-14 @k_hanazuki Goのよいところ ● ほどよい高級感 (GC, goroutine) ● シングルバイナリ ● クロスコンパイルが楽
Slide 6
Slide 6 text
2016-06-14 @k_hanazuki わがやのルータ @400MHz + 32MBi Flash
Slide 7
Slide 7 text
2016-06-14 @k_hanazuki /usr/bin/mackerel-agent ● ファイルサイズ ○ ~ 5MB (stripped) ● メモリフットプリント ○ > 10MB
Slide 8
Slide 8 text
2016-06-14 @k_hanazuki GoのMIPSへのコンパイル ● gc: 非対応 ● gccgo: 対応 ○ libgo: uClibcではコンパイル不可* * 次期OpenWrtではmuslを採用の予定 * uClibcのtrunkではいけるかも……
Slide 9
Slide 9 text
2016-06-14 @k_hanazuki Goのあんまりよくないところ ● メモリ使用量おおい ● バイナリおおきい ● 移植性たかくない
Slide 10
Slide 10 text
2016-06-14 @k_hanazuki umackereld (マイクロ・マカレル・ディー) ● Cで書いている ○ OpenWrtのコンポーネントを できるだけ利用 ● hanazuki/umackereld ● 機能はまだまだ実装途中
Slide 11
Slide 11 text
2016-06-14 @k_hanazuki mackerel-agent umackereld ファイル (stripped) ~ 5MB ~ 30kM + 440kM (shared obj) メモリ (RSS) > 10MB > 1.5MB* プラット フォーム Linux,Darwin,Win, {Free,Open}BSD Linux (OpenWrt) 比較 * なんだかリークしてる気がする……
Slide 12
Slide 12 text
2016-06-14 @k_hanazuki わがやのISPがパケットを落とす様子
Slide 13
Slide 13 text
2016-06-14 @k_hanazuki まとめ ● 組み込みLinuxでも使えてべんり ● https://github.com/ hanazuki/umackereld