FortigateをPrometheusを使い監視する
Prometheusの勉強をしていたところ、SNMP Exporterを使うことによりモニタリングを行うことができるということを知りました。SNMPについては、単語は知ってるけど使ったことがなかったので勉強も兼ねてPrometheusからFortigateの監視を行ってみました。
FortigateのSNMPを設定する
今回使用しているFortigateは、40Cです。上位機種になるとGUIで設定できるらしいのですが、なかったのでCUIで設定しました。 t-solve.blogspot.com を参考に設定を行いました。
edit "internal1" set allowaccess ping https ssh snmp fgfm
FGT40C (sysinfo) # show config system snmp sysinfo set status enable set description "会社名を入れる" set location "会社の位置を入れる" end
FGT40C # show system snmp community config system snmp community edit 1 set name "public" config hosts edit 1 set interface "internal1" next end next end
Prometheusの設定を行う
今回PrometheusのSNMP Exporterを使用してFortigateから情報をとってきています。PrometheusとSNMP ExporterはDockerで動かしていますので、管理が楽です。以下のようなDocker-Composeを書いてDockerを起動させます。
zero@zero-ThinkCentre ~/D/prometheus> cat docker-compose.yml version: '2' services: prometheus: build: . image: prom/prometheus volumes: - ~/Documents/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml ports: - "9090:9090" snmpexporter: image: prom/snmp-exporter ports: - 9116:9116 volumes: - ~/Documents/prometheus/snmp.yml:/etc/snmp_exporter/snmp.yml
Dockerが起動して、http://localhost:9090にアクセスできれば監視ができています。
今回Dockerを使ってサクッと監視基盤ができて楽しかったです。SNMP Trapの設定ができていないので、それらを次回設定していきたいです。