Nagios in High Availability Environments



Similar documents

Installation. Installation centreon + nagios mai LISTE DES PRE-REQUIS. Nagios/centreon Paquets divers. 1.1.

Monitoring MySQL. Geert Vanderkelen MySQL Senior Support Engineer Sun Microsystems

Configuring an OpenNMS Stand-by Server

How To Monitor Your Computer With Nagiostee.Org (Nagios)

High Availability And Disaster Recovery

MySQL/MariaDB Multi-Master Replication & Failover

There are numerous ways to access monitors:

Virtual Infrastructure Security

Linux Syslog Messages in IBM Director

View CPU, Memory, Disk, and Network Usage in Activity Monitor.

Website Disaster Recovery

Cloud Based Application Architectures using Smart Computing

Acronis Backup & Recovery 10 Server for Linux. Update 5. Installation Guide

Surround SCM Backup and Disaster Recovery Solutions

How to configure High Availability (HA) in AlienVault USM (for versions 4.14 and prior)

Introduction to system monitoring with Nagios, Check_MK and Open Monitoring Distribution (OMD)

High Availability And Disaster Recovery

Jason Hill HPC Operations Group ORNL Cray User s Group 2011, Fairbanks, AK

Maintaining Non-Stop Services with Multi Layer Monitoring

FAQ: Data Services Real Time Set Up

High Availability for VMware GSX Server

Monitoring a Linux Mail Server

MySQL Fabric: High Availability Solution for Connector/Python

Using New Relic to Monitor Your Servers

NetIQ Advanced Authentication Framework - MacOS Client

How To Install Storegrid Server On Linux On A Microsoft Ubuntu 7.5 (Amd64) Or Ubuntu (Amd86) (Amd77) (Orchestra) (For Ubuntu) (Permanent) (Powerpoint

Database Replication with MySQL and PostgreSQL

TechComplete Test Productivity Pack (TPP) Backup Process and Data Restoration

Cluster to Cluster Failover Using Double-Take

Strengths and Limitations of Nagios as a Network Monitoring Solution

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Acronis Backup & Recovery 10 Server for Linux. Installation Guide

This appendix describes the following procedures: Cisco ANA Registry Backup and Restore Oracle Database Backup and Restore

Extending Remote Desktop for Large Installations. Distributed Package Installs

Decision Support System to MODEM communications

Chapter 1. Backup service

DisplayLink Corporate Install Guide

How to install/configure MySQL Database

High Availability with Postgres Plus Advanced Server. An EnterpriseDB White Paper

High Availability for Microsoft SQL Server 7.0 Using Double-Take

Nagios. cooler than it looks. Wednesday, 31 October 2007

Using iscsi with BackupAssist. User Guide

SkySQL Data Suite. A New Open Source Approach to MySQL Distributed Systems. Serge Frezefond V

How to Push CDR Files from Asterisk to SDReporter. September 27, 2013

Setting up High Availability

Copyright 1

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Opsview in the Cloud. Monitoring with Amazon Web Services. Opsview Technical Overview

IBM Sterling Control Center

NRPE Documentation CONTENTS. 1. Introduction... a) Purpose... b) Design Overview Example Uses... a) Direct Checks... b) Indirect Checks...

Orchestrating your Disaster Recovery with Quorum onq

Yiwo Tech Development Co., Ltd. EaseUS Todo Backup. Reliable Backup & Recovery Solution. EaseUS Todo Backup Solution Guide. All Rights Reserved Page 1

LogMeIn Network Console Version 8 Getting Started Guide

Version of this tutorial: 1.06a (this tutorial will going to evolve with versions of NWNX4)

HPOM 8.1 High Availability Utilizing Microsoft SQL Server Log Shipping

SharePlex for Oracle How to replicate databases. Jeffrey Surretsky Solutions Architect

Protecting SQL Server Databases Software Pursuits, Inc.

StoreGrid Backup Server With MySQL As Backend Database:

Using the IPMI interface

AUTOMATED DISASTER RECOVERY SOLUTION USING AZURE SITE RECOVERY FOR FILE SHARES HOSTED ON STORSIMPLE

High Availability Solutions for MySQL. Lenz Grimmer DrupalCon 2008, Szeged, Hungary

Open Source Job Scheduler

MONITORING RED HAT GLUSTER SERVER DEPLOYMENTS With the Nagios IT infrastructure monitoring tool

How To Choose Between A Relational Database Service From Aws.Com

Availability Management Nagios overview. TEIN2 training Bangkok September 2005

Monitoring MySQL. Presented by, MySQL & O Reilly Media, Inc. A quick overview of available tools

Snapt Redundancy Manual

COMP 112 Assignment 1: HTTP Servers

How to Configure Double-Take on Microsoft Exchange Server

Backups and Maintenance

Instant Chime for IBM Sametime High Availability Server Guide

Veritas Cluster Server

MySQL Administration and Management Essentials

Avira Management Console AMC server configuration for managing online remote computers. HowTo

High Availability for Exchange Server 5.5 Using Double-Take

Acronis Backup & Recovery 10 Server for Linux. Installation Guide

5 Percona Toolkit tools that could save your day. Stéphane Combaudon FOSDEM February 3rd, 2013

Percona Server features for OpenStack and Trove Ops

WhatsUp Gold v11 Features Overview

MarkLogic Server. Database Replication Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

INUVIKA TECHNICAL GUIDE

Vault Project - Plant Database Replication. Contents. Software Requirements: AutoCAD Plant 3D 2016 and AutoCAD P&ID 2016

Exchange Server 2010 backup and recovery tips and tricks

IBM XIV Storage System. MSCS Guide. Version 1.0.x

High Availability, Disaster Recovery and Extreme Read Scaling using Binlog Servers. Jean-François Gagné jeanfrancois DOT gagne AT booking.

StarWind Virtual SAN Installation and Configuration of Hyper-Converged 2 Nodes with Hyper-V Cluster

Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications

Network Monitoring with Nagios. Matt Gracie, Information Security Administrator Canisius College, Buffalo, NY

High Availability Solutions for the MariaDB and MySQL Database

Cluster to Cluster Failover Using Double-Take

Written by: Johan Strand, Reviewed by: Chafic Nassif, Date: Getting an ipath server running on Linux

Advanced Web Security, Lab

Transcription:

Nagios in High Availability Environments Introduction Nagios is a versatile and functional network management tool with a GUI (graphic user interface) comparable to other commercial tools. It s free software, which makes it a perfect candidate for companies. When Nagios is used in a production environment, its high availability component is required. However, the solutions presented in the ofcial documentation do not make Nagios a very reliable tool in this kind of environments. This document will show a more efcient way. First, we are going to approach the already existing solutions, and afterwards a new solution. It s expected from the reader an understanding of Nagios s existing solutions for high availability environments (http://nagios.sourceforge.net/docs/1_0/redundancy.html). Scenario 1 Redundant Monitoring This solution has various problems. The most obvious one is the increase of redundant information in the network. Consequently, it wastes the available bandwidth, and increases the load on the machines that are being monitored. Another undesirable situation, when the master process recovers, is that two machines can send notications. It happens because the master process doesn t have any knowledge of the slave process. It obliges the slave to deactivate the notications promptly. Finally, if one of the nagios processes fails, it won t recover information gathered during the down period. This method doesn t safeguards history. Scenario 2 - Failover Monitoring The difference between this solution and scenario 1 is the inexistence of more than one machine making checks. In this way monitored machines will not be submitted to an extra load, and the bandwidth use is more efcient. However, the problems related with history and notications sync remain. Scenario 3 Failover Sync Monitoring Introduction This solution guarantees consistent history synchronism, and that the only running nagios process is the most up to date. It is considered the use of existing free software tools as a starting point. Later we approach the control method that eliminates redundancy, and guarantees processes synchronism. History Sync A Part of the solution is to use MySQL replication, which solves part of the history synchronism. The problem is that Nagios doesn t keep history in the database, even when compiled with MySQL. To assure it, it s used PerfParse (http://perfparse.sourceforge.net) - a nagios addon. The reader will have to consult documentation on PerfParse and MySQL (section 4.11 replication, from the ofcial documentation) to be able to make the correct procedures. 1

MySQL replication is crossed, which means that each mysql server is master and slave at the same time. It guarantees information recovery in case of crash or downtime (PerfParse uses innodb tables). To do it so, it must be placed the following parameters in `my.cnf ': log-bin log-slave-updates report-host=<host_name> replicate-do-db=<nagios_and_perfparse_data_base> server-id=<1_or_2 mysql_servers_must_have_different_numbers> The order of events that should take place to set up this part of the solution is: 1. install Mysql and congure my.cnf le; 2. install Nagios; 3. install Nagios plug-ins; 4. install PerfParse (probably you ll have to recongure and reinstall Nagios); 5. recongure MySQL to sync the data bases congure masters and slaves with mysql console and start them. If these tools are used properly, the solution that guarantees the consistent history synchronism is complete. It means that it is possible to make crossed synchronism of the Nagios+PerfParse MySQL data bases. The version and conguration chosen influences the performance of the solution in high availability environments. It is wise a thorough reading on all the tools. Nagios Process Sync Although history synchronism is guaranteed, there are still some issues to solve: to guarantee that only one nagios process is running and sending information to the database which is replicated; to guarantee that the only running nagios process has the most up to date data base. The answer is running two control scripts (controller_master and controller_slave) on different hosts. Their job is to manage the execution of nagios processes and to deal with some errors. To work properly, the check_nrpe plug-in and the NRPE daemon (running at boot) must be installed on both hosts. The daemon NRPE should full the following checks: check_nagios check_mysql The scripts can run (every minute) in cron: * * * * * /usr/local/nagios/bin/controller_master_or_slave_depending_on_the_host The control scripts are optimized for execution. It s showed their activity diagrams, for the reader s understanding. 2

Local Host Has Nagios Process? Local Host Has DB? Slave Has Nagios Process? Slave Has Nagios Process? Slave Has DB? Start Nagios Process Local Host Has DB? Slave Has DB? Kill Nagios Process Start Nagios Process Activities Diagram 1 controller_master script Local Host Has Nagios Process? Master Has Nagios Process? Master Has Nagios Process? Local Host Has DB? Master Has DB? Start Nagios Process Local Host Has DB? Master Has DB? Kill Nagios Process Start Nagios Process Activities Diagram 2 controller_slave script 3

Controlling Scripts Competition The two scripts do not behave exactly like master/slave. In reality, the master script only takesover in case it has a nagios process already running without problems; otherwise it behaves exactly like the slave script. It means that the two nagios processes can take-over alternatively when problems occur. This solution was equated because it is necessary to guarantee that the active nagios process has at all time the most up to date data base. Complexity The con of this solution is its complexity. The manipulation of some software tools is demanded. However, this can be an advantage for the versatility of the all solution. 4

controller_master Script Code #!/bin/sh # NAGIOS MASTER CONTROLLING SCRIPT # This script has the job of controlling Nagios Process in a High Availability Environment. # It must run integrated with other controlling systems; namely Nagios, NRPE, PerfParse, MySQL # with crossed replication, and the other completing control script for the Slave Replica. # This solution is presented by Ricardo David Martins. # In order to run correctly, you must give the proper values to the next list of variables. DEBUG=3 DEBUG_FILE=/var/log/messages NAGIOS_WAITING_KILL_TIME=1 CHECK_NAGIOS=/usr/local/nagios/libexec/check_nagios CHECK_NRPE=/usr/local/nagios/libexec/check_nrpe CHECK_MYSQL=/usr/local/nagios/libexec/check_mysql NAGIOS_LOG=/usr/local/nagios/var/nagios.log NAGIOS_LOG_AGE_LIMIT=99999999 NAGIOS_COMMAND=/usr/local/nagios/bin/nagios NAGIOS_CONFIG=/usr/local/nagios/etc/nagios.cfg NAGIOS_EXT_FILE=/usr/local/nagios/var/rw/nagios.cmd REMOTE_SLAVE_HOST=???.???.???.??? NAGIOS_DB=nagios NAGIOS_DB_USER=nagios NAGIOS_DB_PASSWORD=***** # DO NOT change anything below this point, unless you know what you are doing. function time_stamp() date '+%b %e %T' #DEBUG MUST BE 3 OR GREATER PREFIX_INFO="$(time_stamp) $HOSTNAME nagios: Master Control: INFORMATION:" #DEBUG MUST BE 2 OR GREATER PREFIX_WARNING="$(time_stamp) $HOSTNAME nagios Master Control: WARNING:" #DEBUG MUST BE 1 OR GREATER PREFIX_ERROR="$(time_stamp) $HOSTNAME nagios Master Control: ERROR:" function () $CHECK_NAGIOS -F $NAGIOS_LOG -C $NAGIOS_COMMAND -e $NAGIOS_LOG_AGE_LIMIT > /dev/null 2>&1 function check_remote_nagios() $CHECK_NRPE -H $REMOTE_SLAVE_HOST -c check_nagios > /dev/null 2>&1 function check_local_mysql() $CHECK_MYSQL -d $NAGIOS_DB -u $NAGIOS_DB_USER -p $NAGIOS_DB_PASSWORD > /dev/null 2>&1 function check_remote_mysql() $CHECK_NRPE -H $REMOTE_SLAVE_HOST -c check_mysql > /dev/null 2>&1 function kill_nagios() PID=`pidof -o %PPID $NAGIOS_COMMAND` kill -15 $PID > /dev/null 2>&1 function kill_forced_nagios() PID=`pidof -o %PPID $NAGIOS_COMMAND` kill -9 $PID > /dev/null 2>&1 function launch_nagios() $NAGIOS_COMMAND -d $NAGIOS_CONFIG > /dev/null 2>&1 5

function seek_nagios_external_le() [ -e $NAGIOS_EXT_FILE ] function remove_nagios_external_le() rm -f $NAGIOS_EXT_FILE > /dev/null 2>&1 function solution_kill_nagios() kill_nagios sleep $NAGIOS_WAITING_KILL_TIME error1=$? if [ $error1 -eq 0 ]; then echo "$PREFIX_ERROR It wasn t possible to remove nagios process with SIGTERM." \ kill_forced_nagios sleep $NAGIOS_WAITING_KILL_TIME error2=$? if [ $error2 -ne 0 -a $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios process was removed with SIGKILL." elif [ $error2 -eq 0 -a $DEBUG -gt 0 ]; then echo "$PREFIX_ERROR It wasn t possible to remove nagios process with SIGKILL." \ elif [ $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios process was removed." function solution_launch_nagios() launch_nagios error3=$? if [ $error3 -ne 0 ]; then echo "$PREFIX_ERROR It wasn t possible to start nagios process." \ seek_nagios_external_le error4=$? if [ $error4 -eq 0 ]; then if [ $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING It s necessary to remove the nagios external \ command le." remove_nagios_external_le seek_nagios_external_le error5=$? if [ $error5 -ne 0 ]; then if [ $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios external command le was deleted." \ launch_nagios error6=$? if [ $error6 -eq 0 -a $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios process started." elif [ $error6 -ne 0 -a $DEBUG -gt 0 ]; then echo "$PREFIX_ERROR It wasn t possible to start nagios process." \ el echo "$PREFIX_ERROR It wasn t possible to delete nagios external command \ le." el echo "$PREFIX_ERROR It wasn t possible to start nagios process for an unknown \ reason." elif [ $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios process was started." 6

** #Test if nagios process is running OK on the local machine* ** error7=$? if [ $error7 -eq 0 ]; then echo "$PREFIX_INFO The local host is running nagios." ********** #Test if nagios mysql data base is running OK on the local machine* ********** check_local_mysql error8=$? if [ $error8 -ne 0 ]; then echo "$PREFIX_ERROR The local data base isn t running." #Test if nagios process is running OK on the remote host* check_remote_nagios error9=$? if [ $error9 -eq 0 ]; then echo "$PREFIX_INFO The remote host is running nagios." ******** #Test if nagios mysql data base is running OK on the remote host* ******** check_remote_mysql error10=$? if [ $error10 -eq 0 ]; then echo "$PREFIX_INFO The remote data base is running." solution_kill_nagios el echo "$PREFIX_ERROR The remote data base isn t running." else el echo "$PREFIX_INFO The remote host isn t running nagios." el echo "$PREFIX_INFO The local data base is running." echo "$PREFIX_INFO The local host isn t running nagios." #Test if nagios process is running OK on the remote host* check_remote_nagios error11=$? if [ $error11 -eq 0 ]; then echo "$PREFIX_INFO The remote host is running nagios." ********** #Test if nagios mysql data base is running OK on the local machine* ********** check_local_mysql error12=$? if [ $error12 -eq 0 ]; then echo "$PREFIX_INFO The local data base is running." ******** #Test if nagios mysql data base is running OK on the remote host* ******** check_remote_mysql error13=$? if [ $error13 -ne 0 ]; then echo "$PREFIX_ERROR The remote data base isn t running." >> \ 7

$DEBUG_FILE else solution_launch_nagios el echo "$PREFIX_INFO The remote data base is running." el echo "$PREFIX_ERROR The local data base isn t running." echo "$PREFIX_INFO The remote host isn t running nagios." solution_launch_nagios #****************************************************** #Test if nrpe is running on the local and remote hosts* #****************************************************** $CHECK_NRPE -H localhost error14=$? if [ $error14 -ne 0 ]; then echo "$PREFIX_ERROR The local host isn t running the NRPE daemon." $CHECK_NRPE -H $REMOTE_SLAVE_HOST error15=$? if [ $error15 -ne 0 ]; then echo "$PREFIX_ERROR The remote host isn t running the NRPE daemon." 8

controller_slave Script Code #!/bin/sh # NAGIOS SLAVE CONTROLLING SCRIPT # This script has the job of controlling Nagios Process in a High Availability Environment. # It must run integrated with other controlling systems; namely Nagios, NRPE, PerfParse, MySQL # with crossed replication, and the other completing control script for the Master Replica. # This solution is presented by Ricardo David Martins. # In order to run correctly, you must give the proper values to the next list of variables. DEBUG=3 DEBUG_FILE=/var/log/messages NAGIOS_WAITING_KILL_TIME=1 CHECK_NAGIOS=/usr/local/nagios/libexec/check_nagios CHECK_NRPE=/usr/local/nagios/libexec/check_nrpe CHECK_MYSQL=/usr/local/nagios/libexec/check_mysql NAGIOS_LOG=/usr/local/nagios/var/nagios.log NAGIOS_LOG_AGE_LIMIT=99999999 NAGIOS_COMMAND=/usr/local/nagios/bin/nagios NAGIOS_CONFIG=/usr/local/nagios/etc/nagios.cfg NAGIOS_EXT_FILE=/usr/local/nagios/var/rw/nagios.cmd REMOTE_MASTER_HOST=???.???.???.??? NAGIOS_DB=nagios NAGIOS_DB_USER=nagios NAGIOS_DB_PASSWORD=***** # DO NOT change anything below this point, unless you know what you are doing. function time_stamp() date '+%b %e %T' #DEBUG MUST BE 3 OR GREATER PREFIX_INFO="$(time_stamp) $HOSTNAME nagios: Slave Control: INFORMATION:" #DEBUG MUST BE 2 OR GREATER PREFIX_WARNING="$(time_stamp) $HOSTNAME nagios: Slave Control: WARNING:" #DEBUG MUST BE 1 OR GREATER PREFIX_ERROR="$(time_stamp) $HOSTNAME nagios: Slave Control: ERROR:" function () $CHECK_NAGIOS -F $NAGIOS_LOG -C $NAGIOS_COMMAND -e $NAGIOS_LOG_AGE_LIMIT > /dev/null 2>&1 function check_remote_nagios() $CHECK_NRPE -H $REMOTE_MASTER_HOST -c check_nagios > /dev/null 2>&1 function check_local_mysql() $CHECK_MYSQL -d $NAGIOS_DB -u $NAGIOS_DB_USER -p $NAGIOS_DB_PASSWORD > /dev/null 2>&1 function check_remote_mysql() $CHECK_NRPE -H $REMOTE_MASTER_HOST -c check_mysql > /dev/null 2>&1 function kill_nagios() PID=`pidof -o %PPID $NAGIOS_COMMAND` kill -15 $PID > /dev/null 2>&1 function kill_forced_nagios() PID=`pidof -o %PPID $NAGIOS_COMMAND` kill -9 $PID > /dev/null 2>&1 function launch_nagios() $NAGIOS_COMMAND -d $NAGIOS_CONFIG > /dev/null 2>&1 9

function seek_nagios_external_le() [ -e $NAGIOS_EXT_FILE ] function remove_nagios_external_le() rm -f $NAGIOS_EXT_FILE > /dev/null 2>&1 function solution_kill_nagios() kill_nagios sleep $NAGIOS_WAITING_KILL_TIME error1=$? if [ $error1 -eq 0 ]; then echo "$PREFIX_ERROR It wasn t possible to remove nagios process with SIGTERM." \ kill_forced_nagios sleep $NAGIOS_WAITING_KILL_TIME error2=$? if [ $error2 -ne 0 -a $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios process was removed with SIGKILL." elif [ $error2 -eq 0 -a $DEBUG -gt 0 ]; then echo "$PREFIX_ERROR It wasn t possible to remove nagios process with SIGKILL." \ elif [ $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios process was removed." function solution_launch_nagios() launch_nagios error3=$? if [ $error3 -ne 0 ]; then echo "$PREFIX_ERROR It wasn t possible to start nagios process." \ seek_nagios_external_le error4=$? if [ $error4 -eq 0 ]; then if [ $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING It s necessary to remove the nagios external \ command le." remove_nagios_external_le seek_nagios_external_le error5=$? if [ $error5 -ne 0 ]; then if [ $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios external command le was deleted." \ launch_nagios error6=$? if [ $error6 -eq 0 -a $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios process started." elif [ $error6 -ne 0 -a $DEBUG -gt 0 ]; then echo "$PREFIX_ERROR It wasn t possible to start nagios process." \ el echo "$PREFIX_ERROR It wasn t possible to delete nagios external command \ le." el echo "$PREFIX_ERROR It wasn t possible to start nagios process for an unknown \ reason." elif [ $DEBUG -gt 1 ]; then echo "$PREFIX_WARNING Nagios process was started." 10

** #Test if nagios process is running OK on the local machine* ** error7=$? if [ $error7 -eq 0 ]; then echo "$PREFIX_INFO The local host is running nagios." #Test if nagios process is running OK on the remote host* check_remote_nagios error9=$? if [ $error9 -eq 0 ]; then echo "$PREFIX_INFO The remote host is running nagios." ********** #Test if nagios mysql data base is running OK on the local machine* ********** check_local_mysql error8=$? if [ $error8 -ne 0 ]; then echo "$PREFIX_ERROR The local data base isn t running." solution_kill_nagios else echo "$PREFIX_INFO The local data base is running." else ******** #Test if nagios mysql data base is running OK on the remote host* ******** check_remote_mysql error10=$? if [ $error10 -eq 0 ]; then echo "$PREFIX_INFO The remote data base is running." solution_kill_nagios el echo "$PREFIX_ERROR The remote data base isn t running." el echo "$PREFIX_INFO The remote host isn t running nagios." echo "$PREFIX_INFO The local host isn t running nagios." #Test if nagios process is running OK on the remote host* check_remote_nagios error11=$? if [ $error11 -eq 0 ]; then echo "$PREFIX_INFO The remote host is running nagios." ********** #Test if nagios mysql data base is running OK on the local machine* ********** check_local_mysql error12=$? if [ $error12 -eq 0 ]; then echo "$PREFIX_INFO The local data base is running." ******** #Test if nagios mysql data base is running OK on the remote host* ******** check_remote_mysql error13=$? if [ $error13 -ne 0 ]; then 11

$DEBUG_FILE else echo "$PREFIX_ERROR The remote data base isn t running." >> \ solution_launch_nagios el echo "$PREFIX_INFO The remote data base is running." el echo "$PREFIX_ERROR The local data base isn t running." echo "$PREFIX_INFO The remote host isn t running nagios." solution_launch_nagios #****************************************************** #Test if nrpe is running on the local and remote hosts* #****************************************************** $CHECK_NRPE -H localhost error14=$? if [ $error14 -ne 0 ]; then echo "$PREFIX_ERROR The local host isn t running the NRPE daemon." $CHECK_NRPE -H $REMOTE_MASTER_HOST error15=$? if [ $error15 -ne 0 ]; then echo "$PREFIX_ERROR The remote host isn t running the NRPE daemon." Ricardo David Martins davidmar<at>medicinachinesa<dot>com 12