nagios check memory used sub

Hướng dẫn sử dụng Nagios check memory used

Nagios check memory used?

Nagios check memory used là việc sử dụng một file script để kiểm tra tình trạng hoat động của memory(RAM) trên server. Qua đó sẽ cho ta biết các thông tin về tổng số memory server, số memory đã sử dụng. Kiểm tra memory trên server cũng là một việc quan trọng, giúp server hoạt động ổn định và trơn tru.

Bài viết trước mình đã hướng dẫn các bạn cách kiểm tra service của postgresqlodoo instance. Bài viết này sẽ tiếp tục hướng dẫn các bạn cách sử dụng Nagios check memory used.

Hướng dẫn thực hiện.

1. Trên server cần kiểm tra memory.

Bạn tải file check_mem tại đây và bỏ vào thư mục /usr/local/nagios/libexec/

Hoặc bạn có thể tạo file check_mem trong thư mục /usr/local/nagios/libexec/ và thêm vào nội dung sau:

#!/bin/bash
if [ "$1" = "-w" ] && [ "$2" -gt "0" ] && [ "$3" = "-c" ] && [ "$4" -gt "0" ]; then
FreeM=`free -m`
memTotal_m=`echo "$FreeM" |grep Mem |awk '{print $2}'`
memUsed_m=`echo "$FreeM" |grep Mem |awk '{print $3}'`
memFree_m=`echo "$FreeM" |grep Mem |awk '{print $4}'`
memBuffer_cache_m=`echo "$FreeM" |grep Mem |awk '{print $6}'`
memAvailable_m=`echo "$FreeM" |grep Mem |awk '{print $7}'`
memUsed_m=$(($memTotal_m-$memFree_m-$memBuffer_cache_m))
memUsedPrc=`echo $((($memUsed_m*100)/$memTotal_m))||cut -d. -f1`
if [ "$memUsedPrc" -ge "$4" ]; then
echo "Memory: CRITICAL Total: $memTotal_m MB - Used: $memUsed_m MB - $memUsedPrc% used!|TOTAL=$memTotal_m;;;; USED=$memUsed_m;;;; BUFFER/CACHE=$memBuffer_cache_m;;;; AVAILABLE=$memAvailable_m;;;;"
exit 2
elif [ "$memUsedPrc" -ge "$2" ]; then
echo "Memory: WARNING Total: $memTotal_m MB - Used: $memUsed_m MB - $memUsedPrc% used!|TOTAL=$memTotal_m;;;; USED=$memUsed_m;;;; BUFFER/CACHE=$memBuffer_cache_m;;;; AVAILABLE=$memAvailable_m;;;;"
exit 1
else
echo "Memory: OK Total: $memTotal_m MB - Used: $memUsed_m MB - $memUsedPrc% used|TOTAL=$memTotal_m;;;; USED=$memUsed_m;;;; BUFFER/CACHE=$memBuffer_cache_m;;;; AVAILABLE=$memAvailable_m;;;;"
exit 0
fi
else # If inputs are not as expected, print help.
sName="`echo $0|awk -F '/' '{print $NF}'`"
echo -e "\n\n\t\t### $sName Version 2.1###\n"
echo -e "# Usage:\t$sName -w -c "
echo -e "\t\t= warnlevel and critlevel is percentage value without %\n"
echo "# EXAMPLE:\t/usr/lib64/nagios/plugins/$sName -w 80 -c 90"
echo -e "\nCopyright (C) 2012 Lukasz Gogolin (lukasz.gogolin@gmail.com), improved by Nestor 2015\n\n"
exit
fi

Chỉnh sữa file nrpe.cfg.

Tìm đến file usr/local/nagios/etc/nrpe.cfg

Bên dưới dòng # The following examples use hardcoded command arguments… 

Bạn thêm nội dung sau:

command[check_mem]=/usr/local/nagios/libexec/check_mem -w 90 -c 95

Chú thích:

[check_mem] là tên mình sẽ gọi trên Nagios Monitoring Server.
check_mem là tên file script mình tạo.
-w 90 là nagios sẽ đưa ra cảnh báo warning khi lượng memory sử dụng trên 90%.
-c 95 là nagios sẽ đưa ra cảnh báo critical khi lượng memory sử dụng trên 95%.

2. Cài đặt trên Nagios Monitoring Server.

Chỉnh sữa file service.cfg nằm trong usr/local/nagios/etc/service.cfg

Thêm vào nội dung sau:

define service {
use                     generic-service
host_name               codegiday
service_description     Check RAM
check_command                 check_nrpe!check_mem
notifications_enabled          1
}

Restart service Nagios.

service nagios restart

Kiểm tra hoạt động.

http://ip-server-nagios/nagios

Kết luận:

Mình vừa giới thiệu đến các bạn cách kiểm tra Ram sử dụng vào Nagios Monitoring Server. Các bạn có thắc mắc gì có thể để lại comment chia sẽ bên dưới. Nếu bài viết có nhiều sai sót xin các bạn góp ý
Cảm ơn các bạn theo dõi.

Trả lời

Thư điện tử của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

three × 3 =