http://lcg.in2p3.fr/wiki/api.php?action=feedcontributions&user=Mendoza&feedformat=atom
lcgwiki - Contributions [en]
2024-03-29T02:03:36Z
Contributions
MediaWiki 1.31.0
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4553
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T11:29:21Z
<p>Mendoza: /* XML d'intégration */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
== /var/www/cacti/log/cacti.log ==<br />
<br />
* Time < Poller Interval<br />
* Hosts<br />
* DataSources<br />
* RRDsProcessed<br />
<br />
== rrdtool fetch ==<br />
<br />
rrdtool fetch /var/www/cacti/rra/<rrdfile>.rrd AVERAGE<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== Spine ==<br />
<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine<br />
<br />
= Extension =<br />
<br />
== Plugin Architecture ==<br />
<br />
Pour permettre l'ajout de plugins:<br />
<br />
* http://cactiusers.org/wiki/PluginArchitectureInstall<br />
<br />
== Aggregate ==<br />
<br />
Pour grouper plusieurs graphiques:<br />
<br />
* http://docs.cacti.net/?q=node/392<br />
<br />
== Disk I/O ==<br />
<br />
Templates pour les entrées / sorties des disques:<br />
<br />
* http://www.goldfisch.at/knowwiki/howtos/cacti#disk_io<br />
<br />
== removespikes ==<br />
<br />
Pour supprimer les "spikes" dans les rrds:<br />
<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.txt<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.tar.gz<br />
<br />
= Grille =<br />
<br />
Exemple d'utilisation des data queries:<br />
* http://docs.cacti.net/?q=node/284<br />
<br />
* En utilisant les plugins et des scripts on peut obtenir des graphiques personnalisées:<br />
[[Image:Dq02.png|center]]<br />
<br />
== /var/www/cacti/scripts/query_CE_queues.pl ==<br />
Script (brouillon) pour obtenir l'information a propos de les queues d'une Computing Element gLite<br />
#!/usr/bin/perl<br />
use strict;<br />
use warnings;<br />
use Switch;<br />
my $target = $ARGV[0];<br />
my $action = $ARGV[1];<br />
my $base = 'Mds-Vo-name=resource,o=grid';<br />
my $filter = "GlueCEUniqueID=$target:*";<br />
my $attributes = 'GlueCEStateRunningJobs GlueCEStateWaitingJobs GlueCEInfoTotalCPUs GlueCEStateFreeCPUs GlueCEStateEstimatedResponseTime GlueCEName';<br />
my @ldif = qx(ldapsearch -x -h $target -p2170 -LLL -b $base $filter $attributes 2>/dev/null) or die;<br />
my @data;<br />
my $i = 0;<br />
my $j;<br />
foreach my $line (@ldif) {<br />
chomp($line);<br />
if ($line =~ /^dn/) {<br />
$i++;<br />
} elsif ( $line =~ /^$/) {<br />
# skip<br />
} elsif ( $line =~ /^ /) {<br />
# skip<br />
} else {<br />
my ($key, $value)=split(/: /,$line);<br />
$data[$i]{$key}=$value;<br />
}<br />
}<br />
my $n = scalar(@data);<br />
switch ($action) {<br />
case "index" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}\n";<br />
}<br />
}<br />
case "query" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}:$j->{$ARGV[2]}\n";<br />
}<br />
}<br />
case "get" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
if ( $j->{'GlueCEName'} eq $ARGV[3]){<br />
print "$j->{$ARGV[2]}";<br />
}<br />
}<br />
}<br />
else {<br />
die;<br />
}<br />
}<br />
<br />
== XML d'intégration ==<br />
=== /var/www/cacti/resource/script_queries/CE_queues.xml ===<br />
<interface><br />
<name>Get CE queue information</name><br />
<script_path>perl |path_cacti|/scripts/query_CE_queues.pl</script_path><br />
<arg_prepend>|host_hostname|</arg_prepend><br />
<arg_index>index</arg_index><br />
<arg_query>query</arg_query><br />
<arg_get>get</arg_get><br />
<output_delimeter>:</output_delimeter><br />
<index_order>GlueCEName</index_order><br />
<index_order_type>alphanumeric</index_order_type><br />
<index_title_format>|chosen_order_field|</index_title_format><br />
<fields><br />
<GlueCEName><br />
<name>Queue</name><br />
<direction>input</direction><br />
<query_name>GlueCEName</query_name><br />
</GlueCEName><br />
<GlueCEStateFreeCPUs><br />
<name>Free</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateFreeCPUs</query_name><br />
</GlueCEStateFreeCPUs><br />
<GlueCEInfoTotalCPUs><br />
<name>Total</name><br />
<direction>output</direction><br />
<query_name>GlueCEInfoTotalCPUs</query_name><br />
</GlueCEInfoTotalCPUs><br />
<GlueCEStateEstimatedResponseTime><br />
<name>ERT</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateEstimatedResponseTime</query_name><br />
</GlueCEStateEstimatedResponseTime><br />
<GlueCEStateWaitingJobs><br />
<name>Waiting</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateWaitingJobs</query_name><br />
</GlueCEStateWaitingJobs><br />
<GlueCEStateRunningJobs><br />
<name>Running</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateRunningJobs</query_name><br />
</GlueCEStateRunningJobs><br />
<fields><br />
</interface><br />
<br />
== Data Query ==<br />
[[Image:Dq03.png|center]]<br />
[[Image:Dq04.png|center]]<br />
=== Data Query XML ===<br />
<cacti> <br />
<hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
<name>Computing Element queues</name><br />
<description>Computing Element queues</description><br />
<xml_path>&lt;path_cacti&gt;/resource/script_queries/CE_queues.xml</xml_path><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<graphs><br />
<hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
<name>Computing Element Queue</name><br />
<graph_template_id>hash_000016a634e798f897368bece7eeaac73081f6</graph_template_id><br />
<rrd><br />
<item_000><br />
<snmp_field_name>GlueCEInfoTotalCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016ef38e0fcb85d21995f3eda4984cb5c04</data_template_rrd_id><br />
</item_000><br />
<item_001><br />
<snmp_field_name>GlueCEStateEstimatedResponseTime</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001610e49122694f56ff5d99799888a8a4d7</data_template_rrd_id><br />
</item_001><br />
<item_002><br />
<snmp_field_name>GlueCEStateWaitingJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</data_template_rrd_id><br />
</item_002><br />
<item_003><br />
<snmp_field_name>GlueCEStateFreeCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016bbcb3088736558f6689336d05fb1aff7</data_template_rrd_id><br />
</item_003><br />
<item_004><br />
<snmp_field_name>GlueCEStateRunningJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001629c804736fcbccf55f085a1c32049c4d</data_template_rrd_id><br />
</item_004><br />
</rrd><br />
<sv_graph><br />
</sv_graph><br />
<sv_data_source><br />
</sv_data_source><br />
</hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
</graphs><br />
</hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
</cacti><br />
<br />
== Data Template ==<br />
[[Image:Dq05.png|center]]<br />
=== Data Template XML ===<br />
<cacti> <br />
<hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
<name>Computer Element Queue</name><br />
<ds><br />
<t_name></t_name><br />
<name>|host_description| - Queue - |query_GlueCEName|</name><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<t_rra_id></t_rra_id><br />
<t_rrd_step></t_rrd_step><br />
<rrd_step>300</rrd_step><br />
<t_active></t_active><br />
<active>on</active><br />
<rra_items>hash_150016c21df5178e5c955013591239eb0afd46|hash_1500160d9c0af8b8acdc7807943937b3208e29|hash_1500166fc2d038fb42950138b0ce3e9874cc60|hash_150016e36f3adb9f152adfa5dc50fd2b23337e|hash_150016283ea2bf1634d92ce081ec82a634f513|hash_150016f044e9143dda57b227728577faf08e7c</rra_items><br />
</ds><br />
<items><br />
<hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Total</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>ERT</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Waiting</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Free</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<hash_08001629c804736fcbccf55f085a1c32049c4d><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Running</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001629c804736fcbccf55f085a1c32049c4d><br />
</items><br />
<data><br />
<item_000><br />
<data_input_field_id>hash_070016d39556ecad6166701bfb0e28c5a11108</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_000><br />
<item_001><br />
<data_input_field_id>hash_0700163b7caa46eb809fc238de6ef18b6e10d5</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_001><br />
<item_002><br />
<data_input_field_id>hash_07001674af2e42dc12956c4817c2ef5d9983f9</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_002><br />
</data><br />
</hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
</cacti><br />
<br />
== Graph Template ==<br />
[[Image:Dq06.png|center]]<br />
=== Graph Template XML ===<br />
<cacti> <br />
<hash_000016a634e798f897368bece7eeaac73081f6><br />
<name>Computing Element Queue</name><br />
<graph><br />
<t_title></t_title><br />
<title>|host_description| - Queue - |query_GlueCEName|</title><br />
<t_image_format_id></t_image_format_id><br />
<image_format_id>1</image_format_id><br />
<t_height></t_height><br />
<height>120</height><br />
<t_width></t_width><br />
<width>720</width><br />
<t_slope_mode></t_slope_mode><br />
<slope_mode></slope_mode><br />
<t_auto_scale></t_auto_scale><br />
<auto_scale>on</auto_scale><br />
<t_auto_scale_opts></t_auto_scale_opts><br />
<auto_scale_opts>4</auto_scale_opts><br />
<t_auto_scale_log></t_auto_scale_log><br />
<auto_scale_log></auto_scale_log><br />
<t_scale_log_units></t_scale_log_units><br />
<scale_log_units></scale_log_units><br />
<t_auto_scale_rigid></t_auto_scale_rigid><br />
<auto_scale_rigid></auto_scale_rigid><br />
<t_auto_padding></t_auto_padding><br />
<auto_padding>on</auto_padding><br />
<t_export></t_export><br />
<export>on</export><br />
<t_upper_limit></t_upper_limit><br />
<upper_limit>1</upper_limit><br />
<t_lower_limit></t_lower_limit><br />
<lower_limit>0</lower_limit><br />
<t_base_value></t_base_value><br />
<base_value>1000</base_value><br />
<t_unit_value></t_unit_value><br />
<unit_value></unit_value><br />
<t_unit_exponent_value></t_unit_exponent_value><br />
<unit_exponent_value></unit_exponent_value><br />
<t_vertical_label></t_vertical_label><br />
<vertical_label></vertical_label><br />
</graph><br />
<items><br />
<hash_10001660c385532179d47b371dd26af21136f7><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>00FF00</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Running</text_format><br />
<hard_return></hard_return><br />
<sequence>1</sequence><br />
</hash_10001660c385532179d47b371dd26af21136f7><br />
<hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<task_item_id>hash_080016bbcb3088736558f6689336d05fb1aff7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Free:</text_format><br />
<hard_return></hard_return><br />
<sequence>2</sequence><br />
</hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>3</sequence><br />
</hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>4</sequence><br />
</hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>5</sequence><br />
</hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>6</sequence><br />
</hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>FF0000</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Waiting</text_format><br />
<hard_return></hard_return><br />
<sequence>7</sequence><br />
</hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<task_item_id>hash_08001610e49122694f56ff5d99799888a8a4d7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format> ERT:</text_format><br />
<hard_return></hard_return><br />
<sequence>8</sequence><br />
</hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<hash_100016146031fe57480308160a76c2b3d692d0><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>9</sequence><br />
</hash_100016146031fe57480308160a76c2b3d692d0><br />
<hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>10</sequence><br />
</hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<hash_100016d56925ac40dd6abfc099b74370874e01><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>11</sequence><br />
</hash_100016d56925ac40dd6abfc099b74370874e01><br />
<hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>12</sequence><br />
</hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
</items><br />
<inputs><br />
<hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<name>Data Source [Waiting]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000160d9e710a70c26579ad7f5ba9074a0d07|hash_000016146031fe57480308160a76c2b3d692d0|hash_000016d0f7d613f0427ac1f149adfd8b912584|hash_000016d56925ac40dd6abfc099b74370874e01|hash_000016e3c1745f1ee0ceea123c83a82f6a9cd5</items><br />
</hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<name>Data Source [ERT]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000166b65aea95d4fe79da13d8f81be8f8a15</items><br />
</hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<hash_090016a00d6f19c821f807210f1c427cd17122><br />
<name>Data Source [Running]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_00001660c385532179d47b371dd26af21136f7|hash_00001625c74d47ed5f241cd5cb1fd21dea93c0|hash_000016c3fea60fba0b5de3cf9f496a3e14f38a|hash_000016fa1e55813d5021546ca2f0c19a3d0611|hash_000016dfd0d0c949e51b170dbcdcf13bbf8acb</items><br />
</hash_090016a00d6f19c821f807210f1c427cd17122><br />
<hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
<name>Data Source [Free]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_000016452ea7619f44f9240bd05e282ea820d5</items><br />
</hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
</inputs><br />
</hash_000016a634e798f897368bece7eeaac73081f6><br />
</cacti></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4552
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T11:27:31Z
<p>Mendoza: /* Grille */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
== /var/www/cacti/log/cacti.log ==<br />
<br />
* Time < Poller Interval<br />
* Hosts<br />
* DataSources<br />
* RRDsProcessed<br />
<br />
== rrdtool fetch ==<br />
<br />
rrdtool fetch /var/www/cacti/rra/<rrdfile>.rrd AVERAGE<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== Spine ==<br />
<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine<br />
<br />
= Extension =<br />
<br />
== Plugin Architecture ==<br />
<br />
Pour permettre l'ajout de plugins:<br />
<br />
* http://cactiusers.org/wiki/PluginArchitectureInstall<br />
<br />
== Aggregate ==<br />
<br />
Pour grouper plusieurs graphiques:<br />
<br />
* http://docs.cacti.net/?q=node/392<br />
<br />
== Disk I/O ==<br />
<br />
Templates pour les entrées / sorties des disques:<br />
<br />
* http://www.goldfisch.at/knowwiki/howtos/cacti#disk_io<br />
<br />
== removespikes ==<br />
<br />
Pour supprimer les "spikes" dans les rrds:<br />
<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.txt<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.tar.gz<br />
<br />
= Grille =<br />
<br />
Exemple d'utilisation des data queries:<br />
* http://docs.cacti.net/?q=node/284<br />
<br />
* En utilisant les plugins et des scripts on peut obtenir des graphiques personnalisées:<br />
[[Image:Dq02.png|center]]<br />
<br />
== /var/www/cacti/scripts/query_CE_queues.pl ==<br />
Script (brouillon) pour obtenir l'information a propos de les queues d'une Computing Element gLite<br />
#!/usr/bin/perl<br />
use strict;<br />
use warnings;<br />
use Switch;<br />
my $target = $ARGV[0];<br />
my $action = $ARGV[1];<br />
my $base = 'Mds-Vo-name=resource,o=grid';<br />
my $filter = "GlueCEUniqueID=$target:*";<br />
my $attributes = 'GlueCEStateRunningJobs GlueCEStateWaitingJobs GlueCEInfoTotalCPUs GlueCEStateFreeCPUs GlueCEStateEstimatedResponseTime GlueCEName';<br />
my @ldif = qx(ldapsearch -x -h $target -p2170 -LLL -b $base $filter $attributes 2>/dev/null) or die;<br />
my @data;<br />
my $i = 0;<br />
my $j;<br />
foreach my $line (@ldif) {<br />
chomp($line);<br />
if ($line =~ /^dn/) {<br />
$i++;<br />
} elsif ( $line =~ /^$/) {<br />
# skip<br />
} elsif ( $line =~ /^ /) {<br />
# skip<br />
} else {<br />
my ($key, $value)=split(/: /,$line);<br />
$data[$i]{$key}=$value;<br />
}<br />
}<br />
my $n = scalar(@data);<br />
switch ($action) {<br />
case "index" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}\n";<br />
}<br />
}<br />
case "query" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}:$j->{$ARGV[2]}\n";<br />
}<br />
}<br />
case "get" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
if ( $j->{'GlueCEName'} eq $ARGV[3]){<br />
print "$j->{$ARGV[2]}";<br />
}<br />
}<br />
}<br />
else {<br />
die;<br />
}<br />
}<br />
<br />
== XML d'intégration ==<br />
<interface><br />
<name>Get CE queue information</name><br />
<script_path>perl |path_cacti|/scripts/query_CE_queues.pl</script_path><br />
<arg_prepend>|host_hostname|</arg_prepend><br />
<arg_index>index</arg_index><br />
<arg_query>query</arg_query><br />
<arg_get>get</arg_get><br />
<output_delimeter>:</output_delimeter><br />
<index_order>GlueCEName</index_order><br />
<index_order_type>alphanumeric</index_order_type><br />
<index_title_format>|chosen_order_field|</index_title_format><br />
<fields><br />
<GlueCEName><br />
<name>Queue</name><br />
<direction>input</direction><br />
<query_name>GlueCEName</query_name><br />
</GlueCEName><br />
<GlueCEStateFreeCPUs><br />
<name>Free</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateFreeCPUs</query_name><br />
</GlueCEStateFreeCPUs><br />
<GlueCEInfoTotalCPUs><br />
<name>Total</name><br />
<direction>output</direction><br />
<query_name>GlueCEInfoTotalCPUs</query_name><br />
</GlueCEInfoTotalCPUs><br />
<GlueCEStateEstimatedResponseTime><br />
<name>ERT</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateEstimatedResponseTime</query_name><br />
</GlueCEStateEstimatedResponseTime><br />
<GlueCEStateWaitingJobs><br />
<name>Waiting</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateWaitingJobs</query_name><br />
</GlueCEStateWaitingJobs><br />
<GlueCEStateRunningJobs><br />
<name>Running</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateRunningJobs</query_name><br />
</GlueCEStateRunningJobs><br />
<fields><br />
</interface><br />
<br />
== Data Query ==<br />
[[Image:Dq03.png|center]]<br />
[[Image:Dq04.png|center]]<br />
=== Data Query XML ===<br />
<cacti> <br />
<hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
<name>Computing Element queues</name><br />
<description>Computing Element queues</description><br />
<xml_path>&lt;path_cacti&gt;/resource/script_queries/CE_queues.xml</xml_path><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<graphs><br />
<hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
<name>Computing Element Queue</name><br />
<graph_template_id>hash_000016a634e798f897368bece7eeaac73081f6</graph_template_id><br />
<rrd><br />
<item_000><br />
<snmp_field_name>GlueCEInfoTotalCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016ef38e0fcb85d21995f3eda4984cb5c04</data_template_rrd_id><br />
</item_000><br />
<item_001><br />
<snmp_field_name>GlueCEStateEstimatedResponseTime</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001610e49122694f56ff5d99799888a8a4d7</data_template_rrd_id><br />
</item_001><br />
<item_002><br />
<snmp_field_name>GlueCEStateWaitingJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</data_template_rrd_id><br />
</item_002><br />
<item_003><br />
<snmp_field_name>GlueCEStateFreeCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016bbcb3088736558f6689336d05fb1aff7</data_template_rrd_id><br />
</item_003><br />
<item_004><br />
<snmp_field_name>GlueCEStateRunningJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001629c804736fcbccf55f085a1c32049c4d</data_template_rrd_id><br />
</item_004><br />
</rrd><br />
<sv_graph><br />
</sv_graph><br />
<sv_data_source><br />
</sv_data_source><br />
</hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
</graphs><br />
</hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
</cacti><br />
<br />
== Data Template ==<br />
[[Image:Dq05.png|center]]<br />
=== Data Template XML ===<br />
<cacti> <br />
<hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
<name>Computer Element Queue</name><br />
<ds><br />
<t_name></t_name><br />
<name>|host_description| - Queue - |query_GlueCEName|</name><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<t_rra_id></t_rra_id><br />
<t_rrd_step></t_rrd_step><br />
<rrd_step>300</rrd_step><br />
<t_active></t_active><br />
<active>on</active><br />
<rra_items>hash_150016c21df5178e5c955013591239eb0afd46|hash_1500160d9c0af8b8acdc7807943937b3208e29|hash_1500166fc2d038fb42950138b0ce3e9874cc60|hash_150016e36f3adb9f152adfa5dc50fd2b23337e|hash_150016283ea2bf1634d92ce081ec82a634f513|hash_150016f044e9143dda57b227728577faf08e7c</rra_items><br />
</ds><br />
<items><br />
<hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Total</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>ERT</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Waiting</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Free</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<hash_08001629c804736fcbccf55f085a1c32049c4d><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Running</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001629c804736fcbccf55f085a1c32049c4d><br />
</items><br />
<data><br />
<item_000><br />
<data_input_field_id>hash_070016d39556ecad6166701bfb0e28c5a11108</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_000><br />
<item_001><br />
<data_input_field_id>hash_0700163b7caa46eb809fc238de6ef18b6e10d5</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_001><br />
<item_002><br />
<data_input_field_id>hash_07001674af2e42dc12956c4817c2ef5d9983f9</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_002><br />
</data><br />
</hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
</cacti><br />
<br />
== Graph Template ==<br />
[[Image:Dq06.png|center]]<br />
=== Graph Template XML ===<br />
<cacti> <br />
<hash_000016a634e798f897368bece7eeaac73081f6><br />
<name>Computing Element Queue</name><br />
<graph><br />
<t_title></t_title><br />
<title>|host_description| - Queue - |query_GlueCEName|</title><br />
<t_image_format_id></t_image_format_id><br />
<image_format_id>1</image_format_id><br />
<t_height></t_height><br />
<height>120</height><br />
<t_width></t_width><br />
<width>720</width><br />
<t_slope_mode></t_slope_mode><br />
<slope_mode></slope_mode><br />
<t_auto_scale></t_auto_scale><br />
<auto_scale>on</auto_scale><br />
<t_auto_scale_opts></t_auto_scale_opts><br />
<auto_scale_opts>4</auto_scale_opts><br />
<t_auto_scale_log></t_auto_scale_log><br />
<auto_scale_log></auto_scale_log><br />
<t_scale_log_units></t_scale_log_units><br />
<scale_log_units></scale_log_units><br />
<t_auto_scale_rigid></t_auto_scale_rigid><br />
<auto_scale_rigid></auto_scale_rigid><br />
<t_auto_padding></t_auto_padding><br />
<auto_padding>on</auto_padding><br />
<t_export></t_export><br />
<export>on</export><br />
<t_upper_limit></t_upper_limit><br />
<upper_limit>1</upper_limit><br />
<t_lower_limit></t_lower_limit><br />
<lower_limit>0</lower_limit><br />
<t_base_value></t_base_value><br />
<base_value>1000</base_value><br />
<t_unit_value></t_unit_value><br />
<unit_value></unit_value><br />
<t_unit_exponent_value></t_unit_exponent_value><br />
<unit_exponent_value></unit_exponent_value><br />
<t_vertical_label></t_vertical_label><br />
<vertical_label></vertical_label><br />
</graph><br />
<items><br />
<hash_10001660c385532179d47b371dd26af21136f7><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>00FF00</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Running</text_format><br />
<hard_return></hard_return><br />
<sequence>1</sequence><br />
</hash_10001660c385532179d47b371dd26af21136f7><br />
<hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<task_item_id>hash_080016bbcb3088736558f6689336d05fb1aff7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Free:</text_format><br />
<hard_return></hard_return><br />
<sequence>2</sequence><br />
</hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>3</sequence><br />
</hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>4</sequence><br />
</hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>5</sequence><br />
</hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>6</sequence><br />
</hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>FF0000</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Waiting</text_format><br />
<hard_return></hard_return><br />
<sequence>7</sequence><br />
</hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<task_item_id>hash_08001610e49122694f56ff5d99799888a8a4d7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format> ERT:</text_format><br />
<hard_return></hard_return><br />
<sequence>8</sequence><br />
</hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<hash_100016146031fe57480308160a76c2b3d692d0><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>9</sequence><br />
</hash_100016146031fe57480308160a76c2b3d692d0><br />
<hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>10</sequence><br />
</hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<hash_100016d56925ac40dd6abfc099b74370874e01><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>11</sequence><br />
</hash_100016d56925ac40dd6abfc099b74370874e01><br />
<hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>12</sequence><br />
</hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
</items><br />
<inputs><br />
<hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<name>Data Source [Waiting]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000160d9e710a70c26579ad7f5ba9074a0d07|hash_000016146031fe57480308160a76c2b3d692d0|hash_000016d0f7d613f0427ac1f149adfd8b912584|hash_000016d56925ac40dd6abfc099b74370874e01|hash_000016e3c1745f1ee0ceea123c83a82f6a9cd5</items><br />
</hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<name>Data Source [ERT]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000166b65aea95d4fe79da13d8f81be8f8a15</items><br />
</hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<hash_090016a00d6f19c821f807210f1c427cd17122><br />
<name>Data Source [Running]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_00001660c385532179d47b371dd26af21136f7|hash_00001625c74d47ed5f241cd5cb1fd21dea93c0|hash_000016c3fea60fba0b5de3cf9f496a3e14f38a|hash_000016fa1e55813d5021546ca2f0c19a3d0611|hash_000016dfd0d0c949e51b170dbcdcf13bbf8acb</items><br />
</hash_090016a00d6f19c821f807210f1c427cd17122><br />
<hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
<name>Data Source [Free]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_000016452ea7619f44f9240bd05e282ea820d5</items><br />
</hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
</inputs><br />
</hash_000016a634e798f897368bece7eeaac73081f6><br />
</cacti></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4551
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T11:26:42Z
<p>Mendoza: /* Grille */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
== /var/www/cacti/log/cacti.log ==<br />
<br />
* Time < Poller Interval<br />
* Hosts<br />
* DataSources<br />
* RRDsProcessed<br />
<br />
== rrdtool fetch ==<br />
<br />
rrdtool fetch /var/www/cacti/rra/<rrdfile>.rrd AVERAGE<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== Spine ==<br />
<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine<br />
<br />
= Extension =<br />
<br />
== Plugin Architecture ==<br />
<br />
Pour permettre l'ajout de plugins:<br />
<br />
* http://cactiusers.org/wiki/PluginArchitectureInstall<br />
<br />
== Aggregate ==<br />
<br />
Pour grouper plusieurs graphiques:<br />
<br />
* http://docs.cacti.net/?q=node/392<br />
<br />
== Disk I/O ==<br />
<br />
Templates pour les entrées / sorties des disques:<br />
<br />
* http://www.goldfisch.at/knowwiki/howtos/cacti#disk_io<br />
<br />
== removespikes ==<br />
<br />
Pour supprimer les "spikes" dans les rrds:<br />
<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.txt<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.tar.gz<br />
<br />
= Grille =<br />
<br />
Exemple d'utilisation des data queries:<br />
* http://docs.cacti.net/?q=node/284<br />
<br />
* En utilisant les plugins et des scripts on peut obtenir des graphiques personnalisées:<br />
[[Image:Dq01.png|center]]<br />
[[Image:Dq02.png|center]]<br />
<br />
== /var/www/cacti/scripts/query_CE_queues.pl ==<br />
Script (brouillon) pour obtenir l'information a propos de les queues d'une Computing Element gLite<br />
#!/usr/bin/perl<br />
use strict;<br />
use warnings;<br />
use Switch;<br />
my $target = $ARGV[0];<br />
my $action = $ARGV[1];<br />
my $base = 'Mds-Vo-name=resource,o=grid';<br />
my $filter = "GlueCEUniqueID=$target:*";<br />
my $attributes = 'GlueCEStateRunningJobs GlueCEStateWaitingJobs GlueCEInfoTotalCPUs GlueCEStateFreeCPUs GlueCEStateEstimatedResponseTime GlueCEName';<br />
my @ldif = qx(ldapsearch -x -h $target -p2170 -LLL -b $base $filter $attributes 2>/dev/null) or die;<br />
my @data;<br />
my $i = 0;<br />
my $j;<br />
foreach my $line (@ldif) {<br />
chomp($line);<br />
if ($line =~ /^dn/) {<br />
$i++;<br />
} elsif ( $line =~ /^$/) {<br />
# skip<br />
} elsif ( $line =~ /^ /) {<br />
# skip<br />
} else {<br />
my ($key, $value)=split(/: /,$line);<br />
$data[$i]{$key}=$value;<br />
}<br />
}<br />
my $n = scalar(@data);<br />
switch ($action) {<br />
case "index" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}\n";<br />
}<br />
}<br />
case "query" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}:$j->{$ARGV[2]}\n";<br />
}<br />
}<br />
case "get" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
if ( $j->{'GlueCEName'} eq $ARGV[3]){<br />
print "$j->{$ARGV[2]}";<br />
}<br />
}<br />
}<br />
else {<br />
die;<br />
}<br />
}<br />
<br />
== XML d'intégration ==<br />
<interface><br />
<name>Get CE queue information</name><br />
<script_path>perl |path_cacti|/scripts/query_CE_queues.pl</script_path><br />
<arg_prepend>|host_hostname|</arg_prepend><br />
<arg_index>index</arg_index><br />
<arg_query>query</arg_query><br />
<arg_get>get</arg_get><br />
<output_delimeter>:</output_delimeter><br />
<index_order>GlueCEName</index_order><br />
<index_order_type>alphanumeric</index_order_type><br />
<index_title_format>|chosen_order_field|</index_title_format><br />
<fields><br />
<GlueCEName><br />
<name>Queue</name><br />
<direction>input</direction><br />
<query_name>GlueCEName</query_name><br />
</GlueCEName><br />
<GlueCEStateFreeCPUs><br />
<name>Free</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateFreeCPUs</query_name><br />
</GlueCEStateFreeCPUs><br />
<GlueCEInfoTotalCPUs><br />
<name>Total</name><br />
<direction>output</direction><br />
<query_name>GlueCEInfoTotalCPUs</query_name><br />
</GlueCEInfoTotalCPUs><br />
<GlueCEStateEstimatedResponseTime><br />
<name>ERT</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateEstimatedResponseTime</query_name><br />
</GlueCEStateEstimatedResponseTime><br />
<GlueCEStateWaitingJobs><br />
<name>Waiting</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateWaitingJobs</query_name><br />
</GlueCEStateWaitingJobs><br />
<GlueCEStateRunningJobs><br />
<name>Running</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateRunningJobs</query_name><br />
</GlueCEStateRunningJobs><br />
<fields><br />
</interface><br />
<br />
== Data Query ==<br />
[[Image:Dq03.png|center]]<br />
[[Image:Dq04.png|center]]<br />
=== Data Query XML ===<br />
<cacti> <br />
<hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
<name>Computing Element queues</name><br />
<description>Computing Element queues</description><br />
<xml_path>&lt;path_cacti&gt;/resource/script_queries/CE_queues.xml</xml_path><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<graphs><br />
<hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
<name>Computing Element Queue</name><br />
<graph_template_id>hash_000016a634e798f897368bece7eeaac73081f6</graph_template_id><br />
<rrd><br />
<item_000><br />
<snmp_field_name>GlueCEInfoTotalCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016ef38e0fcb85d21995f3eda4984cb5c04</data_template_rrd_id><br />
</item_000><br />
<item_001><br />
<snmp_field_name>GlueCEStateEstimatedResponseTime</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001610e49122694f56ff5d99799888a8a4d7</data_template_rrd_id><br />
</item_001><br />
<item_002><br />
<snmp_field_name>GlueCEStateWaitingJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</data_template_rrd_id><br />
</item_002><br />
<item_003><br />
<snmp_field_name>GlueCEStateFreeCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016bbcb3088736558f6689336d05fb1aff7</data_template_rrd_id><br />
</item_003><br />
<item_004><br />
<snmp_field_name>GlueCEStateRunningJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001629c804736fcbccf55f085a1c32049c4d</data_template_rrd_id><br />
</item_004><br />
</rrd><br />
<sv_graph><br />
</sv_graph><br />
<sv_data_source><br />
</sv_data_source><br />
</hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
</graphs><br />
</hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
</cacti><br />
<br />
== Data Template ==<br />
[[Image:Dq05.png|center]]<br />
=== Data Template XML ===<br />
<cacti> <br />
<hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
<name>Computer Element Queue</name><br />
<ds><br />
<t_name></t_name><br />
<name>|host_description| - Queue - |query_GlueCEName|</name><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<t_rra_id></t_rra_id><br />
<t_rrd_step></t_rrd_step><br />
<rrd_step>300</rrd_step><br />
<t_active></t_active><br />
<active>on</active><br />
<rra_items>hash_150016c21df5178e5c955013591239eb0afd46|hash_1500160d9c0af8b8acdc7807943937b3208e29|hash_1500166fc2d038fb42950138b0ce3e9874cc60|hash_150016e36f3adb9f152adfa5dc50fd2b23337e|hash_150016283ea2bf1634d92ce081ec82a634f513|hash_150016f044e9143dda57b227728577faf08e7c</rra_items><br />
</ds><br />
<items><br />
<hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Total</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>ERT</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Waiting</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Free</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<hash_08001629c804736fcbccf55f085a1c32049c4d><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Running</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001629c804736fcbccf55f085a1c32049c4d><br />
</items><br />
<data><br />
<item_000><br />
<data_input_field_id>hash_070016d39556ecad6166701bfb0e28c5a11108</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_000><br />
<item_001><br />
<data_input_field_id>hash_0700163b7caa46eb809fc238de6ef18b6e10d5</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_001><br />
<item_002><br />
<data_input_field_id>hash_07001674af2e42dc12956c4817c2ef5d9983f9</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_002><br />
</data><br />
</hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
</cacti><br />
<br />
== Graph Template ==<br />
[[Image:Dq06.png|center]]<br />
=== Graph Template XML ===<br />
<cacti> <br />
<hash_000016a634e798f897368bece7eeaac73081f6><br />
<name>Computing Element Queue</name><br />
<graph><br />
<t_title></t_title><br />
<title>|host_description| - Queue - |query_GlueCEName|</title><br />
<t_image_format_id></t_image_format_id><br />
<image_format_id>1</image_format_id><br />
<t_height></t_height><br />
<height>120</height><br />
<t_width></t_width><br />
<width>720</width><br />
<t_slope_mode></t_slope_mode><br />
<slope_mode></slope_mode><br />
<t_auto_scale></t_auto_scale><br />
<auto_scale>on</auto_scale><br />
<t_auto_scale_opts></t_auto_scale_opts><br />
<auto_scale_opts>4</auto_scale_opts><br />
<t_auto_scale_log></t_auto_scale_log><br />
<auto_scale_log></auto_scale_log><br />
<t_scale_log_units></t_scale_log_units><br />
<scale_log_units></scale_log_units><br />
<t_auto_scale_rigid></t_auto_scale_rigid><br />
<auto_scale_rigid></auto_scale_rigid><br />
<t_auto_padding></t_auto_padding><br />
<auto_padding>on</auto_padding><br />
<t_export></t_export><br />
<export>on</export><br />
<t_upper_limit></t_upper_limit><br />
<upper_limit>1</upper_limit><br />
<t_lower_limit></t_lower_limit><br />
<lower_limit>0</lower_limit><br />
<t_base_value></t_base_value><br />
<base_value>1000</base_value><br />
<t_unit_value></t_unit_value><br />
<unit_value></unit_value><br />
<t_unit_exponent_value></t_unit_exponent_value><br />
<unit_exponent_value></unit_exponent_value><br />
<t_vertical_label></t_vertical_label><br />
<vertical_label></vertical_label><br />
</graph><br />
<items><br />
<hash_10001660c385532179d47b371dd26af21136f7><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>00FF00</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Running</text_format><br />
<hard_return></hard_return><br />
<sequence>1</sequence><br />
</hash_10001660c385532179d47b371dd26af21136f7><br />
<hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<task_item_id>hash_080016bbcb3088736558f6689336d05fb1aff7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Free:</text_format><br />
<hard_return></hard_return><br />
<sequence>2</sequence><br />
</hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>3</sequence><br />
</hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>4</sequence><br />
</hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>5</sequence><br />
</hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>6</sequence><br />
</hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>FF0000</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Waiting</text_format><br />
<hard_return></hard_return><br />
<sequence>7</sequence><br />
</hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<task_item_id>hash_08001610e49122694f56ff5d99799888a8a4d7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format> ERT:</text_format><br />
<hard_return></hard_return><br />
<sequence>8</sequence><br />
</hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<hash_100016146031fe57480308160a76c2b3d692d0><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>9</sequence><br />
</hash_100016146031fe57480308160a76c2b3d692d0><br />
<hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>10</sequence><br />
</hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<hash_100016d56925ac40dd6abfc099b74370874e01><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>11</sequence><br />
</hash_100016d56925ac40dd6abfc099b74370874e01><br />
<hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>12</sequence><br />
</hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
</items><br />
<inputs><br />
<hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<name>Data Source [Waiting]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000160d9e710a70c26579ad7f5ba9074a0d07|hash_000016146031fe57480308160a76c2b3d692d0|hash_000016d0f7d613f0427ac1f149adfd8b912584|hash_000016d56925ac40dd6abfc099b74370874e01|hash_000016e3c1745f1ee0ceea123c83a82f6a9cd5</items><br />
</hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<name>Data Source [ERT]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000166b65aea95d4fe79da13d8f81be8f8a15</items><br />
</hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<hash_090016a00d6f19c821f807210f1c427cd17122><br />
<name>Data Source [Running]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_00001660c385532179d47b371dd26af21136f7|hash_00001625c74d47ed5f241cd5cb1fd21dea93c0|hash_000016c3fea60fba0b5de3cf9f496a3e14f38a|hash_000016fa1e55813d5021546ca2f0c19a3d0611|hash_000016dfd0d0c949e51b170dbcdcf13bbf8acb</items><br />
</hash_090016a00d6f19c821f807210f1c427cd17122><br />
<hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
<name>Data Source [Free]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_000016452ea7619f44f9240bd05e282ea820d5</items><br />
</hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
</inputs><br />
</hash_000016a634e798f897368bece7eeaac73081f6><br />
</cacti></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=File:Dq06.png&diff=4550
File:Dq06.png
2008-12-17T11:24:37Z
<p>Mendoza: </p>
<hr />
<div></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=File:Dq05.png&diff=4549
File:Dq05.png
2008-12-17T11:24:29Z
<p>Mendoza: </p>
<hr />
<div></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=File:Dq04.png&diff=4548
File:Dq04.png
2008-12-17T11:24:09Z
<p>Mendoza: </p>
<hr />
<div></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=File:Dq03.png&diff=4547
File:Dq03.png
2008-12-17T11:23:54Z
<p>Mendoza: </p>
<hr />
<div></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4546
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T11:16:46Z
<p>Mendoza: /* Grille */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
== /var/www/cacti/log/cacti.log ==<br />
<br />
* Time < Poller Interval<br />
* Hosts<br />
* DataSources<br />
* RRDsProcessed<br />
<br />
== rrdtool fetch ==<br />
<br />
rrdtool fetch /var/www/cacti/rra/<rrdfile>.rrd AVERAGE<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== Spine ==<br />
<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine<br />
<br />
= Extension =<br />
<br />
== Plugin Architecture ==<br />
<br />
Pour permettre l'ajout de plugins:<br />
<br />
* http://cactiusers.org/wiki/PluginArchitectureInstall<br />
<br />
== Aggregate ==<br />
<br />
Pour grouper plusieurs graphiques:<br />
<br />
* http://docs.cacti.net/?q=node/392<br />
<br />
== Disk I/O ==<br />
<br />
Templates pour les entrées / sorties des disques:<br />
<br />
* http://www.goldfisch.at/knowwiki/howtos/cacti#disk_io<br />
<br />
== removespikes ==<br />
<br />
Pour supprimer les "spikes" dans les rrds:<br />
<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.txt<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.tar.gz<br />
<br />
= Grille =<br />
<br />
Exemple d'utilisation des data queries:<br />
* http://docs.cacti.net/?q=node/284<br />
<br />
* En utilisant les plugins et des scripts on peut obtenir des graphiques personnalisées:<br />
[[Image:Dq01.png]]<br />
[[Image:Dq02.png]]<br />
<br />
== /var/www/cacti/scripts/query_CE_queues.pl ==<br />
Script (brouillon) pour obtenir l'information a propos de les queues d'une Computing Element gLite<br />
#!/usr/bin/perl<br />
use strict;<br />
use warnings;<br />
use Switch;<br />
my $target = $ARGV[0];<br />
my $action = $ARGV[1];<br />
my $base = 'Mds-Vo-name=resource,o=grid';<br />
my $filter = "GlueCEUniqueID=$target:*";<br />
my $attributes = 'GlueCEStateRunningJobs GlueCEStateWaitingJobs GlueCEInfoTotalCPUs GlueCEStateFreeCPUs GlueCEStateEstimatedResponseTime GlueCEName';<br />
my @ldif = qx(ldapsearch -x -h $target -p2170 -LLL -b $base $filter $attributes 2>/dev/null) or die;<br />
my @data;<br />
my $i = 0;<br />
my $j;<br />
foreach my $line (@ldif) {<br />
chomp($line);<br />
if ($line =~ /^dn/) {<br />
$i++;<br />
} elsif ( $line =~ /^$/) {<br />
# skip<br />
} elsif ( $line =~ /^ /) {<br />
# skip<br />
} else {<br />
my ($key, $value)=split(/: /,$line);<br />
$data[$i]{$key}=$value;<br />
}<br />
}<br />
my $n = scalar(@data);<br />
switch ($action) {<br />
case "index" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}\n";<br />
}<br />
}<br />
case "query" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}:$j->{$ARGV[2]}\n";<br />
}<br />
}<br />
case "get" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
if ( $j->{'GlueCEName'} eq $ARGV[3]){<br />
print "$j->{$ARGV[2]}";<br />
}<br />
}<br />
}<br />
else {<br />
die;<br />
}<br />
}<br />
<br />
== XML d'intégration ==<br />
<interface><br />
<name>Get CE queue information</name><br />
<script_path>perl |path_cacti|/scripts/query_CE_queues.pl</script_path><br />
<arg_prepend>|host_hostname|</arg_prepend><br />
<arg_index>index</arg_index><br />
<arg_query>query</arg_query><br />
<arg_get>get</arg_get><br />
<output_delimeter>:</output_delimeter><br />
<index_order>GlueCEName</index_order><br />
<index_order_type>alphanumeric</index_order_type><br />
<index_title_format>|chosen_order_field|</index_title_format><br />
<fields><br />
<GlueCEName><br />
<name>Queue</name><br />
<direction>input</direction><br />
<query_name>GlueCEName</query_name><br />
</GlueCEName><br />
<GlueCEStateFreeCPUs><br />
<name>Free</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateFreeCPUs</query_name><br />
</GlueCEStateFreeCPUs><br />
<GlueCEInfoTotalCPUs><br />
<name>Total</name><br />
<direction>output</direction><br />
<query_name>GlueCEInfoTotalCPUs</query_name><br />
</GlueCEInfoTotalCPUs><br />
<GlueCEStateEstimatedResponseTime><br />
<name>ERT</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateEstimatedResponseTime</query_name><br />
</GlueCEStateEstimatedResponseTime><br />
<GlueCEStateWaitingJobs><br />
<name>Waiting</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateWaitingJobs</query_name><br />
</GlueCEStateWaitingJobs><br />
<GlueCEStateRunningJobs><br />
<name>Running</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateRunningJobs</query_name><br />
</GlueCEStateRunningJobs><br />
<fields><br />
</interface><br />
<br />
== Data Query ==<br />
=== Data Query XML ===<br />
<cacti> <br />
<hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
<name>Computing Element queues</name><br />
<description>Computing Element queues</description><br />
<xml_path>&lt;path_cacti&gt;/resource/script_queries/CE_queues.xml</xml_path><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<graphs><br />
<hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
<name>Computing Element Queue</name><br />
<graph_template_id>hash_000016a634e798f897368bece7eeaac73081f6</graph_template_id><br />
<rrd><br />
<item_000><br />
<snmp_field_name>GlueCEInfoTotalCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016ef38e0fcb85d21995f3eda4984cb5c04</data_template_rrd_id><br />
</item_000><br />
<item_001><br />
<snmp_field_name>GlueCEStateEstimatedResponseTime</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001610e49122694f56ff5d99799888a8a4d7</data_template_rrd_id><br />
</item_001><br />
<item_002><br />
<snmp_field_name>GlueCEStateWaitingJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</data_template_rrd_id><br />
</item_002><br />
<item_003><br />
<snmp_field_name>GlueCEStateFreeCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016bbcb3088736558f6689336d05fb1aff7</data_template_rrd_id><br />
</item_003><br />
<item_004><br />
<snmp_field_name>GlueCEStateRunningJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001629c804736fcbccf55f085a1c32049c4d</data_template_rrd_id><br />
</item_004><br />
</rrd><br />
<sv_graph><br />
</sv_graph><br />
<sv_data_source><br />
</sv_data_source><br />
</hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
</graphs><br />
</hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
</cacti><br />
<br />
== Data Template ==<br />
=== Data Template XML ===<br />
<cacti> <br />
<hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
<name>Computer Element Queue</name><br />
<ds><br />
<t_name></t_name><br />
<name>|host_description| - Queue - |query_GlueCEName|</name><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<t_rra_id></t_rra_id><br />
<t_rrd_step></t_rrd_step><br />
<rrd_step>300</rrd_step><br />
<t_active></t_active><br />
<active>on</active><br />
<rra_items>hash_150016c21df5178e5c955013591239eb0afd46|hash_1500160d9c0af8b8acdc7807943937b3208e29|hash_1500166fc2d038fb42950138b0ce3e9874cc60|hash_150016e36f3adb9f152adfa5dc50fd2b23337e|hash_150016283ea2bf1634d92ce081ec82a634f513|hash_150016f044e9143dda57b227728577faf08e7c</rra_items><br />
</ds><br />
<items><br />
<hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Total</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>ERT</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Waiting</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Free</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<hash_08001629c804736fcbccf55f085a1c32049c4d><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Running</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001629c804736fcbccf55f085a1c32049c4d><br />
</items><br />
<data><br />
<item_000><br />
<data_input_field_id>hash_070016d39556ecad6166701bfb0e28c5a11108</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_000><br />
<item_001><br />
<data_input_field_id>hash_0700163b7caa46eb809fc238de6ef18b6e10d5</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_001><br />
<item_002><br />
<data_input_field_id>hash_07001674af2e42dc12956c4817c2ef5d9983f9</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_002><br />
</data><br />
</hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
</cacti><br />
<br />
== Graph Template ==<br />
=== Graph Template XML ===<br />
<cacti> <br />
<hash_000016a634e798f897368bece7eeaac73081f6><br />
<name>Computing Element Queue</name><br />
<graph><br />
<t_title></t_title><br />
<title>|host_description| - Queue - |query_GlueCEName|</title><br />
<t_image_format_id></t_image_format_id><br />
<image_format_id>1</image_format_id><br />
<t_height></t_height><br />
<height>120</height><br />
<t_width></t_width><br />
<width>720</width><br />
<t_slope_mode></t_slope_mode><br />
<slope_mode></slope_mode><br />
<t_auto_scale></t_auto_scale><br />
<auto_scale>on</auto_scale><br />
<t_auto_scale_opts></t_auto_scale_opts><br />
<auto_scale_opts>4</auto_scale_opts><br />
<t_auto_scale_log></t_auto_scale_log><br />
<auto_scale_log></auto_scale_log><br />
<t_scale_log_units></t_scale_log_units><br />
<scale_log_units></scale_log_units><br />
<t_auto_scale_rigid></t_auto_scale_rigid><br />
<auto_scale_rigid></auto_scale_rigid><br />
<t_auto_padding></t_auto_padding><br />
<auto_padding>on</auto_padding><br />
<t_export></t_export><br />
<export>on</export><br />
<t_upper_limit></t_upper_limit><br />
<upper_limit>1</upper_limit><br />
<t_lower_limit></t_lower_limit><br />
<lower_limit>0</lower_limit><br />
<t_base_value></t_base_value><br />
<base_value>1000</base_value><br />
<t_unit_value></t_unit_value><br />
<unit_value></unit_value><br />
<t_unit_exponent_value></t_unit_exponent_value><br />
<unit_exponent_value></unit_exponent_value><br />
<t_vertical_label></t_vertical_label><br />
<vertical_label></vertical_label><br />
</graph><br />
<items><br />
<hash_10001660c385532179d47b371dd26af21136f7><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>00FF00</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Running</text_format><br />
<hard_return></hard_return><br />
<sequence>1</sequence><br />
</hash_10001660c385532179d47b371dd26af21136f7><br />
<hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<task_item_id>hash_080016bbcb3088736558f6689336d05fb1aff7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Free:</text_format><br />
<hard_return></hard_return><br />
<sequence>2</sequence><br />
</hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>3</sequence><br />
</hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>4</sequence><br />
</hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>5</sequence><br />
</hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>6</sequence><br />
</hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>FF0000</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Waiting</text_format><br />
<hard_return></hard_return><br />
<sequence>7</sequence><br />
</hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<task_item_id>hash_08001610e49122694f56ff5d99799888a8a4d7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format> ERT:</text_format><br />
<hard_return></hard_return><br />
<sequence>8</sequence><br />
</hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<hash_100016146031fe57480308160a76c2b3d692d0><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>9</sequence><br />
</hash_100016146031fe57480308160a76c2b3d692d0><br />
<hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>10</sequence><br />
</hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<hash_100016d56925ac40dd6abfc099b74370874e01><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>11</sequence><br />
</hash_100016d56925ac40dd6abfc099b74370874e01><br />
<hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>12</sequence><br />
</hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
</items><br />
<inputs><br />
<hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<name>Data Source [Waiting]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000160d9e710a70c26579ad7f5ba9074a0d07|hash_000016146031fe57480308160a76c2b3d692d0|hash_000016d0f7d613f0427ac1f149adfd8b912584|hash_000016d56925ac40dd6abfc099b74370874e01|hash_000016e3c1745f1ee0ceea123c83a82f6a9cd5</items><br />
</hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<name>Data Source [ERT]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000166b65aea95d4fe79da13d8f81be8f8a15</items><br />
</hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<hash_090016a00d6f19c821f807210f1c427cd17122><br />
<name>Data Source [Running]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_00001660c385532179d47b371dd26af21136f7|hash_00001625c74d47ed5f241cd5cb1fd21dea93c0|hash_000016c3fea60fba0b5de3cf9f496a3e14f38a|hash_000016fa1e55813d5021546ca2f0c19a3d0611|hash_000016dfd0d0c949e51b170dbcdcf13bbf8acb</items><br />
</hash_090016a00d6f19c821f807210f1c427cd17122><br />
<hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
<name>Data Source [Free]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_000016452ea7619f44f9240bd05e282ea820d5</items><br />
</hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
</inputs><br />
</hash_000016a634e798f897368bece7eeaac73081f6><br />
</cacti></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=File:Dq02.png&diff=4545
File:Dq02.png
2008-12-17T11:03:48Z
<p>Mendoza: </p>
<hr />
<div></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=File:Dq01.png&diff=4544
File:Dq01.png
2008-12-17T10:58:33Z
<p>Mendoza: </p>
<hr />
<div></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4543
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T10:50:32Z
<p>Mendoza: /* Grille */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
== /var/www/cacti/log/cacti.log ==<br />
<br />
* Time < Poller Interval<br />
* Hosts<br />
* DataSources<br />
* RRDsProcessed<br />
<br />
== rrdtool fetch ==<br />
<br />
rrdtool fetch /var/www/cacti/rra/<rrdfile>.rrd AVERAGE<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== Spine ==<br />
<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine<br />
<br />
= Extension =<br />
<br />
== Plugin Architecture ==<br />
<br />
Pour permettre l'ajout de plugins:<br />
<br />
* http://cactiusers.org/wiki/PluginArchitectureInstall<br />
<br />
== Aggregate ==<br />
<br />
Pour grouper plusieurs graphiques:<br />
<br />
* http://docs.cacti.net/?q=node/392<br />
<br />
== Disk I/O ==<br />
<br />
Templates pour les entrées / sorties des disques:<br />
<br />
* http://www.goldfisch.at/knowwiki/howtos/cacti#disk_io<br />
<br />
== removespikes ==<br />
<br />
Pour supprimer les "spikes" dans les rrds:<br />
<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.txt<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.tar.gz<br />
<br />
= Grille =<br />
<br />
Exemple d'utilisation des data queries:<br />
<br />
== /var/www/cacti/scripts/query_CE_queues.pl ==<br />
Script (brouillon) pour obtenir l'information a propos de les queues d'une Computing Element gLite<br />
#!/usr/bin/perl<br />
use strict;<br />
use warnings;<br />
use Switch;<br />
my $target = $ARGV[0];<br />
my $action = $ARGV[1];<br />
my $base = 'Mds-Vo-name=resource,o=grid';<br />
my $filter = "GlueCEUniqueID=$target:*";<br />
my $attributes = 'GlueCEStateRunningJobs GlueCEStateWaitingJobs GlueCEInfoTotalCPUs GlueCEStateFreeCPUs GlueCEStateEstimatedResponseTime GlueCEName';<br />
my @ldif = qx(ldapsearch -x -h $target -p2170 -LLL -b $base $filter $attributes 2>/dev/null) or die;<br />
my @data;<br />
my $i = 0;<br />
my $j;<br />
foreach my $line (@ldif) {<br />
chomp($line);<br />
if ($line =~ /^dn/) {<br />
$i++;<br />
} elsif ( $line =~ /^$/) {<br />
# skip<br />
} elsif ( $line =~ /^ /) {<br />
# skip<br />
} else {<br />
my ($key, $value)=split(/: /,$line);<br />
$data[$i]{$key}=$value;<br />
}<br />
}<br />
my $n = scalar(@data);<br />
switch ($action) {<br />
case "index" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}\n";<br />
}<br />
}<br />
case "query" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
print "$j->{'GlueCEName'}:$j->{$ARGV[2]}\n";<br />
}<br />
}<br />
case "get" {<br />
for($i=1;$i<$n;$i++) {<br />
$j = $data[$i];<br />
if ( $j->{'GlueCEName'} eq $ARGV[3]){<br />
print "$j->{$ARGV[2]}";<br />
}<br />
}<br />
}<br />
else {<br />
die;<br />
}<br />
}<br />
<br />
== XML d'intégration ==<br />
<interface><br />
<name>Get CE queue information</name><br />
<script_path>perl |path_cacti|/scripts/query_CE_queues.pl</script_path><br />
<arg_prepend>|host_hostname|</arg_prepend><br />
<arg_index>index</arg_index><br />
<arg_query>query</arg_query><br />
<arg_get>get</arg_get><br />
<output_delimeter>:</output_delimeter><br />
<index_order>GlueCEName</index_order><br />
<index_order_type>alphanumeric</index_order_type><br />
<index_title_format>|chosen_order_field|</index_title_format><br />
<fields><br />
<GlueCEName><br />
<name>Queue</name><br />
<direction>input</direction><br />
<query_name>GlueCEName</query_name><br />
</GlueCEName><br />
<GlueCEStateFreeCPUs><br />
<name>Free</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateFreeCPUs</query_name><br />
</GlueCEStateFreeCPUs><br />
<GlueCEInfoTotalCPUs><br />
<name>Total</name><br />
<direction>output</direction><br />
<query_name>GlueCEInfoTotalCPUs</query_name><br />
</GlueCEInfoTotalCPUs><br />
<GlueCEStateEstimatedResponseTime><br />
<name>ERT</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateEstimatedResponseTime</query_name><br />
</GlueCEStateEstimatedResponseTime><br />
<GlueCEStateWaitingJobs><br />
<name>Waiting</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateWaitingJobs</query_name><br />
</GlueCEStateWaitingJobs><br />
<GlueCEStateRunningJobs><br />
<name>Running</name><br />
<direction>output</direction><br />
<query_name>GlueCEStateRunningJobs</query_name><br />
</GlueCEStateRunningJobs><br />
<fields><br />
</interface><br />
<br />
== Data Query XML ==<br />
<cacti> <br />
<hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
<name>Computing Element queues</name><br />
<description>Computing Element queues</description><br />
<xml_path>&lt;path_cacti&gt;/resource/script_queries/CE_queues.xml</xml_path><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<graphs><br />
<hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
<name>Computing Element Queue</name><br />
<graph_template_id>hash_000016a634e798f897368bece7eeaac73081f6</graph_template_id><br />
<rrd><br />
<item_000><br />
<snmp_field_name>GlueCEInfoTotalCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016ef38e0fcb85d21995f3eda4984cb5c04</data_template_rrd_id><br />
</item_000><br />
<item_001><br />
<snmp_field_name>GlueCEStateEstimatedResponseTime</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001610e49122694f56ff5d99799888a8a4d7</data_template_rrd_id><br />
</item_001><br />
<item_002><br />
<snmp_field_name>GlueCEStateWaitingJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</data_template_rrd_id><br />
</item_002><br />
<item_003><br />
<snmp_field_name>GlueCEStateFreeCPUs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_080016bbcb3088736558f6689336d05fb1aff7</data_template_rrd_id><br />
</item_003><br />
<item_004><br />
<snmp_field_name>GlueCEStateRunningJobs</snmp_field_name><br />
<data_template_id>hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4</data_template_id><br />
<data_template_rrd_id>hash_08001629c804736fcbccf55f085a1c32049c4d</data_template_rrd_id><br />
</item_004><br />
</rrd><br />
<sv_graph><br />
</sv_graph><br />
<sv_data_source><br />
</sv_data_source><br />
</hash_1100164f193eb62b5e9cf98c55daaa1cceccfd><br />
</graphs><br />
</hash_0400168d4b0cca81d487d54968ca0d3aa894e8><br />
</cacti><br />
<br />
== Data Template XML ==<br />
<cacti> <br />
<hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
<name>Computer Element Queue</name><br />
<ds><br />
<t_name></t_name><br />
<name>|host_description| - Queue - |query_GlueCEName|</name><br />
<data_input_id>hash_03001680e9e4c4191a5da189ae26d0e237f015</data_input_id><br />
<t_rra_id></t_rra_id><br />
<t_rrd_step></t_rrd_step><br />
<rrd_step>300</rrd_step><br />
<t_active></t_active><br />
<active>on</active><br />
<rra_items>hash_150016c21df5178e5c955013591239eb0afd46|hash_1500160d9c0af8b8acdc7807943937b3208e29|hash_1500166fc2d038fb42950138b0ce3e9874cc60|hash_150016e36f3adb9f152adfa5dc50fd2b23337e|hash_150016283ea2bf1634d92ce081ec82a634f513|hash_150016f044e9143dda57b227728577faf08e7c</rra_items><br />
</ds><br />
<items><br />
<hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Total</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016ef38e0fcb85d21995f3eda4984cb5c04><br />
<hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>ERT</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001610e49122694f56ff5d99799888a8a4d7><br />
<hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Waiting</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_0800164d9f3e87d54e4b2fed9dd793ebf23505><br />
<hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Free</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_080016bbcb3088736558f6689336d05fb1aff7><br />
<hash_08001629c804736fcbccf55f085a1c32049c4d><br />
<t_data_source_name></t_data_source_name><br />
<data_source_name>Running</data_source_name><br />
<t_rrd_minimum></t_rrd_minimum><br />
<rrd_minimum>0</rrd_minimum><br />
<t_rrd_maximum></t_rrd_maximum><br />
<rrd_maximum>U</rrd_maximum><br />
<t_data_source_type_id></t_data_source_type_id><br />
<data_source_type_id>1</data_source_type_id><br />
<t_rrd_heartbeat></t_rrd_heartbeat><br />
<rrd_heartbeat>600</rrd_heartbeat><br />
<t_data_input_field_id></t_data_input_field_id><br />
<data_input_field_id>0</data_input_field_id><br />
</hash_08001629c804736fcbccf55f085a1c32049c4d><br />
</items><br />
<data><br />
<item_000><br />
<data_input_field_id>hash_070016d39556ecad6166701bfb0e28c5a11108</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_000><br />
<item_001><br />
<data_input_field_id>hash_0700163b7caa46eb809fc238de6ef18b6e10d5</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_001><br />
<item_002><br />
<data_input_field_id>hash_07001674af2e42dc12956c4817c2ef5d9983f9</data_input_field_id><br />
<t_value>on</t_value><br />
<value></value><br />
</item_002><br />
</data><br />
</hash_0100160c1cc1d1178b8cf8cf5876bc8de87cf4><br />
</cacti><br />
<br />
== Graph Template XML ==<br />
<cacti> <br />
<hash_000016a634e798f897368bece7eeaac73081f6><br />
<name>Computing Element Queue</name><br />
<graph><br />
<t_title></t_title><br />
<title>|host_description| - Queue - |query_GlueCEName|</title><br />
<t_image_format_id></t_image_format_id><br />
<image_format_id>1</image_format_id><br />
<t_height></t_height><br />
<height>120</height><br />
<t_width></t_width><br />
<width>720</width><br />
<t_slope_mode></t_slope_mode><br />
<slope_mode></slope_mode><br />
<t_auto_scale></t_auto_scale><br />
<auto_scale>on</auto_scale><br />
<t_auto_scale_opts></t_auto_scale_opts><br />
<auto_scale_opts>4</auto_scale_opts><br />
<t_auto_scale_log></t_auto_scale_log><br />
<auto_scale_log></auto_scale_log><br />
<t_scale_log_units></t_scale_log_units><br />
<scale_log_units></scale_log_units><br />
<t_auto_scale_rigid></t_auto_scale_rigid><br />
<auto_scale_rigid></auto_scale_rigid><br />
<t_auto_padding></t_auto_padding><br />
<auto_padding>on</auto_padding><br />
<t_export></t_export><br />
<export>on</export><br />
<t_upper_limit></t_upper_limit><br />
<upper_limit>1</upper_limit><br />
<t_lower_limit></t_lower_limit><br />
<lower_limit>0</lower_limit><br />
<t_base_value></t_base_value><br />
<base_value>1000</base_value><br />
<t_unit_value></t_unit_value><br />
<unit_value></unit_value><br />
<t_unit_exponent_value></t_unit_exponent_value><br />
<unit_exponent_value></unit_exponent_value><br />
<t_vertical_label></t_vertical_label><br />
<vertical_label></vertical_label><br />
</graph><br />
<items><br />
<hash_10001660c385532179d47b371dd26af21136f7><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>00FF00</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Running</text_format><br />
<hard_return></hard_return><br />
<sequence>1</sequence><br />
</hash_10001660c385532179d47b371dd26af21136f7><br />
<hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<task_item_id>hash_080016bbcb3088736558f6689336d05fb1aff7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Free:</text_format><br />
<hard_return></hard_return><br />
<sequence>2</sequence><br />
</hash_100016452ea7619f44f9240bd05e282ea820d5><br />
<hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>3</sequence><br />
</hash_10001625c74d47ed5f241cd5cb1fd21dea93c0><br />
<hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>4</sequence><br />
</hash_100016c3fea60fba0b5de3cf9f496a3e14f38a><br />
<hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>5</sequence><br />
</hash_100016fa1e55813d5021546ca2f0c19a3d0611><br />
<hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<task_item_id>hash_08001629c804736fcbccf55f085a1c32049c4d</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>6</sequence><br />
</hash_100016dfd0d0c949e51b170dbcdcf13bbf8acb><br />
<hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>FF0000</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>4</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Waiting</text_format><br />
<hard_return></hard_return><br />
<sequence>7</sequence><br />
</hash_1000160d9e710a70c26579ad7f5ba9074a0d07><br />
<hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<task_item_id>hash_08001610e49122694f56ff5d99799888a8a4d7</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format> ERT:</text_format><br />
<hard_return></hard_return><br />
<sequence>8</sequence><br />
</hash_1000166b65aea95d4fe79da13d8f81be8f8a15><br />
<hash_100016146031fe57480308160a76c2b3d692d0><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>4</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Current:</text_format><br />
<hard_return></hard_return><br />
<sequence>9</sequence><br />
</hash_100016146031fe57480308160a76c2b3d692d0><br />
<hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>1</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Average:</text_format><br />
<hard_return></hard_return><br />
<sequence>10</sequence><br />
</hash_100016d0f7d613f0427ac1f149adfd8b912584><br />
<hash_100016d56925ac40dd6abfc099b74370874e01><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>3</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Max:</text_format><br />
<hard_return></hard_return><br />
<sequence>11</sequence><br />
</hash_100016d56925ac40dd6abfc099b74370874e01><br />
<hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
<task_item_id>hash_0800164d9f3e87d54e4b2fed9dd793ebf23505</task_item_id><br />
<color_id>0</color_id><br />
<alpha>FF</alpha><br />
<graph_type_id>9</graph_type_id><br />
<consolidation_function_id>2</consolidation_function_id><br />
<cdef_id>0</cdef_id><br />
<value></value><br />
<gprint_id>hash_06001619414480d6897c8731c7dc6c5310653e</gprint_id><br />
<text_format>Min:</text_format><br />
<hard_return>on</hard_return><br />
<sequence>12</sequence><br />
</hash_100016e3c1745f1ee0ceea123c83a82f6a9cd5><br />
</items><br />
<inputs><br />
<hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<name>Data Source [Waiting]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000160d9e710a70c26579ad7f5ba9074a0d07|hash_000016146031fe57480308160a76c2b3d692d0|hash_000016d0f7d613f0427ac1f149adfd8b912584|hash_000016d56925ac40dd6abfc099b74370874e01|hash_000016e3c1745f1ee0ceea123c83a82f6a9cd5</items><br />
</hash_090016e5c6d1e07fc28d04f13a70d2a52ed82a><br />
<hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<name>Data Source [ERT]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_0000166b65aea95d4fe79da13d8f81be8f8a15</items><br />
</hash_090016a15ef2b79dfc4ab1765c10b1c52f7bfc><br />
<hash_090016a00d6f19c821f807210f1c427cd17122><br />
<name>Data Source [Running]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_00001660c385532179d47b371dd26af21136f7|hash_00001625c74d47ed5f241cd5cb1fd21dea93c0|hash_000016c3fea60fba0b5de3cf9f496a3e14f38a|hash_000016fa1e55813d5021546ca2f0c19a3d0611|hash_000016dfd0d0c949e51b170dbcdcf13bbf8acb</items><br />
</hash_090016a00d6f19c821f807210f1c427cd17122><br />
<hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
<name>Data Source [Free]</name><br />
<description></description><br />
<column_name>task_item_id</column_name><br />
<items>hash_000016452ea7619f44f9240bd05e282ea820d5</items><br />
</hash_09001691371f8e47f9fb6b9a8fc8e3611a2a82><br />
</inputs><br />
</hash_000016a634e798f897368bece7eeaac73081f6><br />
</cacti></div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4542
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T10:24:22Z
<p>Mendoza: /* Extension */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
== /var/www/cacti/log/cacti.log ==<br />
<br />
* Time < Poller Interval<br />
* Hosts<br />
* DataSources<br />
* RRDsProcessed<br />
<br />
== rrdtool fetch ==<br />
<br />
rrdtool fetch /var/www/cacti/rra/<rrdfile>.rrd AVERAGE<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== Spine ==<br />
<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine<br />
<br />
= Extension =<br />
<br />
== Plugin Architecture ==<br />
<br />
Pour permettre l'ajout de plugins:<br />
<br />
* http://cactiusers.org/wiki/PluginArchitectureInstall<br />
<br />
== Aggregate ==<br />
<br />
Pour grouper plusieurs graphiques:<br />
<br />
* http://docs.cacti.net/?q=node/392<br />
<br />
== Disk I/O ==<br />
<br />
Templates pour les entrées / sorties des disques:<br />
<br />
* http://www.goldfisch.at/knowwiki/howtos/cacti#disk_io<br />
<br />
== removespikes ==<br />
<br />
Pour supprimer les "spikes" dans les rrds:<br />
<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.txt<br />
* http://oss.oetiker.ch/rrdtool/pub/contrib/removespikes-20080226-mkn.tar.gz<br />
<br />
= Grille =</div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4541
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T09:29:27Z
<p>Mendoza: </p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
== /var/www/cacti/log/cacti.log ==<br />
<br />
* Time < Poller Interval<br />
* Hosts<br />
* DataSources<br />
* RRDsProcessed<br />
<br />
== rrdtool fetch ==<br />
<br />
rrdtool fetch /var/www/cacti/rra/<rrdfile>.rrd AVERAGE<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== Spine ==<br />
<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine<br />
<br />
= Extension =<br />
<br />
= Grille =</div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4540
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T09:15:30Z
<p>Mendoza: /* spine */</p>
<hr />
<div>== Spine ==<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine</div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4539
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T09:14:57Z
<p>Mendoza: </p>
<hr />
<div>== spine ==<br />
Poller alternatif optimisé.<br />
* Site: http://www.cacti.net/spine_info.php<br />
* Téléchargement: http://www.cacti.net/spine_download.php<br />
* Installation: http://www.cacti.net/spine_install.php<br />
<br />
=== Pré-requis ===<br />
* net-snmp-devel<br />
* mysql<br />
* mysql-devel<br />
* openssl-devel<br />
<br />
=== Installation ===<br />
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz<br />
tar xvzf cacti-spine-0.8.7a.tar.gz<br />
cd spine-0.8.7a<br />
./configure<br />
make<br />
make install<br />
<br />
* Editer /usr/local/spine/spine.conf<br />
* Cacti -> Console -> Settings -> Paths -> Spine Poller File Path<br />
/usr/local/spine/spine<br />
* Cacti -> Console -> Settings -> Poller -> Poller Type<br />
spine</div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4538
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T08:21:39Z
<p>Mendoza: /* Dépannage */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
== /var/www/cacti/log/cacti.log ==<br />
<br />
* Time < Poller Interval<br />
* Hosts<br />
* DataSources<br />
* RRDsProcessed<br />
<br />
== rrdtool fetch ==<br />
<br />
rrdtool fetch /var/www/cacti/rra/<rrdfile>.rrd AVERAGE<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== spine ==<br />
<br />
= Extension =<br />
<br />
= Grille =</div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4537
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T08:14:37Z
<p>Mendoza: </p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done<br />
<br />
= Dépannage =<br />
<br />
= Optimisation =<br />
<br />
== Migrer vers InnoDB ==<br />
Pour pouvoir utiliser des locks par ligne<br />
<br />
== Créer des indexes ==<br />
http://bugs.cacti.net/view.php?id=1333<br />
create index `data_template_data_id` ON `data_input_data` (`data_template_data_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON data_local (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_data_source_name` ON data_template_rrd (`local_data_id`,`data_source_name`);<br />
create index `graph_template_id_local_graph_id` ON graph_templates_item (`graph_template_id`,`local_graph_id`);<br />
create index `local_graph_template_item_id` ON graph_templates_item (`local_graph_template_item_id`);<br />
create index `host_id_snmp_query_id_snmp_index` ON host_snmp_cache (`host_id`,`snmp_query_id`,`snmp_index`);<br />
create index `local_data_id_rrd_path` ON poller_item (`local_data_id`,`rrd_path`);<br />
create index `host_id_rrd_next_step` ON poller_item (`host_id`,`rrd_next_step`);<br />
create index order_key3 on graph_tree_items (order_key(3));<br />
create index order_key6 on graph_tree_items (order_key(6));<br />
create index order_key9 on graph_tree_items (order_key(9));<br />
create index host_id_snmp_query_id ON host_snmp_cache (host_id,snmp_query_id);<br />
create index host_id_snmp_port ON poller_item (host_id,snmp_port);<br />
<br />
== spine ==<br />
<br />
= Extension =<br />
<br />
= Grille =</div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4536
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T08:00:45Z
<p>Mendoza: /* Ajout des nouveaux devices en utilisant les commandes en ligne */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un device (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done</div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4535
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-17T07:56:12Z
<p>Mendoza: /* Installation */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
=== Config php ===<br />
Modifier le fichier /etc/php.ini:<br />
memory_limit = 128M<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un decvice (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done</div>
Mendoza
http://lcg.in2p3.fr/wiki/index.php?title=LCG-FR_/_SA1-FR_Monitoring_WG_CACTI&diff=4529
LCG-FR / SA1-FR Monitoring WG CACTI
2008-12-16T11:34:20Z
<p>Mendoza: /* Installation */</p>
<hr />
<div>= Installation de CACTI =<br />
<br />
http://www.cacti.net/<br />
<br />
== Installation ==<br />
Suivre le manuel très bien fait:<br />
http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
=== Installation des RPMs ===<br />
<br />
Un certian nombre de RPMs utiles se trouvent sur le repositary du LAL:<br />
<br />
wget http://quattorsrv.lal.in2p3.fr/packages/cacti/cacti-0.8.7b-2.el4.rf.noarch.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/php-snmp-4.3.9-3.22.9.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/\<br />
mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
wget http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm<br />
<br />
rpm -ivh http://quattorsrv.lal.in2p3.fr/packages/os/sl460-x86_64/base/SL/RPMS/perl-DBD-MySQL-2.9004-3.1.x86_64.rpm mysql-server-4.1.20-3.RHEL4.1.el4_6.1.x86_64.rpm<br />
<br />
=== Config Mysql ===<br />
Se référer a la Doc: http://www.cacti.net/downloads/docs/pdf/manual.pdf<br />
<br />
Ceci n'est qu'un copier/coller des actions faites sur un site:<br />
/etc/init.d/mysqld start<br />
mysqladmin --user=root password *yourpasswd*<br />
mysqladmin --user=root create cacti -p<br />
mysql cacti -p < /var/www/cacti/cacti.sql<br />
<br />
Modifier <br />
/var/www/cacti/include/config.php<br />
<br />
=== Config http ===<br />
<br />
Modifier le fichier:<br />
/etc/httpd/conf.d/cacti.conf<br />
<br />
<br />
=== Vérifier que snmp V1 répond ===<br />
<br />
snmpwalk -v 1 -c public 'your switch'<br />
<br />
= Configuration =<br />
== Ajout des nouveaux devices en utilisant les commandes en ligne ==<br />
Cela permet d'automatiser la configuration de plusieurs machines:<br />
<br />
http://www.cacti.net/downloads/docs/html/scripts.html<br />
<br />
Ajouter un decvice (attention utiliser template 1 pour pouvoir recuperer les stats des interfaces)<br />
for i in $(cat /root/CACTI/wnlistplat); do php -q add_device.php --avail=ping --ping_method=udp --ping_retries=1 \<br />
--description=$i --ip=$i --template=1 --community="public" ; done<br />
<br />
Ajouter les devices dans un tree:<br />
for i in $(seq 83 147); do php -q add_tree.php --type=node --node-type=host --tree-id=4 --host-id=$i; done<br />
<br />
<br />
Ajouter les graphes (type 'ds') des interfaces pour tous les devices:<br />
for i in $(seq 83 147); do php -q add_graphs.php --host-id=$i --graph-type=ds --snmp-query-id=1 \<br />
--snmp-query- type-id=13 --snmp-field=ifOperStatus --snmp-value=Up --graph-template-id=2 ; done<br />
<br />
Ajouter les graphes cg linux<br />
for i in $(seq 83 147); do for j in 7 8 9 10 12 ; do php -q add_graphs.php --host-id=$i \<br />
--snmp-query-id=6 --graph- template-id=$j --graph-type=cg; done; done</div>
Mendoza