Monday, September 3, 2012

How To Monitor Remote Linux Host using Nagios


I this article I’ll explain how to monitor a remote Linux host and the various services running on the remote host.
  

6 steps to install Nagios plugin and NRPE on remote host.

  1. Download Nagios Plugins and NRPE Add-on
  2. Create nagios account
  3. Install Nagios Plugins
  4. Install NRPE
  5. Setup NRPE to run as daemon
  6. Modify the /usr/local/nagios/etc/nrpe.cfg

4 Configuration steps on the Nagios monitoring server to monitor remote host:

  1. Download NRPE Add-on
  2. Install check_nrpe
  3. Create host and service definition for remote host
  4. Restart the nagios service

Overview:

Following three steps will happen on a very high level when Nagios (installed on the nagios-servers) monitors a service (for e.g. disk space usage) on the remote Linux host.
  1. Nagios will execute check_nrpe command on nagios-server and request it to monitor disk usage on remote host using check_disk command.
  2. The check_nrpe on the nagios-server will contact the NRPE daemon on remote host and request it to execute the check_disk on remote host.
  3. The results of the check_disk command will be returned back by NRPE daemon to the check_nrpe on nagios-server.
Following flow summarizes the above explanation:

 Nagios Server (check_nrpe) —–> Remote host (NRPE deamon) —–> check_disk

Nagios Server (check_nrpe) <—– Remote host (NRPE deamon) <—– check_disk (returns disk space usage)

II.7 steps to install Nagios Plugins and NRPE on the remote host

1. Download Nagios Plugins and NRPE Add-on
 
Download following files from Nagios.org and move to /home/downloads:
  • nagios-plugins-1.4.11.tar.gz
  • nrpe-2.12.tar.gz

2. Create nagios account
[remotehost]# useradd nagios
[remotehost]# passwd nagios

3. Install nagios-plugin
[remotehost]# cd /home/downloads
[remotehost]# tar xvfz nagios-plugins-1.4.11.tar.gz
[remotehost]# cd nagios-plugins-1.4.11
[remotehost]# export LDFLAGS=-ldl
[remotehost]# ./configure --with-nagios-user=nagios --with-nagios-group=nagios --enable-redhat-pthread-workaround
[remotehost]# make
[remotehost]# make install
[remotehost]# chown nagios.nagios /usr/local/nagios
[remotehost]# chown -R nagios.nagios /usr/local/nagios/libexec/

4. Install NRPE
[remotehost]# cd /home/downloads
[remotehost]# tar xvfz nrpe-2.12.tar.gz
[remotehost]# cd nrpe-2.12
[remotehost]# ./configure
[remotehost]# make all
[remotehost]# make install-plugin
[remotehost]# make install-daemon
[remotehost]# make install-daemon-config
[remotehost]# make install-xinetd

5. Setup NRPE to run as daemon (i.e as part of xinetd):
Modify the /etc/xinetd.d/nrpe to add the ip-address of the Nagios monitoring server to the only_from directive. Note that there is a space after the 127.0.0.1 and the nagios monitoring server ip-address (in this example, nagios monitoring server ip-address is: 192.168.1.2)
       only_from       = 127.0.0.1 192.168.1.2

Modify the /etc/services and add the following at the end of the file.
       nrpe 5666/tcp # NRPE

Start the service
       [remotehost]#service xinetd restart

Verify whether NRPE is listening
       [remotehost]# netstat -at | grep nrpe
       tcp 0      0 *:nrpe *:*                         LISTEN

Verify to make sure the NRPE is functioning properly
[remotehost]# /usr/local/nagios/libexec/check_nrpe -H localhost
NRPE v2.12

6. Modify the /usr/local/nagios/etc/nrpe.cfg
The nrpe.cfg file located on the remote host contains the commands that are needed to check the services on the remote host. By default the nrpe.cfg comes with few standard check commands as samples. check_users and check_load are shown below as an example.

command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20

 In all the check commands, the “-w” stands for “Warning” and “-c” stands for “Critical”. for e.g. in the check_disk command below, if the available disk space gets to 20% of less, nagios will send warning message. If it gets to 10% or less, nagios will send critical message. Change the value of “-c” and “-w” parameter below depending on your environment.

command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/hda1

Note: You can execute any of the commands shown in the nrpe.cfg on the command line on remote host and see the results for yourself. For e.g. When I executed the check_disk command on the command line, it displayed the following:

[remotehost]#/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/hda1
DISK CRITICAL - free space: / 6420 MB (10% inode=98%);| /=55032MB;51792;58266;0;64741
 
 
 In the above example, since the free disk space on /dev/hda1 is only 10% , it is displaying the CRITICAL message, which will be returned to nagios server.

III. 4 Configuration steps on the Nagios monitoring server to monitor remote host:

1. Download NRPE Add-on
Download nrpe-2.12.tar.gz from Nagios.org and move to /home/downloads:

2. Install check_nrpe on the nagios monitoring server
[nagios-server]# tar xvfz nrpe-2.12.tar.gz
[nagios-server]# cd nrpe-2.1.2
[nagios-server]# ./configure
[nagios-server]# make all
[nagios-server]# make install-plugin
./configure will give a configuration summary as shown below:
*** Configuration summary for nrpe 2.12 05-31-2008 ***:
General Options:
————————-
NRPE port: 5666
NRPE user: nagios
NRPE group: nagios
Nagios user: nagios
Nagios group: nagios

Note: I got the “checking for SSL headers… configure: error: Cannot find ssl headers” error message while performing ./configure. Install openssl-devel as shown below and run the ./configure again to fix the problem.

[nagios-server]# rpm -ivh openssl-devel-0.9.7a-43.16.i386.rpm krb5-devel-1.3.4-47.i386.rpm zlib-devel-1.2.1.2-1.2.i386.rpm e2fsprogs-devel-1.35-12.5.
el4.i386.rpm
warning: openssl-devel-0.9.7a-43.16.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing… ########################################### [100%]
1:e2fsprogs-devel ########################################### [ 25%]
2:krb5-devel ########################################### [ 50%]
3:zlib-devel ########################################### [ 75%]
4:openssl-devel ########################################### [100%]

Verify whether nagios monitoring server can talk to the remotehost.
[nagios-server]#/usr/local/nagios/libexec/check_nrpe -H 192.168.1.3
NRPE v2.12

Note: 192.168.1.3 in the ip-address of the remotehost where the NRPE and nagios plugin was installed as explained above.

3. Create host and service definition for remotehost

Create a new configuration file /usr/local/nagios/etc/objects/remotehost.cfg to define the host and service definition for this particular remotehost. It is good to take the localhost.cfg and copy it as remotehost.cfg and start modifying it according to your needs.

 host definition sample:

define host{
use linux-server
host_name remotehost
alias Remote Host
address 192.168.1.3
contact_groups admins
}
 
 
Service definition sample:

define service{
use generic-service
service_description Root Partition
contact_groups admins
check_command check_nrpe!check_disk
}

Note: In all the above examples, replace remotehost with the corresponding hostname of your remotehost.
Dont forget to include
 cfg_file=/usr/local/nagios/etc/objects/remotehost.cfg
 in /usr/local/nagios/etc/nagios.cfg

4. Restart the nagios service
Restart the nagios as shown below and login to the nagios web (http://nagios-server/nagios/) to verify the status of the remotehost linux sever that was added to nagios for monitoring.
[nagios-server]# service nagios reload

Troubleshooting:

On Red Hat, For me the ./configure command was hanging with the the message: “checking for redhat spopen problem…”. Add --enable-redhat-pthread-workaround to the ./configure command as a work-around for the above problem.

 You may also modify commands.cfg to add check_nrpe that was not by default in that file.

 # ‘check_nrpe’ command definition
 define command{
 command_name check_nrpe
 command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$
 }


 add the following in /objects/commands.cfg of the Nagios server. 

define command{
 command_name check_nrpe
 command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
 }





1 comment:

  1. من الخدمات التي لا تقل أهمية عن كافة الخدمات التي تقدمها شركة تنظيف بالبخار بالرياض https://wp.me/Pa9yzo-vq هي تنظيف موكيت ,ولأننا جميعاً نعلم أن الموكيت سهل التلف للغاية إذا تم غسله أو تنظيفه بطريقة غير صحيحة فتقوم شركتنا بتوفير هذه الخدمة على قدر عالي من الجودة باستخدام أجهزة تنظيف بالبخار على أعلى مستوى حتى يعود الموكيت نظيفاً وجديداً بدون أي تلف أو خسائر. .… اقرأ المزيد

    المصدر: شركة تنظيف بالبخار بالرياض

    افضل شركة نقل اثاث برابغ https://wp.me/Pa9yzo-1rV طرق نقل العفش برابغ ؟
    تتمكن الشركة من القيام بأعمال نقل العفش برابغ اعتمادا على مجموعه من أفضل الطرق والأساليب ؛فقط يمكن الحديث عن أبرز الطرق :

    1-الاعتماد على الأوناش الحديثة
    تعتبر الأوناش الحديثة سواء الكهربية والهيدرليكية من أهم الأساليب المعتمد عليها فى أعمال نقل العفش ؛تلك الأوناش تتمكن من الوصول الى الأماكن الاكثر ارتفاعا بسهوله كبيرة ويتم الوصول الى النوافذ والقيام بأعمال نقل صحيحة ومميزة ؛فالأوناش توفر الوقت والجهد للقيام بأعمال النقل دون تعرض الاثاث لأى خدوش أو تكسير .

    يتم التوجه الى الأوناش بسبب ضيق حجم المنزل وعدم القدرة على نقل الاثاث بالطرق اليدوية ؛وأيضا كبر حجم الاثاث من الطرق التى تصعب من القيام بأعمال النقل بالطريقة الصحيحة ؛لذلك تعتبر الأوناش أفضل الوسائل المعتمد عليها ؛وتأخذ شركة نقل اثاث بالرياض فى اعتبارها القيام بأعمال صيانة سريعه ومميزة منعا للتعرض لأى تلفيات أو مشكلات أو مخاطر لأى عاملين يعتمدون على الأوناش فى القيام بالنقل.

    2-الاعتماد على السيارات الحديثة
    تعتمد شركة نقل عفش برابغ على مجموعه من السيارات الحديثة ذات الأحجام المختلفه من أجل القيام بأعمال نقل العفش بطريقه صحيحة ؛تلك السيارات تم اعدادها خصيصا من أجل القيام بنقل العفش من مكان الى مكان أخر ؛تلك السيارات لها مجموعه من الأغطية التى تحمى الأثاث بمختلف أشكاله من التعرض للأتربه أو الشوائب أو العوالق الخطيرة ؛كما أن الاثاث سرعان ما يتعرض للأمطار الغزيرة خلال فصل الشتاء .

    تلك السيارات تتمكن من القيام بأعمال نقل العفش من مكان الى مكان أخر ؛كما تتمكن الشركة من الانتقال الى كافه الأماكن واختيار الطرق الممهدة .

    3-الاعتماد على الناقلات
    تعتمد الشركة على مجموعه من أفضل الناقلات الحديثة التى تتمكن من تحمل جميع الأوزان ؛والحفاظ على سلامة المنقولات من مكان الى مكان أخر دون تعرض الاثاث لأى خدوش أو عوالق خطيرة .

    خطوات القيام بأعمال نقل العفش برابغ
    1-أعمال تعبئة العفش
    تعتمد الشركة على مجموعه من أفضل أدوات التعبئة والعلب الكرتونية والحاويات المختلف مساحاتها من أجل القيام بأعمال تعبئة صحيحة تساعد على حمايه الاثاث أو العفش من التعرض للعديد من الكسور والخدوش بأشكالها المختلفه .

    2-أعمال فك وتركيب الاثاث
    هذه الطريقه من أحدث الأساليب المعتمد عليها من أجل نقل الاثاث بطريقه صحيحة منعا للتعرض لأى خدوش أو تلفيات ؛لذلك يتم تفكيك قطع الاثاث الى قطع صغيرة ويتم ترقيمه بأرقام محددة مما يساعد الأمر على سهوله نقله من مكان الى مكان أخر وتركيبه مرة أخرى بعد التفكيك  ؛لذلك يتم ترتيب العفش بطريقه صحيحة داخل السيارات من أجل سهوله نزوله مرة أخرى .

    3-أعمال تغليف الاثاث
    تتمكن شركة نقل اثاث برابغ من القيام بأعمال تغليف الاثاث اعتمادا على مجموعه من الأدوات المميزة سواء البطاطين السميكة التى تساعد على حمايه الاثاث من التعرض لأى خدوش أو قطع ؛كما يتم الاعتماد على فريق عمل مميز من أفضل العاملين المتخصصين اللذين لديهم خبرات واسعه فى اختيار أفضل أدوات التغليف من أجل حمايه الاثاث من التعرض للمزيد من الخدوش أو التلفيات أو القطع .

    4-أعمال تخزين العفش
    تعتمد شركة نقل عفش برابغ على مجموعه من أفضل أماكن التخزين سواء مجموعه من المخازن أو المستودعات الكبرى التى تمكن الأفراد من القيام بأعمال التخزين لكافه أشكال الاثاث مهما بلغت أوزانها أو أحجامها .… اقرأ المزيد

    المصدر: شركة نقل اثاث برابغ

    ReplyDelete