check_esx3 devient check_vmware_api
Posted by NiTRo | Filed under News, VMware
Il fallait bien que ça arrive, check_esx3 ça commençait à faire vieillot, limite vintage. Alors que nous nous étions tourné vers une solution alternative, nous revenons de nouveau vers ce plugin nagios qui commence à compter quelques sérieux contributeurs et nous nous sommes retroussé les manches (très haut car en perl on y connait rien…) pour ajouter quelques features et faire un plugin cacti qui ne nécessite plus de créer un device par cluster.
Nous avons donc fait 2 fichiers xml (check_vmware_cluster.xml et check_vmware_datastore.xml à copier dans resource/script_queries) pour la partie “data queries” et un script bash (check_esx3_helper.sh à copier dans scripts) pour faire l’intermédiaire entre cacti et le script check_vmware_api.pl (à copier dans scripts).
Selon la version de votre vCenter, il est possible que vous ayez à tuner la variable $vi_timeshift dans check_esx3_helper.sh (il nous a fallu parfois jongler entre 300 et 600) à cause d’un bug vmware.
Une fois les fichiers copiés, il faut importer les templates (cacti_data_query_vmware_vpx_-_cluster_usage.xml et cacti_data_query_vmware_vpx_-_vmfs_usage.xml) dans cacti et les associer à votre vCenter :
Nous avons utilisé les credentials snmp v3 pour éviter de mettre un login/password dans les scripts donc si vous utiliser snmp sur votre vCenter, créez un compte équivalent ou créez un device dédié.
En ce qui concerne l’autentification, le fichier de session /tmp/check_esx3_session.dat, généré automatiquement, évite les logon/logoff à répétition et soulage le proxy mob.
Il ne vous reste plus qu’à choisir les clusters et les datastores que vous voulez monitorer (la dénomination VMFS est uniquement cosmétique, les datastores NFS sont évidement supportés) :
Vous pouvez ensuite regrouper vos graph par cluster :
Les graph on une fonction de remplissage automatique qui reprend la dernière bonne valeur connue pour éviter les vilains trous qui ne plaisent pas aux managers…
July 3rd, 2012 at 15:49
[...] MAJ 03/07/2012 : Un nouveau plugin est disponible [...]
July 3rd, 2012 at 19:50
Salut Nitro,
Merci pour cette info. Le script a donc totalement été porté/adapté pour vSphere 5 ?
Qu’en est-il de la consommation de ressources comparé à check_esx3 et/ou check_vmware ? As-tu vu une nette amélioration ?
Merci pour ton retour.
Seb.
July 3rd, 2012 at 20:03
Salut,
Oui, 100% compatible vSphere 5 (les screenshots viennent d’infras 4.1 et 5.0) et les temps sont nettement meilleur grâce au fichier de session (qui marche nettement mieux quand le ticket expire).
Pour te donner un ordre d’idée, avec un cacti 0.8.8a (obligé pour le multi tread vu que c’est le même host) on check 22 clusters et 80 datastore en 170 sec
July 3rd, 2012 at 20:11
Les perf semblent vraiment fantastiques ! Dès que je test ça sur notre infra, qui est beaucoup plus modeste que la tienne
En tout cas merci beaucoup pour ton article et cette news.
Seb.
July 5th, 2012 at 9:38
Très joli !
Je suis en train de l’installer, tout semble bon mais les datasoruces ne sont pas alimentées et les graphes non crées. Le poller cache contient pourtant des appels qui semblent valides:
Script: sh /var/www/cacti/scripts/check_esx3_helper.sh 10.102.6.24 login pass get CPU Bench
RRD: /var/www/cacti/rra/vcenter_cpu_usage_415.rrd
Le rrd n’existe pas et le script me retourne:
CHECK_VMWARE_API.PL CRITICAL – Cluster “Bench” does not exist
Pourtant, il existe bien….
Une idée ?
July 5th, 2012 at 12:05
“sh /var/www/cacti/scripts/check_esx3_helper.sh 10.102.6.24 login pass clusterindex” vous renvoi quoi ?
July 5th, 2012 at 13:17
Ce nouveau plugin permet il de monitorer les pools de ressources?
Le gain de perf a l’air intéressant dans tous les cas =)
July 5th, 2012 at 13:20
non mais cela ne saurait tarder
July 5th, 2012 at 13:26
Voila ce qu’il me donne:
cacti:/var/www/cacti/rra# sh /var/www/cacti/scripts/check_esx3_helper.sh 10.102.6.24 login pass clusterindex
Bench Farm
R710 Farm
A3CY
July 5th, 2012 at 13:28
Je vais être forcer de tester ça
July 5th, 2012 at 13:39
C’est à cause de l’espace dans le nom du cluster et malheureusement je ne vais pas pouvoir y faire grand chose car c’est coté cacti que ça se joue sur ce point…
July 5th, 2012 at 14:22
Ok. J’ai enlenvé les espaces, supprimé/ajouté mon vCenter a nouveau et j’ai le même résultat.
cacti:/var/www/cacti/rra# sh /var/www/cacti/scripts/check_esx3_helper.sh 10.102.6.24 log pass clusterindex
BenchFarm
R710Farm
Autre chose à vérifier ?
July 5th, 2012 at 14:24
qu’avez vous lorsque vous cliquez sur “Verbose Query” dans le device (votre vcenter dans le cas présent) ?
July 5th, 2012 at 14:27
Le messsage d’erreur a changé au niveau du cache:
cacti:/var/www/cacti/rra# sh /var/www/cacti/scripts/check_esx3_helper.sh 10.102.6.24 Administrator adminw2k. get CPU BenchFarm
CHECK_VMWARE_API.PL CRITICAL -
SOAP Fault:
———–
Fault string: A specified parameter was not correct.
querySpec.interval
Fault detail: InvalidArgumentFault
Quant au Verbose Query, il est bon de mon point de vue:
Running data query [19].
+ Found type = ‘4′ [Script Query].
+ Found data query XML file at ‘/var/www/cacti/resource/script_queries/check_vmware_cluster.xml’
+ XML file parsed ok.
+ missing in XML file, ‘Index Count Changed’ emulated by counting arg_index entries
+ Executing script for list of indexes ’sh /var/www/cacti/scripts/check_esx3_helper.sh 10.102.6.24 Administrator adminw2k. clusterindex’ Index Count: 2
+ Found index: BenchFarm
+ Found index: R710Farm
+ Executing script query ’sh /var/www/cacti/scripts/check_esx3_helper.sh 10.102.6.24 log pass query clustername’
+ Found item [ClusterName='BenchFarm'] index: BenchFarm
+ Found item [ClusterName='R710Farm'] index: R710Farm
July 5th, 2012 at 14:37
vous avez changé la variable vi_interval dans le script ?
July 5th, 2012 at 15:07
Oui, j’ai joué avec les 2 par incrément de 100 entre 300 et 600
vi_interval=”600″
vi_timeshift=”600″
Même message d’erreur.
Autre chose à essayer ?
July 5th, 2012 at 15:08
pour l’interval c’est 300, 1800, 7200 ou 86400 mais pas autre chose
July 5th, 2012 at 15:25
Shame on me.
J’ai essayé avec les valeurs indiquées et j’obtient toujours (sauf avec la valeur 300):
CHECK_VMWARE_API.PL CRITICAL – CLUSTER CPU Unknown error
Merci !
July 5th, 2012 at 15:28
Vous pouvez essayer sans timeshift mais ça n’a pas vraiment d’intérêt d’utiliser d’autres valeurs que 300 car cela retourne une valeur “trop vieille” et donc cela ne correspondrai plus au timestamp du rrd (et ce serai moins précis). 300 secondes ça va encore et on a pas le choix en plus…
July 13th, 2012 at 13:07
Hello,
Existe t’il un tuto pour installer proprement tout cela ? Car je m’y perd un peu dans certain répertoire… T_T
Merci par avance !
Cdt,
July 13th, 2012 at 14:06
Bonjour,
Sur quelle(s) partie(s) bloquez vous ?
July 26th, 2012 at 20:27
Bonjour,
Tout d’abord un gros merci pour votre taff !
J’ai un problème sur mon CACTI, je ne parviens pas a faire des graphs, les scripts sont aux bons endroits, je ping/snmp mon vcenter sans soucis.
Dans le debug sur mes data queries j’ai ca :
Data Query Debug Information
+ Running data query [24].
+ Found type = ‘4 ‘[script query].
+ Found data query XML file at ‘/var/www/html/resource/script_queries/check_vmware_cluster.xml’
+ XML file parsed ok.
+ Executing script for list of indexes ’sh /var/www/html/scripts/check_esx3_helper.sh 10.2.7.30 clusterindex’
+ Executing script query ’sh /var/www/html/scripts/check_esx3_helper.sh 10.2.7.30 query clustername’
+ Found data query XML file at ‘/var/www/html/resource/script_queries/check_vmware_cluster.xml’
+ Found data query XML file at ‘/var/www/html/resource/script_queries/check_vmware_cluster.xml’
+ Found data query XML file at ‘/var/www/html/resource/script_queries/check_vmware_cluster.xml’
Puis rien. J’ai tenté de modifié la valeur de timeshift et idem.
Avez-vous une idée? Merci d’avance,
Cdt,
Julien
July 26th, 2012 at 20:30
Bonjour,
Heureux que cela puisse vous aider
Il n’y a pas de retour pour le nom des vos cluster, essayez d’exécuter le script check_esx3_helper.sh en interactif pour voir le retour, on en saura plus avec ça.
July 26th, 2012 at 21:44
Alors j’ai corriger plusieurs choses :
- Dans mot mot de passe il y avait le caractère “&” et il semble que celui ci soit mal interprété dans le script il arrète la chaine a ce moment la.
Avec un password simple ca fonctionne.
Ensuite j’ai modifié le chemin pour le script chek_vmware car je suis sur un CactiEZ et par defaut ce n’est pas le même chemin (/var/www/html/ au lieu de /var/www/cacti/scripts/).
Donc maintenant j’ai une erreur Perl quand je lance le script :
[root@CACTI scripts]# ./check_esx3_helper.sh 10.2.7.30 admin_jlg password clusterindex
Can’t locate Nagios/Plugin/Functions.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi
Pourtant mon perl semble bien à jour et j’ai bien le Functions.pm mais pas dans le bon chemin :
[root@CACTI scripts]# locate Functions.pm
/usr/lib/perl5/5.8.8/File/Spec/Functions.pm
/usr/lib/perl5/5.8.8/Pod/Functions.pm
A quel niveau puis-je modifié le chemin ? Dans le script je ne le trouve pas…
Autre question, pour que le script fonctionne a terme il faut bien l’éditer avec :
usage=”$(basename $0) [vcenter] [username] [password]
Ou
vcenter = ip du vcenter
login = login du vcenter
Password = MDP
Merci pour votre retour,
Cdt,
Julien
July 26th, 2012 at 23:08
Essayez de créer un lien symbolique du fichier dans un des répertoires où il cherche (c’est votre install de perl/CPAN qui semble etre en cause ici).
Il ne faut rien changer dans le script mis à part le chemin de la variable $check_esx3. La variable $usage est uniquement la pour afficher la syntaxe correct en cas d’erreur.
July 27th, 2012 at 11:18
Ca continue malgrès les liens symboliques :
[root@CACTI scripts]# ./check_esx3_helper.sh 10.2.7.30 admin_jlg password clusterindex
Can’t locate Params/Validate.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/lib/perl5/site_perl/5.8.8/Nagios/Plugin.pm line 5.
BEGIN failed–compilation aborted at /usr/lib/perl5/site_perl/5.8.8/Nagios/Plugin.pm line 5.
Compilation failed in require at /var/www/html/scripts/check_vmware_api.pl line 32.
BEGIN failed–compilation aborted at /var/www/html/scripts/check_vmware_api.pl line 32.
Pourtant les liens fonctionnent :
root@CACTI scripts]# locate Validate.pm
/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Validate.pm
/usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi/Validate.pm
/usr/lib/perl5/site_perl/Validate.pm
[root@CACTI scripts]# locate Plugin.pm
/usr/lib/perl5/site_perl/5.8.8/Nagios/Plugin.pm
Il manquait quand même certaines applis CPAN que j’ai installer.
La du coup je comprend pas ce qui gène le lancement…
July 27th, 2012 at 17:27
Bon j’ai clairement un problème avecmes modules CPAN, j’ai remarqué que mon fichier Validate.pm était vide.
J’ai donc réinstaller ce module, et ses dépendances.
Maintenant je bloque sur l’installation du module “Module::Runtime” j’ai cette erreur :
Exécution de make test ..
/usr/bin/perl Build –makefile_env_macros 1 test
Use of uninitialized value in length at lib/Module/Build/Base.pm line 2767.
t/00-compile.t …………….. ok
t/PL_files.t ………………. ok
t/actions/installdeps.t …….. ok
t/actions/manifest_skip.t …… ok
t/add_property.t …………… ok
Use of uninitialized value in length at /tmp/.webmin/Module-Build-0.4001/blib/lib/Module/Build/Base.
pm line 2767.
Use of uninitialized value in length at /tmp/.webmin/Module-Build-0.4001/blib/lib/Module/Build/Base.
pm line 2767.
t/basic.t …………………. ok
t/bundle_inc.t …………….. skipped: $ENV{MB_TEST_EXPERIMENTAL} is not set
t/compat.t ………………… ok
t/compat/exit.t ……………. ok
t/debug.t …………………. ok
t/destinations.t …………… ok
t/ext.t …………………… ok
t/extend.t ………………… ok
t/files.t …………………. ok
t/help.t ………………….. ok
Deep recursion on subroutine “Pod::Html::scan_dir” at /usr/lib/perl5/5.8.8/Pod/Html.pm line 982.
Deep recursion on subroutine “Pod::Html::scan_dir” at /usr/lib/perl5/5.8.8/Pod/Html.pm line 982.
Deep recursion on subroutine “Pod::Html::scan_dir” at /usr/lib/perl5/5.8.8/Pod/Html.pm line 982.
Deep recursion on subroutine “Pod::Html::scan_dir” at /usr/lib/perl5/5.8.8/Pod/Html.pm line 982.
Avez vous une solution pour que je puisse relancer l’installation des modules CPAN?
Merci d’avance,
Cdt,
Julien
July 27th, 2012 at 17:37
Malheureusement je ne suis pas un spécialiste de CPAN…
August 17th, 2012 at 15:49
Salut NiTRo,
Juste une petite question au sujet du session file. Tu indiques que cela permet une authentification plus rapide. J’imagine par rapport à l’authent’ login/mdp. Toutefois comment fais-tu pour réutiliser ce fichier de session car j’imagine que cela remplace l’authent’ par login/mdp ? (J’arrive bien à le sauvegarder avec -S)
Un merci d’avance
Seb.
August 18th, 2012 at 20:27
Le fichier n’exempt pas l’authentif (pas à ma connaissance mais ce serait l’idéal pour éviter les multiples events) mais permet de réutiliser le même token de session (s’il n’a pas expiré) et donc de ne pas avoir 50000 sessions sur le vcenter
September 4th, 2012 at 10:25
pls help me ,why
[root@CactiEZ scripts]# sh /var/www/cacti/scripts/check_esx3_helper.sh
: command not foundpts/check_esx3_helper.sh: line 3:
: command not foundpts/check_esx3_helper.sh: line 5:
: command not foundpts/check_esx3_helper.sh: line 7:
: command not foundpts/check_esx3_helper.sh: line 10:
/var/www/cacti/scripts/check_esx3_helper.sh: line 14: syntax error near unexpected token `elif’
/var/www/cacti/scripts/check_esx3_helper.sh: line 14: `elif test “$4″ = “cluster’ndex” ; then
September 5th, 2012 at 22:07
Pour les soucis de modules PERL, il suffit de lancer un shell cpan et d’installer Nagios::Plugin (perso ca a foiré la premire fois, j’ai du installer via cpan Module::Build, Module::Implementation et Params::Validate). Par contre il faut une connexion au net.
Au niveau du helper, je l’ai bidouillé pour qu’il prenne les clusters/datastores avec des espaces: il suffit que lors de l’index il sorte les noms séparés par des guillemets, comme ca c’est re-injecté tel quel dans cacti, qui supporte cela maintenant (bug corrigé en 0.8.8: http://bugs.cacti.net/view.php?id=1632 ). Il faut aussi rajouter quelques guillemets au niveau de l’argument 6 dans le helper.
@NiTRo: je peux t’envoyer le script corrigé si ca t’intéresse.
Au debut, pas moyen d’avoir de RRD. En fait lors de l’ajout des Data queries au device, il faut que ces dernieres soient en “Index Count Changed”.Par defaut c’est Uptime goes backward, mais le souci c’est qu’il check l’uptime via SNMP, or le SNMP n’est pas activé sur le vCenter mais cacti croit qu’il l’est puisqu’on lui file des identifiants SNMP, il croit donc que le device est down et ne lance donc pas les scripts pour relever les valeurs. Je ne sais pas si ce comportement est propre à la 0.8.8 par contre.
Si cela peut permettre du gagner du temps à quelqu’un …
September 6th, 2012 at 9:11
@cans oui ça m’intéresse
Merci pour ton aide.
October 11th, 2012 at 1:26
Salut NiTRo,
En premier, merci beaucoup pour ton travail, ça aide beaucoup.
J’ai un petite problème, voici le
Data Query Debug Information:
+ Running data query [16].
+ Found type = ‘4′ [Script Query].
+ Found data query XML file at ‘/usr/share/cacti/site/resource/script_queries/check_vmware_datastore.xml’
+ XML file parsed ok.
+ missing in XML file, ‘Index Count Changed’ emulated by counting arg_index entries
+ Executing script for list of indexes ’sh /usr/share/cacti/site/scripts/check_esx3_helper.sh svrmtl1prdvcms1.trsb.corp 00001170 ***** datastoreindex’ Index Count: 2
+ Found index: at /usr/share/perl/5.14/VMware/VICommon.pm line 545.
+ Found index:
+ Executing script query ’sh /usr/share/cacti/site/scripts/check_esx3_helper.sh svrmtl1prdvcms1.trsb.corp 00001170 **** query dsname’
+ Found item [DatastoreName='at'] index: at
+ Found item [DatastoreName='/usr/share/perl/5.14/VMware/VICommon.pm'] index: /usr/share/perl/5.14/VMware/VICommon.pm
+ Found item [DatastoreName='line'] index: line
+ Found item [DatastoreName='545.'] index: 545.
Et sur la console j’ai:
adminti@svrmtl1prdlog:/usr/share/cacti/site/scripts$ ./check_esx3_helper.sh 192.168.0.206 00001170 ***** clusterindex
BLADECENTER_S
Est-ce que t’a une idée de ça serait quoi mon erreur?
Merci beaucoup.
Et désolé pour mon français..
Merci encore..!!
Felipe
October 11th, 2012 at 1:41
Et finalment résolu:
J’ai ajouté la ligne:
export PERL_LWP_SSL_VERIFY_HOSTNAME=0
Au debut du fichier check_esx3_helper.sh
Encore une fois, merci beaucoup pour ton travail..!!!
October 13th, 2012 at 13:27
Merci pour ton feedback sur SSL Felipe !
December 10th, 2012 at 12:11
Excuse me, I don’t speak French (sorry).
In my execution of the script, I get the response:
ERROR: the RRD does not contain an RRA matching the chosen CF
Could you help me?
Thanks.
December 10th, 2012 at 12:15
Hi Juan, no problem about the language
it seems to be a cacti error and a quick googling shows up a bug in 0.8.7a (http://forums.cacti.net/post-122652.html), what’s your current cacti version ?
December 10th, 2012 at 12:24
No, I’m in 0.8.7d i386 version. Is it a problem?
December 13th, 2012 at 10:53
I don’t think so, it was a first try. Did you turn the cacti log to “medium” to see if anything seems wrong ?
December 21st, 2012 at 18:29
Bonjour,
J’ai un trouble à l’importation des templates. J’ai Cacti version 0.8.8a et lorsque j’importe cacti_….vpx-cluster_usage.xml, l’interface web génère l’erreur 404 “Page not found” J’ai également essayé d’importer en utilisant le fichier direct ou par le mode texte. Aucun changement et pas plus de succès à importer par la ligne de commande.
Aucun problème avec le template vmfs_usage.
Merci
December 21st, 2012 at 21:53
Autre question. Est-ce qu’il est possible d’obtenir tout ça avec un ESXi et un vCenter…. gratuit? Si oui, quel vCenter? Ou est-ce que j’ai mal comprit et il faut absolument avec un vCenter payant pour avoir accès à ses fonctionnalités?
December 25th, 2012 at 16:05
Frankydjo, erreur 404 vers quelle url ?
Les compteurs de cluster sont générés pas vcenter et il n’existe pas (encore) de version free
February 5th, 2013 at 10:00
Hi,
Your posting is very interesting.
I have ESX4.0 but did not find any template related
Do you have template for ESX4.0? and guild me how to install?
February 20th, 2013 at 11:00
Bonjour à tous,
J’ai un souci avec ce template cacti.
Au début j’avais un problème, car je ne voulais pas utiliser le snmpv3 donc j’ai modifié les fichiers “check_vmware_cluster.xml et datastore.xml” en rentrant directement le login et mot de passe.
Maintenant lorsque je lance le query sous Cacti il me trouve bien mon cluster et mes datastores.
Je lance la création des graphs et j’ai 2 soucis différents :
Lorsque je clic sur “Realtime” à droite du graph je vois bien que le datastore commence à grapher mais rien n’apparaît sur le graph général…
Et pour le cluster CPU,MEM…il ne se passe rien même le graph en fond ne s’affiche pas.
Si je n’ai pas été clair,n’hésitez pas à me demander d’autre explication.
Merci beaucoup
February 20th, 2013 at 15:21
@Jérémie : Bonjour, dans un premier temps il faut savoir ce que cacti reçoit comme data, passez le “Poller Logging Level” à MEDIUM pour avoir les résultats.
February 20th, 2013 at 15:23
@noname : It’s cross version compatible, you can use it against 3.5, 4.x or 5.x
Did you tried ?
February 20th, 2013 at 15:57
Voilà le résultat pour le Datastore :
sh /srv/eyesofnetwork/cacti/scripts/check_esx3_helper.sh EC-MON-MGT2 administrateur password get VMFS Datacore, output: 0
Il me sort 0 alors que je lance cette commande sur mon serveur :
sh
/srv/eyesofnetwork/cacti/scripts/check_esx3_helper.sh EC-MON-MGT2 administrateur password get VMFS Datacore-VD3-15k
il me sort le resultat 67
Pour le CPU voilà le résultat :
sh /srv/eyesofnetwork/cacti/scripts/check_esx3_helper.sh EC-MON-MGT2 administrateur password get CPU CLUSTER, output: U
Mais là, lorsque je rentre la commande sur le serveur j’ai l’erreur “CHECK_VMWARE_API.PL CRITICAL – CLUSTER CPU Unknown error”
Merci pour ton aide
March 1st, 2013 at 10:02
Je me permet un petit up
March 2nd, 2013 at 12:32
@Jérémie : je te répond ASAP
March 8th, 2013 at 22:39
Hello NiTRo,
Encore moi, je viens de changer à CactiEZ, après avoir tout configuré voilà que j’ai reçois:
sh /var/www/html/scripts/check_esx3_helper.sh server.com username password query dsname
awk: warning: escape sequence `\” treated as plain `”
VMware:VMware
Infrastructure:Infrastructure
(VI):(VI)
Perl:Perl
Toolkit:Toolkit
il semble bien fonctionner, mais les valeurs opur les datastore ne correspondent pas.
As-tu une idée?
Merci
March 12th, 2013 at 14:18
Bonjour NiTRo,
Il semble que c’est à cause d’une problème avec l’installation du SDK de VMware.
Je vais vous tenir au courant.
Merci.
March 12th, 2013 at 15:01
@Felipe, ok merci
March 12th, 2013 at 15:03
@Jérémie, tu peux essayer d’utiliser le script check_vmware_api.pl directement au lieu de passer par le helper ?
March 12th, 2013 at 15:18
Ok, mais quelle commande souhaites-tu que j’exécute ?
March 12th, 2013 at 15:29
Voici un exemple de résultat :
commande : ./check_vmware_api.pl -D ec-mon-mgt2 -u administrateur -p password -l cpu -s usage -i 300 -T 600
résultat : CHECK_VMWARE_API.PL OK – cpu usage=20.07 % | cpu_usage=20.07%;;
March 12th, 2013 at 15:30
et le helper te sort quoi tout de suite ?
March 12th, 2013 at 15:51
Il me sort CHECK_VMWARE_API.PL CRITICAL – CLUSTER CPU Unknown error
April 30th, 2013 at 15:04
Hello NiTRo,
Impossible de faire fonctionner dans l’état ce nouveau package.
Info : Cacti 0.8.7i et vcenter (5.0 et 5.1)
Résultats :
sur vcenter 5.0 :
root@IT-CACTI-02:/var/www/cacti/scripts# sh check_esx3_helper.sh 10.10.9.83 mylogin mypassword get CPU Cumulus_Cluster
… j’attends encore la fin d’exécution devant mon ecran … bref au bout de 10 minutes je l’ai arrêté …
Sans le cluster spécifié avec check_esx3_helper il manque un argument.
root@IT-CACTI-02:/var/www/cacti/scripts# perl check_vmware_api.pl -D 10.10.9.83 -u mylogin -p mypassword -l cpu -s usage -i 300 -T 300
CHECK_VMWARE_API.PL OK – cpu usage=21.50 % | cpu_usage=21.50%;;
sur vcenter 5.1 :
avec interval standard à 300:
root@IT-CACTI-02:/var/www/cacti/scripts# perl check_vmware_api.pl -D 10.10.9.80 -u mylogin -p mypassword -l cpu -s usage -i 300 -T 300
CHECK_VMWARE_API.PL CRITICAL -
SOAP Fault:
———–
Fault string: A specified parameter was not correct.
querySpec.interval
Fault detail: InvalidArgumentFault
avec interval à 20 ( impossible d’avoir un résultat si l’interval n’est pas à 20):
root@IT-CACTI-02:/var/www/cacti/scripts# perl check_vmware_api.pl -D 10.10.9.80 -u mylogin -p mypassword -l cpu -s usage -i 20 -T 300
CHECK_VMWARE_API.PL OK – cpu usage=8.54 % | cpu_usage=8.54%;;
Le fait est que si je rajoute le nom du cluster dans les requêtes , et bien c la merte !!!!
Si cela permet de faire un peu avancer le schmilblick
April 30th, 2013 at 20:02
il doit y avoir eu trop de modif sur le script check_vmware_api, je vais jeter un oeil.
je vais essayer d’utiliser StatsFeeder à la place…
May 10th, 2013 at 21:02
@Daff, je viens de tester avec la dernière version de check_vmware_api.pl sur un vcenter 5.0 et 5.1 c’est ok.
Vous utilisez quelle version du script ?
June 6th, 2013 at 13:19
Hey,
that work is nice ! Have you thinked about a graph template for a overall cpu,mem,net usage over the whole datacenter – not just the cluster ?
Aswell i would prefer the use of the usage in MHZ or MB usage as the %. This makes the graphs more detailed, when adding additional hardware for example.
Kind regards,
Constey
June 6th, 2013 at 16:51
Hey Constey,
Thanks!
A datacenter view would be intersting indeed, i’ll have a look on it.
About units vs %, i made that choice in order to easilly compare cluster load but i could add the choice if you’re interested?
June 6th, 2013 at 17:31
Hey,
yes of course that would be very interesting
The Datacenter request of the check_vmware_api should be:
-D vcenter -u user -p password -l cpu -s usagemhz
Maybe some other where you could give me a hint:
I’ve installed the templates, data queries and have a vcenter associated with it. The graphs are displayed but withoud data. Funny thing: If i have a look in the real time graph (realtime plugin) i have data here. Do you have an idea what that blank graphes could be caused by?
kind regards,
Constantin
June 6th, 2013 at 17:33
P.S. Maybe there is sth. bugged with the comment system here. If i write down the cmdline with FQDN, or userATdomainDOTinfo and I try to send the comment i just get a blank page )
June 6th, 2013 at 18:04
You could raise the cacti logging level to see what happens, it’s always a good start.
Thanks about the comment bug, i’ll check that
June 17th, 2013 at 10:50
I raised it up to debug, but i cant see an error there.
If i check the rrd file there is no data there:
2013-06-15 10:00:00 CEST / 1371283200 NaN
2013-06-15 12:00:00 CEST / 1371290400 NaN
on a look to the temp rrd file from the realtime graph there is data:
2013-06-17 10:33:00 CEST / 1371457980 2.0010000000e+01
2013-06-17 10:34:30 CEST / 1371458070 2.0010000000e+01
2013-06-17 10:36:00 CEST / 1371458160 1.4155666667e+01
so i think there must be anything like a timeout, or script execution time or sth. which is different between the normal poller scan and the realtime view.
Ive added the log files and the rrd file here, maybe you can have a short look at it:
constey.de/krams/log.txt
constey.de/krams/poller.txt
constey.de/krams/realtime.txt
lg
September 18th, 2013 at 13:42
Salut,
J’essaie de mettre en place ce template mais j’ai un soucis avec l’exécution du helper. Dans cacti après avoir créé le device je n’arrive pas à remonter des valeurs. Je décide de lancer le helper à la main :
sh check_esx3_helper.sh monserveur yyyyy xxxxx get CPU
J’obtiens :
: command not foundh: line 3:
: command not foundh: line 5:
: command not foundh: line 7:
: command not foundh: line 10:
check_esx3_helper.sh: line 14: syntax error near unexpected token `elif’
‘heck_esx3_helper.sh: line 14: `elif test “$4″ = “clusterindex” ; then
Je suis sur du redhat-5.5.
Si je lance le pl à la main pas de soucis il me remonte bien des valeurs.
September 19th, 2013 at 8:13
Bonjour,
vous pouvez vérifier ce chemin dans le script :
check_esx3=”/var/www/cacti/scripts/check_vmware_api.pl”
September 19th, 2013 at 9:36
Bonjour,
Je l’ai adapté pour mon infra :
check_esx3=”/www/prod/admin/html/cacti/scripts/check_vmware_api.pl”
Le truc bizarre est que si je supprime les retour à la ligne des lignes 3, 5, 7, 10 je n’ai plus que ça comme erreur :
check_esx3_helper.sh: line 11: syntax error near unexpected token `elif’
‘heck_esx3_helper.sh: line 11: `elif test “$4″ = “clusterindex” ; then
J’ai essayé de lancer le helper sur mon pc (Fedora 18) et l’erreur est différente :
check_esx3_helper.sh: ligne3: $’\r’ : commande introuvable
check_esx3_helper.sh: ligne5: $’\r’ : commande introuvable
check_esx3_helper.sh: ligne7: $’\r’ : commande introuvable
check_esx3_helper.sh: ligne10: $’\r’ : commande introuvable
check_esx3_helper.sh: ligne14: Erreur de syntaxe près du symbole inattendu « elif »
‘heck_esx3_helper.sh: ligne14: `elif test “$4″ = “clusterindex” ; then
September 19th, 2013 at 14:12
@Philippe: pour ce genre de soucis, il faut utiliser dos2unix.
Comme ceci :
$ dos2unix check_esx3_helper.sh
Et après plus de soucis.
September 20th, 2013 at 7:31
@nissen : parfait ça marche mieux maintenant.
Merci
May 2nd, 2015 at 13:36
“Nagios::Plugins was renamed to Monitoring::Plugins due to trademark reason. cpan doesn’t index Nagios::Plugins anymore. Now you must install Monitoring::Plugins:”
http://unix.stackexchange.com/questions/199155/cannot-install-nagiosplugin-dont-know-what-it-is