The Munin Protocols

Here we describe the rules for collaboration and communication between Munin’s components.

Introduction

Contents on this page will focus on already implemented features. For proposals and ideas look in the Wiki.

Concepts

Fetching Data

Poller-based monitoring infrastructure

digraph { graph [ rankdir="LR" ]; node [style=filled, fillcolor="white:lightgrey"]; "master" [label="munin\nmaster", fillcolor="white:lightblue"]; "master" -> "node1"; "master" -> "node2"; "master" -> "node3"; }

Using the Asynchronous proxy node:

digraph { graph [ rankdir="LR" ]; node [style=filled, fillcolor="white:lightgrey"]; subgraph cluster_munin_node { label = "node1"; "munin-asyncd" -> "munin-node" [label="read"]; "munin-asyncd" -> "spool" [label="write"]; "munin-async" -> "spool"; } "master" [label="munin\nmaster", fillcolor="white:lightblue"]; "master" -> "munin-async" [label="ssh"]; "master" -> "node2"; "master" -> "node3"; }

Using SNMP Plugins.

digraph { graph [ rankdir="LR" ]; node [style=filled, fillcolor="white:lightgrey"]; "master" [label="munin\nmaster", fillcolor="white:lightblue"]; "master" -> "node1"; "node1" -> "switch" [label="snmp"]; "node1" -> "router" [label="snmp"]; "node1" -> "access\npoint" [label="snmp"]; "master" -> "node2"; "master" -> "node3"; }

Network Protocol

Multigraph Plugins

Dirtyconfig plugins

Plugins with custom sample rate