veya Critical durumlarında SMS ve mail atabilme özelliğine sahiptir.
Bu yazıda postfix olmadan SMTP üzerinden mail gönderimi anlatılacaktır.
Önceki yazılarda Nagios kurulumu ve konfigürasyon dosyalarının ayarlamaları anlatılmıştı
onların yapıldığı varsayılıp aşağıdaki adımlar anlatılacaktır.
Öncelikle mail gönderimi için kullanacağımız Perl diliyle yazılmış sendEmail'i indiriyoruz.
- wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
- tar xvf sendEmail-v1.56.tar.gz
tar.gz'den çıkardığımız sendEmail'i bin klasörünün altına kopyalıyoruz.
- cp /root/sendEmail-v1.56/sendEmail /usr/local/bin/
sendEmail adında bir log dosyası oluşturup gerekli yetkilendirmeleri veriyoruz.
- touch /var/log/sendEmail
- chmod 666 /var/log/sendEmail
Sırada adım Nagios'un resource.cfg dosyasındaki SMTP konfigürasyonlarını düzenlemek.
- vim /usr/local/nagios/etc/resource.cfg
# From olarak gozuken adres
$USER5$=nagios@yunustech.com# SMTP server$USER7$=owa.smtpAdres.com
Nagios'un contacts.cfg konfigürasyon dosyasındaki alıcı/admin email adresini düzeltelim.
- vim /usr/local/nagios/etc/objects/contacts.cfg
Şimdiyse Nagios'a command olarak sendEmail'i kullanarak Warning ve Critical durumlarında mail
atma olayını ekleyeceğiz.
- vim /usr/local/nagios/etc/objects/commands.cfg
dosyasındaki notify-host-by-email ve notify-service-by-email olarak tanımlanmış command'ları
aşağıdaki gibi değiştirmemiz gerekmektedir.
# 'notify-host-by-email' command definitiondefine command{command_name notify-host-by-emailcommand_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type:$NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo:$HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/local/bin/sendEmail -s $USER7$ -t$CONTACTEMAIL$ -f $USER5$ -l /var/log/sendEmail -u "** $NOTIFICATIONTYPE$ Host Alert:$HOSTNAME$ is $HOSTSTATE$ **" -m "***** Nagios *****\n\nNotification Type:$NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo:$HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n"}# 'notify-service-by-email' command definitiondefine command{command_name notify-service-by-emailcommand_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type:$NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress:$HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditionalInfo:\n\n$SERVICEOUTPUT$" | /usr/local/bin/sendEmail -s $USER7$ -t $CONTACTEMAIL$ -f$USER5$ -l /var/log/sendEmail -u "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" -m "***** Nagios *****\n\nNotification Type:$NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress:$HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditionalInfo:\n\n$SERVICEOUTPUT$"}
- vim /usr/local/nagios/etc/objects/commands.cfg
Yapacağımız konfigürasyonlar bu kadar şimdi hata var mı diye kontrol edelim.
- /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Gibi bir sonuç aldıysanız SMTP üzerinden mail gönderme işlemi sorunsuz hallolmuş demektir. Nagios servisini yeniden başlatıp işlemleri sonlandırabilirsiniz.
- service nagios restart
Hiç yorum yok:
Yorum Gönder