Mackerelでの家庭用ルータの監視 / Monitoring home routers with Mackerel
by
Kasumi Hanazuki
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
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