Ciao a tutti ragazzi. Questo è il mio primo post qui e vorrei cercare di risolvere questo problema che ho con il modulo nagios per Drupal.
Ho appena installato drupal ultima versione sul mio server windows e ho configurato il modulo nagios inserendo la unique_id nel tab della configurazione.
Ho impostato sul mio server linux (il server che controlla via nagios il sito drupal) il comando check_drupal passandogli questi dati: indirizzo ip della macchina nella rete, unique_id e timing
check_drupal!ipaddress!unique_id!2
Il problema è che quando vado a visualizzare il risultato del servizio nella schermata di monitoring di nagios ottengo l'errore "wget error: 2: when accessing ipDelMioSito/nagios. HTTP: "
Provando ad accedere alla pagina ipDelMioSito/nagios noto che se sono loggato il risultato è questo:
"nagios=CRITICAL, ADMIN:WARNING=Update notifications, CRON:CRITICAL=cron not running 60 mins | SAN=0;SAU=0;NOD=0;USR=1;MOD=30;THM=2"
altrimenti è:
"nagios=UNKNOWN, DRUPAL:UNKNOWN=Unauthorized |"
Qual è il problema?
Ho provato a cercare in rete, ma non si trova nulla. Ho provato anche a cercare la funzione "Cerca" di questo forum, ma non l'ho trovata, quindi scusate se magari questo argomento è anche già stato trattato.
Intanto, grazie per avermi fatto conoscere questo modulo di cui ignoravo l'esistenza.
Nella pagina del progetto dice di usare NRPE e sconsiglia per motivi di sicurezza di accedere via HTTP. Immagino che questo sia il motivo per cui ti funziona solo se sei autenticato.
Il CRITICAL deriva dal fatto che nell'ultima ora il cron non ha mai girato. Anche questo mi sembra normale, specialmente in un server di sviluppo/test.
Angelo Turetta
Grazie del consiglio.
Posso farlo aggiungendo il comando al file nrpe.cfg?
Non ho capito bene se il server nagios è diverso dal server drupal.
Se lo è (come nel mio caso) il modo migliore è installare nrpe sul server drupal (in ubuntu il package è nagios-nrpe-server) e aggiungere un file /etc/nagios/nrpe.d/drupal.cfg contenente righe come questa:
command[drupal_site1_admin]=/srv/drush/drush -r /srv/d6root -l http://site1.bo.it/ nagios-check requirements
command[drupal_site1_cron]=/srv/drush/drush -r /srv/d6root -l http://site1.bo.it/ nagios-check cron
Questi sono due controlli attivi via nrpe, che agiscono sul sito http://site1.bo.it/ gestito dal drupal 6 installato in /srv/d6root.
Nel server nagios, dovrai definire un comando tipo:
define command {
command_name check_drupal_nrpe
command_line $USER1$/check_nrpe2 -H $HOSTADDRESS$ -c drupal_$HOSTNAME$_$ARG1$
register 1
}
In questo modo se definisci un host con HOSTNAME=site1 HOSTADDRESS=IPdelSERVER e un servizio con ARG1=admin ti mostrerà il risultato di quel controllo remoto. Attenzione a configuare correttamente la connessione tra nagios e NRPE, provalo prima a mano lanciando /usr/local/libexec/nagios/check_nrpe2 -H IPdelSERVER -c drupal_site1_admin dal server nagios
Se invece lavori sullo stesso server, crea direttamente un comando nagios contenente le commandline drush simili a quelle scritte sopra.
Questo tipo di operazioni sono poco documentate, bisognerebbe che trovassi il tempo di scrivere un tutorial...
Angelo Turetta