Munin マスターで次のようにプラグインのシンボリックリンクを作成します。
sudo ln -s /usr/share/munin/plugins/ping_ /etc/munin/plugins/ping_192.168.33.10
プラグインを実行してみます。
munin-run ping_192.168.33.10
パケットロスト率と応答時間が結果として得られます。
packetloss.value 0 ping.value 0.000605
なお、100% ロストすると ping.value
が結果に現れませんでした。
packetloss.value 100
プラグインのコンフィグ確認します。
munin-run ping_192.168.33.10 config
次のように結果が得られます。
graph_title IPv4 ping times to 192.168.33.10 graph_args --base 1000 -l 0 graph_vlabel roundtrip time (seconds) graph_category network graph_info This graph shows ping RTT statistics. ping.label 192.168.33.10 ping.info Ping RTT statistics for 192.168.33.10. packetloss.label packet loss packetloss.graph no
パケットロスト率はグラフ無しのようです。また、hostname
が含まれていないため、このままだと Munin マスターの localhost への監視として表示されてしまうので、プラグインのコンフィグ(/etc/munin/plugin-conf.d/
)で次のようにホスト名を指定します。
[ping_192.168.33.10] host_name web-ping env.ping_args -c 3 -w 5 env.packetloss_critical 50
さらに、マスターの設定(/etc/munin/conf.d/
)で、↑で指定したホストの設定を追加します。
# 内部監視 [example;web] address 192.168.33.10 use_node_name yes # 外形監視 [example;web-ping] address 127.0.0.1 use_node_name no
このとき、もともと設定している内部監視のホスト名(↑の例では web
)とは異なる名前にする必要があります。
munin-node
をリスタートして反映します。
sudo systemctl restart munin-node.service
これで PING 監視も行われるようになりますが、内部監視と外形監視を別々のホストとして設定しているので Munin の画面上でも別々にされてしまいます。
あるいは、次のようにグラフ無しにしてしまう?
[example;web-ping] address 127.0.0.1 use_node_name no graph no
が、これだと Web 画面から直近の結果すら確認できないし、アラートが発生しても Problems のところに何も表示されなくて不便です。
なんとなく、これまで Nagios で 1 つのホストに対して外形監視と内部監視をまとめて設定するようにしてきたので(check_nrpe
と check_ping
や check_http
が 1 つのホストの設定に混在)、Munin で別々のホストとして表示されてしまうことに違和感があるのですが・・・むしろ外形監視は特定のホストには紐つかないものとして、例えば external
のような仮のホストへの監視、みたいにすると良いのでしょうか。
設定ファイル的には次のような感じ。
/etc/munin/plugin-conf.d/
[ping_192.168.33.*] host_name external env.ping_args -c 3 -w 5 env.packetloss_critical 50
/etc/munin/conf.d/
[example;external] address 127.0.0.1 use_node_name no
画面的には次のような感じ。
あるいは、そもそも Munin で PING 監視とかはせずに Nagios とかと併用するのが良いような気もする。