Tuesday, April 27, 2010

Alert System menggunakan email

Untuk melakukan monitoring berbagai perangkat dan atau server, bisa menggunakan fasilitas email. Jika ada perangkat atau server yang mati atau down, mail server secara otomatis akan mengirim email kepada orang-orang tertentu. Dalam kesempatan ini akan diumpamakan untuk menantau Proxy Server di Pasar Jum'at. Layanan di mail server yang bisa dimanfaatkan untuk kepentingan ini adalah fasilitas crontab, sebuah fasilitas yang berjalan secara periodik sesuai keinginan kita.

Isi file /etc/crontab adalah :

# /etc/crontab - root's crontab for FreeBSD
#
# $FreeBSD: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $
#
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#
#minute hour mday month wday who command
#
*/5 * * * * root /usr/libexec/atrun
#*/5 * * * * root /root/online.sh
5 * * * * root /root/online.sh
#
# Save some entropy so that /dev/random can re-seed on boot.
*/11 * * * * operator /usr/libexec/save-entropy
#
# Rotate log files every hour, if necessary.
0 * * * * root newsyslog
#
# Perform daily/weekly/monthly maintenance.
1 3 * * * root periodic daily
15 4 * * 6 root periodic weekly
30 5 1 * * root periodic monthly
# wenr, 17Des2008, Rahman, gue comment -out dulu nih..
#01 01 * * 4 root /etc/etc.sh

#
# Adjust the time zone if the CMOS clock keeps local time, as opposed to
# UTC time. See adjkerntz(8) for details.
1,31 0-5 * * * root adjkerntz -a
#01 * * * * root /etc/backup_cpns2007.sh
# cek router proxy server setiap jam by MSM at 8 Nop 2009
0 * * * * root /root/router_srp.sh
1 * * * * root /root/router_kpb.sh
2 * * * * root /root/router_psj.sh
3 * * * * root /root/proxy_srp.sh
4 * * * * root /root/proxy_kpb.sh
5 * * * * root /root/proxy_psj.sh
6 * * * * root /root/server_www.sh
7 * * * * root /root/server_digilib.sh
8 * * * * root /root/server_nhc.sh
#9 * * * * root /root/server_cctv.sh
10 * * * * root /root/server_nms.sh

Karena fokus kita hanya akan memantau Proxy Server di Pasar Jum'at, maka cukup perhatikan salah satu baris di file /etc/crontab, yaitu baris :

5 * * * * root /root/proxy_psj.sh

Selanjutnya, mari kita coba lihat isi file /root/proxy_psj.sh. Isi file ini adalah :

#!/bin/sh
# proxy.sh - skrip untuk cek keberadaan proxy server
for x in `cat /root/proxy_psj_ip.txt`
do
if ping -c 1 $x >/dev/null 2>&1;
then
echo do nothing
else
mail -s SOS_Proxy_PSJ_DOWN msmunir@batan.go.id,sulasno@batan.go.id < /root/proxy_psj_pesan.txt fi done

Selanjutnya lihat juga file /root/proxy_psj_ip.txt dan file /root/proxy_psj_pesan.txt. Isi file /root/proxy_psj_ip.txt adalah alamat IP yang akan dipantau, yaitu :
202.46.3.114

Isi file /root/proxy_psj_pesan.txt adalah pesan yang akan dikirmkan via email, atau isi dari body email. Kira-kira isinya adalah sbb :

Pesan ini dikirim secara otomatis bila ada proxy yang DOWN.
Mohon Kasubbid SK segera lakukan pengecekan dan perbaikan
seperlunya terhadap proxy yang tidak berfungsi tersebut.
Proxy yang perlu diperiksa :
202.46.3.114 : proxy psjumat2
Terima kasih atas kerjasamanya.
Admin BATANnet

Tampak dari penjelasan di atas, bahwa untuk menatau sebuah server, ada 4 file yang terkait yang perlu diperhatikan, yaitu :
  1. /etc/crontab
  2. /root/proxy_psj.sh
  3. /root/proxy_psj_ip.txt
  4. /root/proxy_psj_pesan.txt
Penjelasan ini diperlukan manakala ada server yang berganti IP Address, ganti orang yang akan diberi email otomatis, menambah pesan dalam body email, dll. Untuk mengetahui sintak crontab, silahkan lihat informasi di manual dengan cara mengetikkan perintah baris "man crontab" atau lihat di http://adminschoice.com/crontab-quick-reference.

Semoga bermnafaat.

No comments:

Post a Comment