Révision 17f78427
Whitespace cleanup
- remove trailing whitespace
- remove empty lines at the end of files
| plugins/boinc/boinc_estwk | ||
|---|---|---|
| 288 | 288 |
|
| 289 | 289 |
- or - |
| 290 | 290 |
|
| 291 |
Linux servers (running munin-node) used to collect data from other systems
|
|
| 291 |
Linux servers (running munin-node) used to collect data from other systems |
|
| 292 | 292 |
which are running BOINC, but not running munin-node (e.g. non-Linux systems) |
| 293 | 293 |
|
| 294 | 294 |
=head1 CONFIGURATION |
| ... | ... | |
| 319 | 319 |
|
| 320 | 320 |
=item B<password> |
| 321 | 321 |
|
| 322 |
Password for BOINC (default: none)
|
|
| 322 |
Password for BOINC (default: none) |
|
| 323 | 323 |
|
| 324 | 324 |
=back |
| 325 | 325 |
|
| 326 | 326 |
=head2 B<Security Consideration:> |
| 327 | 327 |
|
| 328 |
Using of variable B<password> poses a security risk. Even if the Munin
|
|
| 329 |
configuration file for this plugin containing BOINC-password is properly
|
|
| 330 |
protected, the password is exposed as environment variable and finally passed
|
|
| 331 |
to boinccmd as a parameter. It is therefore possible for local users of the
|
|
| 332 |
machine running this plugin to eavesdrop the BOINC password.
|
|
| 328 |
Using of variable B<password> poses a security risk. Even if the Munin |
|
| 329 |
configuration file for this plugin containing BOINC-password is properly |
|
| 330 |
protected, the password is exposed as environment variable and finally passed |
|
| 331 |
to boinccmd as a parameter. It is therefore possible for local users of the |
|
| 332 |
machine running this plugin to eavesdrop the BOINC password. |
|
| 333 | 333 |
|
| 334 |
Using of variable password is therefore strongly discouraged and is left here
|
|
| 334 |
Using of variable password is therefore strongly discouraged and is left here |
|
| 335 | 335 |
as a legacy option and for testing purposes. |
| 336 | 336 |
|
| 337 |
It should be always possible to use B<boincdir> variable instead - in such case
|
|
| 338 |
the file gui_rpc_auth.cfg is read by boinccmd binary directly.
|
|
| 339 |
If this plugin is used to fetch data from remote system, the gui_rpc_auth.cfg
|
|
| 340 |
can be copied to special directory in a secure way (e.g. via scp) and properly
|
|
| 337 |
It should be always possible to use B<boincdir> variable instead - in such case |
|
| 338 |
the file gui_rpc_auth.cfg is read by boinccmd binary directly. |
|
| 339 |
If this plugin is used to fetch data from remote system, the gui_rpc_auth.cfg |
|
| 340 |
can be copied to special directory in a secure way (e.g. via scp) and properly |
|
| 341 | 341 |
protected by file permissions. |
| 342 | 342 |
|
| 343 | 343 |
=head1 INTERPRETATION |
| 344 | 344 |
|
| 345 |
This plugin shows the estimated remaining computation time for all CPUs of
|
|
| 345 |
This plugin shows the estimated remaining computation time for all CPUs of |
|
| 346 | 346 |
the machine and the estimated remaining computation time of longest workunit. |
| 347 |
The estimation is based on assumption that the workunits of different lengths
|
|
| 347 |
The estimation is based on assumption that the workunits of different lengths |
|
| 348 | 348 |
will be distributed to the CPUs evenly (which is not always the case). |
| 349 | 349 |
|
| 350 |
The warning level can be used to warn in forward about the risk of workunits
|
|
| 350 |
The warning level can be used to warn in forward about the risk of workunits |
|
| 351 | 351 |
local cache depletion and BOINC client running out of the work. |
| 352 |
Although such warning can be achieved by configuring Munin master, there is
|
|
| 352 |
Although such warning can be achieved by configuring Munin master, there is |
|
| 353 | 353 |
also this option to configure it on munin-node side. |
| 354 | 354 |
|
| 355 | 355 |
=head1 EXAMPLES |
| 356 | 356 |
|
| 357 | 357 |
=head2 Local BOINC Example |
| 358 | 358 |
|
| 359 |
BOINC is running on local machine. The BOINC binaries are installed in
|
|
| 359 |
BOINC is running on local machine. The BOINC binaries are installed in |
|
| 360 | 360 |
F</opt/boinc/custom-6.10.1/>, the BOINC is running in directory |
| 361 |
F</usr/local/boinc/> under username boinc, group boinc and the password is used
|
|
| 361 |
F</usr/local/boinc/> under username boinc, group boinc and the password is used |
|
| 362 | 362 |
to protect access to BOINC. |
| 363 |
Warning will be set when estimated work for any of CPUs will decrease under
|
|
| 363 |
Warning will be set when estimated work for any of CPUs will decrease under |
|
| 364 | 364 |
48 hours: |
| 365 | 365 |
|
| 366 | 366 |
[boinc_*] |
| ... | ... | |
| 371 | 371 |
|
| 372 | 372 |
=head2 Remote BOINC Example |
| 373 | 373 |
|
| 374 |
BOINC is running on 2 remote machines C<foo> and C<bar>.
|
|
| 375 |
On the local machine the binary of command-line interface is installed in
|
|
| 374 |
BOINC is running on 2 remote machines C<foo> and C<bar>. |
|
| 375 |
On the local machine the binary of command-line interface is installed in |
|
| 376 | 376 |
directory F</usr/local/bin/>. |
| 377 |
The BOINC password used on the remote machine C<foo> is stored in file
|
|
| 377 |
The BOINC password used on the remote machine C<foo> is stored in file |
|
| 378 | 378 |
F</etc/munin/boinc/foo/gui_rpc_auth.cfg>. |
| 379 |
The BOINC password used on the remote machine C<bar> is stored in file
|
|
| 379 |
The BOINC password used on the remote machine C<bar> is stored in file |
|
| 380 | 380 |
F</etc/munin/boinc/bar/gui_rpc_auth.cfg>. |
| 381 |
These files are owned and readable by root, readable by group munin and not
|
|
| 382 |
readable by others.
|
|
| 383 |
There are 2 symbolic links to this plugin created in the munin plugins
|
|
| 384 |
directory (usually F</etc/munin/plugins/>): F<snmp_foo_boincestwk> and
|
|
| 381 |
These files are owned and readable by root, readable by group munin and not |
|
| 382 |
readable by others. |
|
| 383 |
There are 2 symbolic links to this plugin created in the munin plugins |
|
| 384 |
directory (usually F</etc/munin/plugins/>): F<snmp_foo_boincestwk> and |
|
| 385 | 385 |
F<snmp_bar_boincestwk> |
| 386 | 386 |
|
| 387 | 387 |
[snmp_foo_boinc*] |
| ... | ... | |
| 396 | 396 |
env.host bar |
| 397 | 397 |
env.boincdir /etc/munin/boinc/bar |
| 398 | 398 |
|
| 399 |
This way the plugin can be used by Munin the same way as the Munin plugins
|
|
| 399 |
This way the plugin can be used by Munin the same way as the Munin plugins |
|
| 400 | 400 |
utilizng SNMP (although this plugin itself does not use SNMP). |
| 401 | 401 |
|
| 402 | 402 |
=head1 BUGS |
| 403 | 403 |
|
| 404 |
The estimation is based on simple assumption, that longest workunits will be
|
|
| 405 |
processed first. This is the case when work is distributed evenly among CPUs.
|
|
| 406 |
But this is not always the case, because various deadlines for various
|
|
| 407 |
workunits may fire the "panic mode" of BOINC and scheduling could be much
|
|
| 408 |
different.
|
|
| 409 |
For example, there can be 4 CPUs, and BOINC having downloaded 4 workunits
|
|
| 410 |
with estimated run-time 1 hour each and 3 workunits with estimated run-time
|
|
| 411 |
4 hours each.
|
|
| 404 |
The estimation is based on simple assumption, that longest workunits will be |
|
| 405 |
processed first. This is the case when work is distributed evenly among CPUs. |
|
| 406 |
But this is not always the case, because various deadlines for various |
|
| 407 |
workunits may fire the "panic mode" of BOINC and scheduling could be much |
|
| 408 |
different. |
|
| 409 |
For example, there can be 4 CPUs, and BOINC having downloaded 4 workunits |
|
| 410 |
with estimated run-time 1 hour each and 3 workunits with estimated run-time |
|
| 411 |
4 hours each. |
|
| 412 | 412 |
This Munin plugin will report estimated work 4 hours for each CPU. |
| 413 |
But if deadline of those 1-hour workunits will be much shorter than deadline
|
|
| 414 |
of those 4-hours workunits, BOINC will schedule short workunits first (for all
|
|
| 413 |
But if deadline of those 1-hour workunits will be much shorter than deadline |
|
| 414 |
of those 4-hours workunits, BOINC will schedule short workunits first (for all |
|
| 415 | 415 |
4 CPUs) and after finishing them it will schedule those long workunits. |
| 416 | 416 |
This will result in real computation for 5 hours on 3 CPUs but only 1 hour on |
| 417 |
remaining 4th CPU. So after 1 hour of computation 1 of CPUs will run out of
|
|
| 417 |
remaining 4th CPU. So after 1 hour of computation 1 of CPUs will run out of |
|
| 418 | 418 |
work. |
| 419 | 419 |
|
| 420 |
There is no C<autoconf> capability at the moment. This is due to the fact, that
|
|
| 421 |
BOINC installations may vary over different systems, sometimes using default
|
|
| 422 |
directory from distribution (e.g. F</var/lib/boinc/> in Debian or Ubuntu), but
|
|
| 420 |
There is no C<autoconf> capability at the moment. This is due to the fact, that |
|
| 421 |
BOINC installations may vary over different systems, sometimes using default |
|
| 422 |
directory from distribution (e.g. F</var/lib/boinc/> in Debian or Ubuntu), but |
|
| 423 | 423 |
often running in user directories or in other separate directories. |
| 424 |
Also the user-ID under which BOINC runs often differs.
|
|
| 425 |
Under these circumstances the C<autoconf> would be either lame or too
|
|
| 424 |
Also the user-ID under which BOINC runs often differs. |
|
| 425 |
Under these circumstances the C<autoconf> would be either lame or too |
|
| 426 | 426 |
complicated. |
| 427 | 427 |
|
| 428 | 428 |
=head1 AUTHOR |
Formats disponibles : Unified diff