$30 off During Our Annual Pro Sale. View Details »

ネットワーク機器もエージェントで監視できるのかやってみた mackerel meetup 14 LT

tjmtrhs
July 11, 2023

ネットワーク機器もエージェントで監視できるのかやってみた mackerel meetup 14 LT

ネットワーク機器でもリッチなLinuxやBSDが使える時代なのでmackerel-agentを入れてみた話です

tjmtrhs

July 11, 2023
Tweet

More Decks by tjmtrhs

Other Decks in Technology

Transcript

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  10. © 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

    View Slide

  11. © 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

    View Slide

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

    View Slide

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

    View Slide

  14. © 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/

    View Slide

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

    View Slide