Slide 1

Slide 1 text

© NTT Communications Corporation All Rights Reserved. 1 ネットワーク機器もエージェントで 監視できるのかやってみた 2023/07/11, Mackerel Meetup #14 LT 田島 照久 NTTコミュニケーションズ [email protected]

Slide 2

Slide 2 text

© NTT Communications Corporation All Rights Reserved. 2 Take-home messages ◼ ネットワーク機器の上でmackerel-agentが普通に動く ◼ 本格的に運用しようとすると課題は結構ある ネットワーク機器も簡単に監視したい!!!! 運用に役立つかどうかわからない、ハックしてみた系のLTです

Slide 3

Slide 3 text

© NTT Communications Corporation All Rights Reserved. 3 いきなり脇道:ご家庭の管理もpluginで追加すると面白い ◼ センサを使って温度とか消費電力とか ◼ 自宅GPS-NTPのジッタを測ったり、NAS(ZFS)のキャッシュを見たり

Slide 4

Slide 4 text

© NTT Communications Corporation All Rights Reserved. 4 物理ネットワークが主体の「システム」を運用 業界最大級(たぶん)の検証設備の運営とエンジニア育成 https://speakerdeck.com/nttcom/operation-of-the-industrys-largest-verification-facilities-and-training-of-engineers?slide=8

Slide 5

Slide 5 text

© NTT Communications Corporation All Rights Reserved. 5 「システム」の監視は大部分がpolling ネットワーク機器 (500+) サーバ群 (10+) Mackerel 他にもPrivate Cloudもありますが・・・ Syslog 📧 router cpe firewall router vpn switch ap transponder SNMP

Slide 6

Slide 6 text

© NTT Communications Corporation All Rights Reserved. 6 ネットワーク機器機器でもログはpushされる ネットワーク機器 (500+) サーバ群 (10+) Mackerel 他にもPrivate Cloudもありますが・・・ Syslog 📧 router cpe firewall router vpn switch ap transponder

Slide 7

Slide 7 text

© NTT Communications Corporation All Rights Reserved. 7 ネットワーク機器機器でもログはpushされる ネットワーク機器 (500+) サーバ群 (10+) Mackerel 他にもPrivate Cloudもありますが・・・ Syslog 📧 router cpe firewall router vpn switch ap transponder 🤔 そのままpushできれば楽なのでは 🤔

Slide 8

Slide 8 text

© NTT Communications Corporation All Rights Reserved. 8 背景: Streaming Telemetry というpush型の構成がある 次世代の監視技術 - Telemetry技術のご紹介 https://engineers.ntt.com/entry/2021/09/02/162022

Slide 9

Slide 9 text

© NTT Communications Corporation All Rights Reserved. 9 背景: Streaming Telemetry というpush型の構成がある 次世代の監視技術 - Telemetry技術のご紹介 https://engineers.ntt.com/entry/2021/09/02/162022 🤔 複雑 🤔 ※Broker以降はPublic Cloud等に常設してコレクタだけ手元に置くのはできる

Slide 10

Slide 10 text

© NTT Communications Corporation All Rights Reserved. 10 背景:最近のネットワーク機器はパソコンである Cisco C1100 Series Juniper NFX Series IOS XE (Linux based) HV (Linux based) Junos (BSD based) guest shell (container) mackerel-agent mackerel-agent

Slide 11

Slide 11 text

© NTT Communications Corporation All Rights Reserved. 11 実際にやってみたらそのまま動いた(arm64) c1100.test#guestshell run bash [guestshell@guestshell ~]$ uname -a Linux guestshell 4.14.227-17.0.2 #1 SMP Wed Aug 11 15:22:34 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux [guestshell@guestshell ~]$ wget https://github.com/mackerelio/mackerel- agent/releases/download/v0.77.0/mackerel-agent_linux_arm64.tar.gz (snip) [guestshell@guestshell ~]$ tar zxf mackerel-agent_linux_arm64.tar.gz [guestshell@guestshell ~]$ cd mackerel-agent_linux_arm64 [guestshell@guestshell mackerel-agent_linux_arm64]$ sudo ./mackerel-agent init -apikey=“***” [guestshell@guestshell mackerel-agent_linux_arm64]$ sudo ./mackerel-agent 2023/07/10 22:46:18 INFO Starting mackerel-agent version:0.77.0, rev:4b0c6cc, apibase:https://api.mackerelio.com 2023/07/10 22:46:26 INFO Start: apibase = https://api.mackerelio.com, hostName = guestshell, hostID = xxxxxxx 2023/07/10 22:46:26 ERROR Panic: generating value in *linux.CPUUsageGenerator (skip this metric): runtime error: index out of range [10] with length 10 2023/07/10 22:47:00 ERROR Panic: generating value in *linux.CPUUsageGenerator (skip this metric): runtime error: index out of range [10] with length 10 2023/07/10 22:48:00 ERROR Panic: generating value in *linux.CPUUsageGenerator (skip this metric): runtime error: index out of range [10] with length 10

Slide 12

Slide 12 text

© NTT Communications Corporation All Rights Reserved. 12 何事もなく登録されました

Slide 13

Slide 13 text

© NTT Communications Corporation All Rights Reserved. 13 よいこと ◼ もちろんpluginも動く ◼ SNMPでは取れない値も取れたり、ルータ側で値の加工ができる ⚫ 例) ACLログから直近の特定ポートのスキャン頻度を投稿する ⚫ 例) 特定VPN経路の増減 ◼ CPE (顧客構内設備) としてみたときに外部に到達できない= エラー になることが簡単にわかる

Slide 14

Slide 14 text

© NTT Communications Corporation All Rights Reserved. 14 本当に運用していく上で辛くなる(であろう)こと ◼ ZTP (Zero Touch Provisioning) がしにくい ⚫ ネットワーク機器のOSの機能としてDHCP等を基にした設定自動化がある ⚫ ただし追加コンテナ上でのagent導入は別途ansible等で自動化する必要がある ◼ 家畜にできないネットワーク機器 ⚫ 設定のライフサイクルが長い。バージョンアップはどうするのか問題 ⚫ (参考)ネットワーク機器をカスタムリソースとして見て reconcileを狙う取り組みもあり、そちら側で見るのがよい? Kuesta - CUE-based Network IaC on Kubernetes https://github.com/nttcom/kuesta https://nttcom.github.io/kuesta-website/

Slide 15

Slide 15 text

© NTT Communications Corporation All Rights Reserved. 15 Take-home messages ◼ ネットワーク機器の上でmackerel-agentが普通に動く ◼ 本格的に運用しようとすると課題は結構ある ネットワーク機器も簡単に監視したい!!!!