Successfully reported this slideshow.

Nms with-nagios

549 views

Published on

  • Be the first to comment

  • Be the first to like this

Nms with-nagios

  1. 1. By Henry Saptono <henry[at]nurulfikri.com>Network Monitoring System dengan Nagios By Henry Saptono <henry[at]nurulfikri.com>April 2008PendahuluanKonsep Network Monitoring System (NMS) sebenarnya sederhana yaitu system ekstra atau kumpulan system yang memiliki tugas mengamati/memonitor system­system terhadap kemungkinan terjadinya masalah­masalah pada system tersebut untuk dapat dideteksi secara dini. Sebagai contoh, suatu monitoring system dapat secara periodic menghubungi suatu web server untuk menjamin adanya respon dari web server, jika tidak ada respon maka monitoring system kemudian mengirimkan pesan atau notifikasi ke administrator. NMS bagian dari network management. Jika NMS diterapkan dengan tepat dan benar maka NMS dapat menjadi sahabat baik Anda, namun jika sebaliknya maka NMS akan menjadi malapetaka bagi Anda. Misalkan , NMS tentunya akan mengirimkan pesan/notifikasi ke email Anda atau mengirimkan pesan SMS ke HP Anda ketika terjadi suatu masalah atau ketika terjadi  krisis pada suatu system yang dimonitor. Jika Anda tidak tepat dalam menentukan kriteria krisis dari suatu system yang dimonitor  maka bisa jadi Anda akan mendapatkan email atau pesan SMS terus menerus dari NMS. Hal­hal yang bakal dimonitoring dalam network  tentunya akan sangat kompoleks, dan sistem monitoring yang baik seharusnya menyediakan hi tory dan log yang memungkinkan kita membuat  slaporan, statistik dan graph dari masing­masing object yang dimonitoring sehingga sistem NMS yang digunakan memberikan kontribusi penuh dalam pendeteks ian secara dini terhadap kemungkinan masalah­masalah yang timbul. Pertanyaan yang muncul adalah, adakah software atau program NMS yang memiliki fitur­fitur tersebut. Jawabannya Ada, salah satu software NMS yang terbaik dan open source yang dapat digunakan secara bebas di linux yaitu nagios (http://www.nagios.org/) Network Monitoring System dengan Nagios   ­ halaman 1
  2. 2. By Henry Saptono <henry[at]nurulfikri.com>Nagios NMSNagios adalah tool network monitoring system open source yang terbaik. Nagios bersifat modular, mudah digunakan, dan memiliki skalablitas tinggi. Modul atau plugin pada nagios sangat simple Anda pun dapat membuatnya guna melengkapi system checking pada nagios sesuai dengan kebutuhan Anda. Untuk mendownload source nagios klik url ini http://www.nagios.org/download/Nagios awalnya didesain untuk berjalan pada sistem operasi  Linux, namun dapat juga berjalan dengan baik hampir disemua  sistem operasi unix like.Beberapa fitur­fitur yang tersedia pada Nagios diantaranya adalah:  • Monitoring of network services (SMTP, POP3, HTTP, NNTP, PING, etc.)  • Monitoring of host resources (processor load, disk usage, etc.)  • Simple plugin design that allows users to easily develop their own service checks  • Parallelized service checks  • Ability to define network host hierarchy using "parent" hosts, allowing detection of and  distinction between hosts that are down and those that are unreachable  • Contact notifications when service or host problems occur and get resolved (via email, pager,  or user­defined method)  • Ability to define event handlers to be run during service or host events for proactive problem  resolution  • Automatic log file rotation  • Support for implementing redundant monitoring hosts  • Optional web interface for viewing current network status, notification and problem history,  log file, etc. Instalasi NagiosSebelum memulai instalasi pastikan Anda telah mendownload paket nagios dan pluggin yang terbaru dan paling stabil di http://www.nagios.org/download. Kemudian Anda harus terlebih dahulu menginstal aplikasi Apache HTTP server dan GD library serta library lainnya yang dibutuhkan saat instalasi dan saat nagios dijalankan nantinya. Sistem operasi linux yang digunakan disini diasumsikan Anda menggunakan Linux Fedora 6 atau CentOS 5. Berikut ini instruksi­instruksi instalasi nagios pada Fedora Core 6 (umumnya untuk distro lainnya tidak berbeda jauh): ● Membuat user dan group nagios, sebagai berikut: [root@labtop1 ~]# useradd -s /bin/false -d /opt/nagios nagios Network Monitoring System dengan Nagios   ­ halaman 2
  3. 3. By Henry Saptono <henry[at]nurulfikri.com> ● Membuat grup baru dengan nama nagcmd untuk memungkinkan external commands di  submit melalui web interface. Tambahkan user nagios dan user apache ke group nagcmd.  [root@labtop1 ~]#groupadd nagcmd [root@labtop1 ~]#usermod -G nagcmd nagios [root@labtop1 ~]# usermod -G nagcmd apache ● Download nagios  versi 3.0.1 (atau yang terbaru dan stabil), begitu juga plugin nagios versi  1.4.11 dari url ini http://www.nagios.org/download  ● Kemudian Ekstrak nagios sebagai berikut (diasumsikan nagios hasil download ada di  /root/Desktop) [root@labtop1 ~]# tar -xzvf /root/Desktop/nagios-3.0.1.tar.gz ● Selanjutnya mengkompilasi nagios sebagai berikut,[root@labtop1 ~]# cd nagios-3.0.1[root@labtop1 nagios-3.0.1]# ./configure --prefix=/opt/nagios --with-command-group=nagcmd[root@labtop1 nagios-3.0.1]# make all ● Instalasi binaries, init script, contoh file konfi urasi dan menyeting permissions pada direktori  g external command, sebagai berikut; [root@labtop1 nagios-3.0.1]# make install[root@labtop1 nagios-3.0.1]# make install-init[root@labtop1 nagios-3.0.1]# make install-config[root@labtop1 nagios-3.0.1]# make install-commandmodeSampai disini jangan dulu menjalankan nagios, karena masih ada beberapa hal yang harus dilakukan.Konfigurasi nagiosPada saat instalasi diatas semua sample file konfigurasi nagios dikopikan ke direktori /opt/nagios/etc. Dengan sample file konfigurasi ini seharusnya nagios su dah dapat berjalan, hanya saja mungkin Anda perlu mengkustomisasi file konfigurasi tersebut agar lebih sesuai dengan skenario dan kebutuhan Anda. Yang perlu diedit diantaranya adalah file /opt/nagios/etc/objects/contacts.cfg, pada file ini Anda dapat mendefinisikan ulang informasi mengenai contact dan contactgroup . Berikut ini contoh isi file konfigurasi  /opt/nagios/etc/objects/contacts.cfgdefine contact{ Network Monitoring System dengan Nagios   ­ halaman 3
  4. 4. By Henry Saptono <henry[at]nurulfikri.com> contact_name nagiosadmin ; Short name of user use generic-contact ; Inherit default valuesfrom generic-contact template (defined above) alias Nagios Admin ; Full name of user email root@localhost; <<** isi dengan email Anda }define contactgroup{ contactgroup_name admins alias Nagios Administrators members nagiosadmin } ● Konfigurasi interface web. Menginstal file konfigurasi web nagios kedalam direktori  /etc/httpd/conf.d dengan cara sebagai berikut:[root@labtop1 nagios-3.0.1]# make install-webconf ● Membuat user account nagiosadmin untuk dapat login ke interface web nagios :[root@labtop1 nagios-3.0.1]# htpasswd -c /opt/nagios/etc/htpasswd.users nagiosadmin ● Kemudian restart service apache http server agar membaca konfigurasi yang terbaru[root@labtop1 nagios-3.0.1]# service httpd restartatau[root@labtop1 nagios-3.0.1]# /etc/init.d/httpd restartKompilasi dan instalasi nagios plugin ● Ekstrak nagios plugin sebagai berikut (diasumsikan nagios plugin  hasil download ada di  /root/Desktop)[root@labtop1 ~]# tar -xzvf /root/Desktop/nagios-plugins-1.4.11.tar.gz ● Selanjutnya mengkompilasi dan menginstal nagios sebagai berikut,[root@labtop1 ~]# cd nagios-plugins-1.4.11[root@labtop1 nagios-plugins-1.4.11]#./configure –prefix=/opt/nagios --with-nagios-user=nagios –with-nagios-group=nagios[root@labtop1 nagios-plugins-1.4.11]# make[root@labtop1 nagios-plugins-1.4.11]# make install Network Monitoring System dengan Nagios   ­ halaman 4
  5. 5. By Henry Saptono <henry[at]nurulfikri.com>Mengaktifkan nagios Tambahkan atau daftarkan Nagios kedalam daftar system service dan set nagios agar diaktifkan secara  otomatis saat booting. [root@labtop1 ~]# chkconfig --add nagios[root@labtop1 ~]# chkconfig nagios onVerifikasi atau periksa file konfigurasi. [root@labtop1 ~]# /opt/nagios/bin/nagios -v /opt/nagios/etc/nagios.cfgJika dari verifikasi tidak ada pesan error, selanjutnya aktifkan Nagios. [root@labtop1 ~]# service nagios startSelanjutnya Anda dapat mengakses inteface web nagios menggunakan web client dengan url http://localhost/nagios/ maka Anda akan mendapati window login seperti gambar 1 berikut: Gambar 1. Window pop up untuk  login ke nagios webKemudian jika berhasil login maka Anda akan mendapati halaman utama nagios web seperti pada gambar 2. Network Monitoring System dengan Nagios   ­ halaman 5
  6. 6. By Henry Saptono <henry[at]nurulfikri.com> Gambar 2. halaman utama nagios web Pada halaman utama nagios web anda akan melihat daftar menu yang berada pada bagian kiri, setiap menu menampilkan informasi tentang status host­host yang dimonitor. Misalkan kita mencoba mengakses menu Host Detail untuk melihat informasi detail host yang dimonitor, seperti tampak pada gambar 3 (karena Anda menggunakan default sample config nagios maka Anda hanya akan melihat sebuah host yaitu localhost). Gambar 4 memperlihatkan halaman Status map semua host yang dimonitoring.  Network Monitoring System dengan Nagios   ­ halaman 6
  7. 7. By Henry Saptono <henry[at]nurulfikri.com> Gambar 3. halaman host detail nagios web  Gambar 4. halaman Status map  nagios web  Network Monitoring System dengan Nagios   ­ halaman 7
  8. 8. By Henry Saptono <henry[at]nurulfikri.com>Menambah host yang akan dimonitoringPada konfigurasi default, nagios hanya memonitor sebuah host  yaitu localhost. Tentunya kita akan memonitor juga host lainnya. Untuk memonitor host lainnya Anda harus membuat file konfigurasi monitoring host tersebut. Caranya sebagai berikut: ● Salinlah file konfigurasi untuk monitoring host localhost  sebagai berikut: [root@labtop1 ~]# cp /opt/nagios/etc/objects/localhost.cfg /opt/nagios/etc/objects/serverA.cfg ● Kemudian edit dan sesuaikan konfi urasi yang Anda iniginkan untuk serverA, apa saja  g service yang akan Anda monitoring, contoh kita akan memonitoring serverA (192.168.1.1) ,  service yang akan dimonitoring adalah ping, ssh dan http, dengan konfigurasi sebagai berikut :[root@labtop1 ~]# vi /opt/nagios/etc/objects/serverA.cfg;Ini isi file serverA.cfgdefine host{ use linux-server ; Name of hosttemplate to use ; This hostdefinition will inherit all variables that are defined ; in (or inheritedby) the linux-server host template definition. host_name serverA alias serverA address 192.168.1.1 }define service{ use local-service ; Name ofservice template to use host_name serverA service_description PING check_command check_ping!100.0,20%!500.0,60% }define service{ use local-service ; Name ofservice template to use host_name serverA service_description SSH check_command check_ssh notifications_enabled 0 }define service{ use local-service ; Name ofservice template to use host_name serverA service_description HTTP check_command check_http notifications_enabled 0 Network Monitoring System dengan Nagios   ­ halaman 8
  9. 9. By Henry Saptono <henry[at]nurulfikri.com> } ● Kemudian dengan skenario  ahwa serverA adalah masuk dalam hostgroup linux­servers,  b maka Anda perlu mengedit bagian definisi hostgroup yang ada pada file localhost.cfg dengan  menambahkan serverA sebagai member dari hostgroup linux­server , sebagai berikut:[root@labtop1 ~]# vi /opt/nagios/etc/objects/localhost.cfgdefine hostgroup{ hostgroup_name linux-servers ; The name of the hostgroup alias Linux Servers ; Long name of the group members localhost, serverA ; Comma separated list of hoststhat belong to this group } ● Selanjutnya Anda harus mengedit file /opt/nagios/etc/nagios.cfg, untuk menambahkan entri  konfigurasi host serverA dibawah baris “cfg_file=/opt/nagios/etc/objects/localhost.cfg”,  sehingga menjadi sebagai berikut:# Definitions for monitoring the local (Linux) hostcfg_file=/opt/nagios/etc/objects/localhost.cfgcfg_file=/opt/nagios/etc/objects/serverA.cfg ● Setelah itu Anda verifikasi apakah konfigurasi yang telah Anda lakukan valid atau benar   (tidak ada error), dengan cara sebagai berikut:[root@labtop1 ~]# /opt/nagios/bin/nagios -v /opt/nagios/etc/nagios.cfgNagios 3.0.1Copyright (c) 1999-2008 Ethan Galstad (http://www.nagios.org)Last Modified: 04-01-2008License: GPLReading configuration data...Running pre-flight check on configuration data...Checking services... Checked 11 services.Checking hosts... Checked 2 hosts.Checking host groups... Checked 1 host groups.Checking service groups... Checked 0 service groups.Checking contacts... Checked 1 contacts.Checking contact groups... Checked 1 contact groups.Checking service escalations... Checked 0 service escalations.Checking service dependencies... Network Monitoring System dengan Nagios   ­ halaman 9
  10. 10. By Henry Saptono <henry[at]nurulfikri.com> Checked 0 service dependencies.Checking host escalations... Checked 0 host escalations.Checking host dependencies... Checked 0 host dependencies.Checking commands... Checked 25 commands.Checking time periods... Checked 5 time periods.Checking for circular paths between hosts...Checking for circular host and service dependencies...Checking global event handlers...Checking obsessive compulsive processor commands...Checking misc settings...Total Warnings: 0Total Errors: 0Things look okay - No serious problems were detected during the pre-flightcheck ● Terakhir, Anda harus restart service nagios agar membaca konfigurasi terbaru, sebagai  berikut:[root@labtop1 ~]# service nagios restartRunning configuration check...done.Stopping nagios: done.Starting nagios: done. ● Sekarang coba Anda lihat melalui web browser , pada menu Host Detail atau Service Detail  maka akan tampak seperti gambar 5 dan 6 berikut ini: Network Monitoring System dengan Nagios   ­ halaman 10
  11. 11. By Henry Saptono <henry[at]nurulfikri.com> Gambar 5. Host Detail dengan 2 host dimonitoring  Gambar 6. Service Detail dengan 2 host dimonitoring Network Monitoring System dengan Nagios   ­ halaman 11
  12. 12. By Henry Saptono <henry[at]nurulfikri.com>Untuk menambahkan host lainnya yang akan dimonitor Anda dapat melakukan hal yang sama. Untuk mengetahui plugin (checking_system) apa saja yang tersedia dapat dilihat pada folder /opt/nagios/libexec. Konfigurasi command checking_system dapat Anda lihat pada file /opt/nagios/etc/objects/commands.cfg. Network Monitoring System dengan Nagios   ­ halaman 12

×