Nagios Plugin Perl Fehler check mssql health
Hallo zusammen,
möchte meinen MSSQL Server mit check_mssql_health überwachen. Ziel ist es anzahl der verbundenen User zu überwachen.
Habe mir das Plugin nach folgender Anleitung installiert:
http://www.r71.nl/kb/technical/294-nagios-check-vcenter-mssql-databases
Leider klappt das nicht wie ich das möchte.
Habe ein i686 - CentOS 6 mit Nagios XI.
Befehl:
Fehler:
Habe meines Wissens nach das Richtige Paket schon auf dem System
Hat jemand eine Idee was mit "Perl" falsch läuft, ist das Plugin vllt. nur für x64 Systeme?
Danke für die Unterstützung
MfG
Itproject
Perl Version:
möchte meinen MSSQL Server mit check_mssql_health überwachen. Ziel ist es anzahl der verbundenen User zu überwachen.
Habe mir das Plugin nach folgender Anleitung installiert:
http://www.r71.nl/kb/technical/294-nagios-check-vcenter-mssql-databases
Leider klappt das nicht wie ich das möchte.
Habe ein i686 - CentOS 6 mit Nagios XI.
Befehl:
[root@nagiosserver plugins-scripts]# ./check_mssql_health -hostname 192.168.1.1 -username domainname\administrator -password mypassword -port 1433 -mode connected-users -warning 35 -critical 40
Fehler:
*** stack smashing detected ***: /usr/bin/perl terminated
======= Backtrace: =========
/lib/libc.so.6(__fortify_fail+0x4d)[0x7da7ad]
/lib/libc.so.6(+0xfc75a)[0x7da75a]
/usr/lib/perl5/vendor_perl/auto/DBD/Sybase/Sybase.so(+0x181c4)[0x2f81c4]
/usr/lib/perl5/vendor_perl/auto/DBD/Sybase/Sybase.so(syb_init+0x622)[0x2ef082]
/usr/lib/perl5/vendor_perl/auto/DBD/Sybase/Sybase.so(boot_DBD__Sybase+0xa8f)[0x2e406f]
/usr/lib/perl5/CORE/libperl.so(Perl_pp_entersub+0x5cb)[0x1aca8b]
/usr/lib/perl5/CORE/libperl.so(Perl_runops_standard+0x28)[0x1aabf8]
/usr/lib/perl5/CORE/libperl.so(perl_run+0x344)[0x14c504]
/usr/bin/perl(main+0x106)[0x80489e6]
/lib/libc.so.6(__libc_start_main+0xe6)[0x6f4ce6]
/usr/bin/perl[0x8048841]
Habe meines Wissens nach das Richtige Paket schon auf dem System
[root@nagiosserver downloads]# rpm --install perl-DBD-Sybase-1.10-1.el6.rf.i686.rpm
package perl-DBD-Sybase-1.10-1.el6.rf.i686 is already installed
Hat jemand eine Idee was mit "Perl" falsch läuft, ist das Plugin vllt. nur für x64 Systeme?
Danke für die Unterstützung
MfG
Itproject
Perl Version:
This is perl, v5.10.1 (*) built for i386-linux-thread-multi
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 194098
Url: https://administrator.de/contentid/194098
Ausgedruckt am: 24.11.2024 um 16:11 Uhr
12 Kommentare
Neuester Kommentar
Moin,
teste doch bitte mal ob du überhaupt ohne das Script von dem Server auf den SQL-Server verbinden kannst - z.B. tsql.
Somit ist sichergestellt, dass es an der Verbindung nicht liegen kann.
Um welche MSSQL Server Version handelt es sich und welche Architektur (32Bit, 64Bit)?
Hier kannst du die neuste Pluginversion herunterladen.
Ansonsten führe den Befehl nicht mit ROOT aus sondern mit dem Benutzer unter dem Nagios läuft.
Grüße,
Dani
teste doch bitte mal ob du überhaupt ohne das Script von dem Server auf den SQL-Server verbinden kannst - z.B. tsql.
Somit ist sichergestellt, dass es an der Verbindung nicht liegen kann.
Um welche MSSQL Server Version handelt es sich und welche Architektur (32Bit, 64Bit)?
Hier kannst du die neuste Pluginversion herunterladen.
Ansonsten führe den Befehl nicht mit ROOT aus sondern mit dem Benutzer unter dem Nagios läuft.
Grüße,
Dani
Sofern die MySQL Datenbank nicht auf dem gleichen System ist solltest du die Konfig Datei der MySQL /etc/my.cfg checken ob die auch auf die externe NIC gebunden ist oder nur den localhost bedient.
Das "Sybase" ist etwas verwirrend, denn einen Sybase datenbank ist keine MySQL wie du vermutlich selber weisst ?!
Das "Sybase" ist etwas verwirrend, denn einen Sybase datenbank ist keine MySQL wie du vermutlich selber weisst ?!
Hallo,
ich meine das Perl-Modul alleine reicht nicht, du brauchst auch noch FreeTDS als Unterbau.
Da ist auch das tsql mit drinnen, was dani erwähnte.
Im Umkehrschluß: Wenn du tsql schon auf dem System hast, hast du auch FreeTDS. Wenn du mit tsql eine Anmeldung hinbekommst, dann liegt das Problem beim Perl-Modul, ansonsten klemmt es schon an der/den Verbindung(sdaten).
ich meine das Perl-Modul alleine reicht nicht, du brauchst auch noch FreeTDS als Unterbau.
Da ist auch das tsql mit drinnen, was dani erwähnte.
Im Umkehrschluß: Wenn du tsql schon auf dem System hast, hast du auch FreeTDS. Wenn du mit tsql eine Anmeldung hinbekommst, dann liegt das Problem beim Perl-Modul, ansonsten klemmt es schon an der/den Verbindung(sdaten).
Hallo,
MSSQL ist auch kein MySQL
Der Microsoft SQL Server ist historisch mit Sybase verwandt und nutzt bis heute dasselbe Protokoll, deshalb braucht man bei Verbindungen von Linux aus auf einen SQL Server dieses Modul.
MSSQL ist auch kein MySQL
Der Microsoft SQL Server ist historisch mit Sybase verwandt und nutzt bis heute dasselbe Protokoll, deshalb braucht man bei Verbindungen von Linux aus auf einen SQL Server dieses Modul.
Moin,
also grundsätzlich finde ich Domänen-Benutzer für sowas nicht geeignet. Aber das ist ein anderes Thema.
Versuch es trotzdem mit dem "SA" Benutzer zuerst. Du musst sicherstellen, dass die Verbindung klappt. Danach kannst du Späßchen einbauen.
Wir reden von einer Default-Instanz von SQL-Server?! Nicht eine manuelle angelegte, z.B. SERVER\meinAwendung1 o.ä.?! Ist nämlich wichtig für den Port.
Grüß,
Dani
also grundsätzlich finde ich Domänen-Benutzer für sowas nicht geeignet. Aber das ist ein anderes Thema.
Versuch es trotzdem mit dem "SA" Benutzer zuerst. Du musst sicherstellen, dass die Verbindung klappt. Danach kannst du Späßchen einbauen.
Wir reden von einer Default-Instanz von SQL-Server?! Nicht eine manuelle angelegte, z.B. SERVER\meinAwendung1 o.ä.?! Ist nämlich wichtig für den Port.
Grüß,
Dani
Hallo,
laut http://freetds.schemamania.org/userguide/domains.htm musste du den Usernamen in einfache Anführtungszeichen setzen, dann sollte das klappen:
tsql -S camelot -U 'NOTTINGHAM\lancelot' -P roundtable
laut http://freetds.schemamania.org/userguide/domains.htm musste du den Usernamen in einfache Anführtungszeichen setzen, dann sollte das klappen:
tsql -S camelot -U 'NOTTINGHAM\lancelot' -P roundtable
Hallo,
für perl-DBD-Sybase-1.10-1.el6.rf.i686.rpm braucht man perl-5.10.1-127.el6.i686.rpm. Schau mal bitte auf der folgenden Seite in der "Requires" Abschnitt:
http://pkgs.org/centos-6-rhel-6/repoforge-i386/perl-DBD-Sybase-1.10-1.e ...
Du brauchst freetds auch richtig zu konfigurieren:
http://freetds.schemamania.org/
Um zu überprüfen, welche Version du hast:
http://www.question-defense.com/2008/11/28/how-to-verify-a-centos-linux ....
Grüße.
für perl-DBD-Sybase-1.10-1.el6.rf.i686.rpm braucht man perl-5.10.1-127.el6.i686.rpm. Schau mal bitte auf der folgenden Seite in der "Requires" Abschnitt:
http://pkgs.org/centos-6-rhel-6/repoforge-i386/perl-DBD-Sybase-1.10-1.e ...
Du brauchst freetds auch richtig zu konfigurieren:
http://freetds.schemamania.org/
Um zu überprüfen, welche Version du hast:
http://www.question-defense.com/2008/11/28/how-to-verify-a-centos-linux ....
Grüße.
Moin,
Grüße,
Dani
Leider kann ich nicht per "sa" anmelden, hat seine Gründe ^^ jedoch hat der User DOMAIN\administrator alle access rights auf die Maschine, kann mich auch mit dem Management Tool perfekt anmelden.
Man nimmt sowieso keine Admin-Accounts sondern legt einen neuen Benutzer "nagios" oder "icinga" mit den notwendigen Rechten an. So haben wir das bei uns auch gelöst und hatten keinerlei Probleme. Was Probleme macht, sind Instanzen von SQL Server. Aber dazu gibts im Forum monitoring-portal.de genug Lösungen.Grüße,
Dani