1MUNIN.CONF(5) Munin Documentation MUNIN.CONF(5)
2
3
4
6 munin.conf - Munin configuration file
7
9 Munin is a group of programs to gather data from hosts, graph them,
10 create html-pages, and optionally warn contacts about any off-limit
11 values.
12
13 The hosts are divided into three groups: One master (could be more, but
14 Munin is not cluster aware so they'll likely be independent). The
15 master contacts a number of machines running munin-node, these are
16 called nodes. Each node has data from one or more hosts that is
17 monitored by Munin.
18
19 munin.conf is the configuration file for the Munin master server. The
20 programs using it are munin-update, munin-graph, munin-limits and
21 munin-html. There is also quite extensive documentation of this file
22 at <http://munin.projects.linpro.no/wiki/munin.conf>
23
24 The format of the file is simple. A minimal configuration looks
25 something like:
26
27 [machine1.your.dom]
28 address localhost
29
30 The default location of munin.conf is /etc/munin/munin.conf. If your
31 placement deviates from this norm, use the "--config <file>"-option
32 when running the munin-* programs.
33
34 Munin-update will expand all node-entries in this file, and save them
35 to /var/lib/munin/datafile, which is used by all programs in the
36 package together with this file.
37
38 Any directives in this file will override directives of the same name
39 in datafile. E.g., if you want to change the title of the "load"-graph
40 in the above minimum configuration, you would modify the two bottom
41 lines to:
42
43 [machine1.your.dom]
44 address localhost
45 load.graph_title Edited title of the load-graph
46
47 This will override the "graph_title" attribute of the "load" field/data
48 series while keeping all the others at their default.
49
51 These directives should appear in munin.conf before any host or group
52 definitions.
53
54 dbdir path (Default: /var/lib/munin)
55 Directory for generated database files. Required.
56
57 logdir path (Default: /var/log/munin)
58 Directory for log files. Required.
59
60 htmldir path (Default: /var/www/html/munin)
61 Directory for HTML pages and graphs. Required.
62
63 rundir path (Default: /var/run/munin)
64 Directory for files tracking munin's current running state.
65 Required.
66
67 tmpldir path (Default: /etc/munin/templates)
68 Directory for templates used to generate HTML pages. Required.
69
70 fork value
71 This directive determines whether munin-update fork when gathering
72 information from nodes. Possible values are "yes" and "no".
73 Default is "yes". If you set it to "no" munin-update will collect
74 data from the nodes in sequence rather than in parallel and this
75 will take considerably more time. Affects: munin-update.
76
77 palette default|old
78 Choose palette between the very nice ""default"", and the good old
79 ""old"".
80
81 graph_data_size value
82 This directive sets the resolution of the RRD files that are
83 created. Possible values are "normal" and "huge". Default is
84 "normal". "Huge" is really huge, it saves the complete data with 5
85 minute resolution for 400 days. This will probably increase the
86 I/O load on your Munin master, and currently has very little
87 benefit. Affects: munin-update.
88
89 graph_strategy value
90 This directive can be "cron" or "cgi". This determines whether
91 graphs will be produced when the cron job is run or whether they
92 will be generated by the CGI script (Links this CGI script will be
93 added to the HTML pages if "cgi" is selected). This is one of
94 several steps required to enable CGI graphing, see
95 <http://munin.projects.linpro.no/wiki/CgiHowto> for more details.
96 Default is "cron". Affects: munin-graph and munin-html.
97
98 local_address value
99 The local address to connect any node from in case the master has
100 several IP interfaces. This can be overridden by a group or global
101 directive. Without this directive Munins traffic will originate
102 from the master server according to the IP routing table.
103
104 max_processes <value>
105 This directive specifies the maximum number of processes to be used
106 for gathering information from nodes. If left blank, munin will
107 use as many processes as necessary. Affects: munin-update.
108
109 max_graph_jobs <value>
110 This directive specifies the maximum number of concurrent rrdgraph
111 proesses started by munin-graph. The default is 6. A setting of 0
112 disables concurrent processing. Affects: munin-graph
113
114 max_cgi_graph_jobs <value>
115 This directive specifies the maximum number of concurrent munin-
116 cgi-graph jobs. The web server can start a high number of munin-
117 cgi-graph jobs which we can't stop, but munin-cgi-graph will
118 throttle down how many rrdgraph calls will be running at the same
119 time to this number. Affects: munin-cgi-graph and munin-fastcgi-
120 graph.
121
122 tls <value>
123 Can have four values. "paranoid", "enabled", "auto", and
124 "disabled". "Paranoid" and "enabled" require a TLS connection,
125 while "disabled" will not attempt one at all.
126
127 The current default is "disabled" because "auto" is broken. "Auto"
128 causes bad interaction between munin-update and munin-node if the
129 node is unprepared to go to TLS.
130
131 If you see data dropouts (gaps in graphs) please try to disable
132 TLS. Affects: munin-update.
133
134 tls_verify_certificate <value>
135 This directive can be "yes" or "no". It determines if the remote
136 certificate needs to be signed by a CA that is known locally.
137 Default is "no". Affects: munin-update.
138
139 tls_private_key <value>
140 This directive sets the location of the private key to be used for
141 TLS. Default is /etc/munin/munin.pem. The private key and
142 certificate can be stored in the same file. Affects: munin-update.
143
144 tls_certificate <value>
145 This directive sets the location of the TLS certificate to be used
146 for TLS. Default is /etc/munin/munin.pem. The private key and
147 certificate can be stored in the same file. Affects: munin-update.
148
149 tls_ca_certificate <value>
150 This directive sets the CA certificate to be used to verify the
151 node's certificate, if tls_verify_certificate is set to "yes".
152 Default is /etc/munin/cacert.pem. Affects: munin-update.
153
154 tls_verify_depth <value>
155 This directive sets how many signings up a chain of signatures TLS
156 is willing to go to reach a known, trusted CA when verifying a
157 certificate. Default is 5. Affects: munin-update.
158
159 tls_match <value>
160 This directive, if defined, searches a dump of the certificate
161 provided by the remote host for the given regex. The dump of the
162 certificate is two lines of the form:
163
164 Subject Name: /C=c/ST=st/L=l/O=o/OU=ou/CN=cn/emailAddress=email
165 Issuer Name: /C=c/ST=st/O=o/OU=ou/CN=cn/emailAddress=email
166
167 So, for example, one could match the subject distinguished name by
168 the directive:
169
170 tls_match Subject Name: /C=c/ST=st/L=l/O=o/OU=ou/CN=cn/emailAddress=email
171
172 Note that the fields are dumped in the order they appear in the
173 certificate. It's best to view the dump of the certificate by
174 running munin-update in debug mode and reviewing the logs.
175
176 Unfortunately, due to the limited functionality of the SSL module
177 in use, it is not possible to provide finer-grained filtering. By
178 default this value is not defined. Affects: munin-update.
179
180 FIXME: This section MAY be complete, it may be missing a directive or
181 two.
182
184 Host definitions can have several types. In all forms, the definition
185 is used to generate the host name and group for the host, and the
186 following lines define its directives. All following directives apply
187 to that node until another node definition or EOF. Note that when
188 defining a nodename it is vital that you use a standard DNS name, as
189 in, one that uses only a-z, '-', and '.'. While other characters can
190 be used in a DNS name, it is against the RFC, and Munin uses the other
191 characters as delimiters. If they appear in nodenames, unexpected
192 behavior may occur.
193
194 The simplest node definition defines the section for a new node by
195 simply wrapping the DNS name of the node in brackets, e.g.
196 "[machine1.your.dom]". This will add the node "machine1.your.dom" to
197 the group "your.dom".
198
199 The next form of definition is used to define the node and group
200 independently. It follows the form "[your.dom;machine1.sub.your.dom]".
201 This adds the node "machine1.sub.your.dom" to the group "your.dom".
202 This can be useful if you have machines you want to put together as a
203 group that are under different domains (as in the given example). This
204 can also solve a problem if your machine is "machine1.com", where
205 having a group of "com" makes little sense.
206
207 Multiple groups can be specified by adding more "groupname;"s, e.g.
208 "[servers;local;mail;mail.foo.net]", if you need a more hierarchical
209 structure.
210
212 These are directives that can follow a node definition and will apply
213 only to that node.
214
215 address <value>
216 The IP address of the node. Required.
217
218 local_address <value>
219 The local address to connect to the node from. This overrides a
220 group or global directive.
221
222 FIXME: This section is incomplete.
223
225 These directives should appear after a node definition and are of the
226 form "plugin.directive <value>". Using these directives you can
227 override various directives for a plugin, such as its contacts, and can
228 also be used to create graphs containing data from other plugins.
229
230 FIXME: This section is (obviously) incomplete.
231
233 These directives should appear after a node definition and are of the
234 form "plugin.field <value>". Using these directives you can override
235 values originally set by plugins on the nodes, such as warning and
236 critical levels or graph names.
237
238 graph_height <value>
239 The graph height for a specific service. Default is 175. Affects:
240 munin-graph.
241
242 graph_width <value>
243 The graph width for a specific service. Default is 400. Affects:
244 munin-graph.
245
246 warning <value>
247 The value at which munin-limits will mark the service as being in a
248 warning state. Value can be a single number to specify a limit
249 that must be passed or they can be a comma separated pair of
250 numbers defining a valid range of values. Affects: munin-limits.
251
252 critical <value>
253 The value at which munin-limits will mark the service as being in a
254 critical state. Value can be a single number to specify a limit
255 that must be passed or they can be a comma separated pair of
256 numbers defining a valid range of values Affects: munin-limits.
257
258 FIXME: This section is incomplete.
259
261 On all the examples below, all the 'top-level' parameters (dbdir,
262 logdir, htmldir, tmpldir) are not present. They are only skipped for
263 brevity - they are needed.
264
266 An example with three servers on two domains:
267
268 [machine1.one.dom]
269 address machine1.one.dom
270
271 [machine2.one.dom]
272 address 10.33.32.123
273
274 [machine3.two.dom]
275 address localhost
276
277 This will appear as two groups (one.dom and two.dom), having
278 respectively two and one node.
279
281 Summarize the 'load'-graphs of the two servers in one.dom, in a 'total
282 load'-graph.
283
284 [one.dom;Totals]
285 update no
286 load.graph_title Total load
287 load.sum_load.label load
288 load.sum_load.special_stack machine1=machine1.one.dom:load.load machine2=machine2.one.dom:load.load
289
291 Jimmy Olsen, Audun Ytterdal, Brian de Wolf, Nicolai Langfeldt
292
294 Copyright (C) 2002-2008 Audun Ytterdal, Jimmy Olsen, Nicolai Langfeldt,
295 Linpro AS and others.
296
297 This is free software; see the source for copying conditions. There is
298 NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
299 PURPOSE.
300
301 This program is released under the GNU General Public License
302
304 For more information, see the man pages of the individual munin-*
305 programs or the Munin homepage <http://munin.sf.net/>.
306
307
308
3091.4.5 2010-12-05 MUNIN.CONF(5)