Wednesday, February 25th, 2009 | Author: Nico
Au boulot j’ai remplacé cacti par munin. Munin c’est choupi, la conf est en flat file mais ça a deux défauts, ou un selon le point de vue : le munin-cgi-graph est tout simplement moisi car d’une lenteur sans nom, et générer les images lors du poll c’est long. Sauf quand on tombe sur ce petit hack convivial qui permet de lancer en parallèle la génération pour X nodes. Malheureusement, l’exemple donné en lien n’est valable que pour la version du trunk (au moment ou j’écris ceci) et pas pour la version 1.2.6 livrée avec lenny. J’ai donc modifié mon munin-graph en “portant” le hack disponible. Résultat : 2min30s au lieu de 9min pour la génération de 80 machines (dont certaines avec beaucoup d’infos)
Le code en question :
# Add this to munin-graph sub myforked_processnode { my ($domain, $code) = @_; my $max=24; my $counter = 0; for my $key ( keys %{$config->{domain}->{$domain}->{node}}) { wait unless ++ $counter >= $max; #print "Processing ".$key."\n"; die "Fork failed: $!\n" unless defined (my $pid = fork); exit $code -> ($domain,$key,$config->{domain}->{$domain}->{node}->{$key}) unless $pid; } 1 until -1 == wait; } # Modify process_domain to get : sub process_domain { my ($domain) = @_; myforked_processnode($domain, \&process_node); }
Et voila !

Thursday, 26. February 2009
Bon ben trop roulez quoi, tu en parlais, tu l’as fait
Saturday, 28. February 2009
Très bon !
J’ai modifié ton hack pour qu;i prenne en compte le nombre de cpu/core en fonction de la charge de la machine. : http://www.neuronfarm.net/blog/optimiser-munin-par-rapport-a-votre-nombre-de-core-cpu
Saturday, 28. February 2009
Pas mal ta modif
Les 24 fils est un nombre adapté à ma machine de supervision en fait, et ton hack est bien sympa