![見出し画像](https://assets.st-note.com/production/uploads/images/142316327/rectangle_large_type_2_5568e9573021e610b279dc152455b144.png?width=1200)
Prometheus で YAMAHA RTX830 ルータを監視する
YAMAHA RTX830 ルータの監視こそがメインみたいなもんです。
ようやく RTX830 のほとんどの情報を取得するところまで来ました。
prometheus.yml の内容
結論です。prometheus.yml はこうなりました。
(前略)
scrape_configs:
:
(中略)
:
- job_name: 'snmp.rtx830'
scrape_interval: 60s
static_configs:
- targets:
- 192.168.0.254
metrics_path: /snmp
params:
module: [rtx830, if_mib]
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- source_labels: [type]
target_label: __param_module
- target_label: __address__
replacement: snmp:9116
YAMAHA の Private MIB は、SNMP の generator では取得できないので、個別に設定が必要です。それだけでは全ての情報を取得することができないので、`module:` に必要な snmp のモジュールを付け足していけば良い様です。
事前準備など
こちらにある通りに準備をすれば良いのですが、RTX3000向けなので、RTX830向けには一工夫します。
generator.yml は次の通りです。YAMAHA の Private MIB をダウンロードして `mibs` ディレクトリに放り込んだ後、`generator.yml` に次の内容を加えてから、`generate` すれば良いです。さすれば必要な snmp.yml はでき上がるでしょう。Revision とTemperatureは結局取得できなかったけれども。
#
# YAMAHA rtx series
#
rtx830:
walk:
- yrhCpuUtil5sec
- yrhCpuUtil1min
- yrhCpuUtil5min
- yrhMultiCpuTable
- yrhMultiCpuName
- yrfRevision
- yrhInboxTemperature
- yrfUpTime
- yrhMemoryUtil
- yrhMemorySize
snmp.yml ができたら、docker で snmp-exporter を実行できるようにすれば完成です。Prometheus の exporter ってどっちに依存すべきなんだろう。もしかして逆かな。
(前略)
:
snmp:
image: prom/snmp-exporter
container_name: snmp_exporter
depends_on:
- prometheus
links:
- prometheus
volumes:
- '/var/lib/snmp/snmp.yml:/etc/snmp_exporter/snmp.yml'
ports:
- "9116:9116"
:
(後略)
さて取得できるようになったので、あとは Grafana で可視化。それはまた次回。
参考資料・サイト
今回参考にしたのは、以下の書籍とサイトです。
いいなと思ったら応援しよう!
![しょっさん](https://assets.st-note.com/production/uploads/images/134135/profile_b6e80d2b32a99d4e4e7f33f117abb746.jpg?width=600&crop=1:1,smart)