REALISASI MONITORING SERVER MENGGUNAKAN NAGIOS DENGAN MEMANFAATKAN EVENT HANDLER, EMAIL , DAN SMS GATEWAY Bukhari Abdu Rasyid, Solikin, S.Si.,M.T., Anang Sularsa, S.T. Program Studi Teknik Komputer Politeknik Telkom Bandung 2011 Jl. Telekomunikasi No. 1 Dayeuhkolot Bandung 40257 ABSTRAK Nagios adalah tool untuk monitoring sistem dan jaringan komputer dengan lisensi open source sehingga bebas untuk digunakan serta dikembangkan. Nagios bersifat modular, mudah digunakan, dan memiliki skalabilitas tinggi. Modul atau plugin pada Nagios dapat disesuaikan dengan kebutuhan pengguna. Dalam proyek akhir ini dirancang dan direalisasikan monitoring server menggunakan nagios dengan notifikasi gangguan pada server melalui email serta SMS gateway.Sehingga ketika ada gangguan pada server , Nagios memberikan output berupa notifikasi status (up, down) dan apabila gangguan terjadi pada service , maka Nagios memberikan output berupa notifikasi status (critical, unknown, warning, recovery). Selain itu juga diterapkan event handlerdari Nagios, sehingga server mampu merestart service yang mengalami gangguan agar normal kembali. Sebagai percobaan pengiriman notifikasi dan event handler, maka dilakukan penonaktifan pada server dan service yang dimonitor.Pengiriman email notifikasi dilakukan oleh MTA Postfix sedangkan pengiriman notifikasi berupa SMS dilakukan oleh Gammu. Kata kunci : Nagios, event handler, email ,SMS b. BAB 1 PENDAHULUAN
administrator melalui email dan SMS ? 1.3
Latar belakang masalah Kebutuhan server menjadi kebutuhan primer bagi hampir semua perusahaan maupun para pengguna pada umumnya. Akan tetapi server yang merupakan sebuah mesin yang terhubung ke jaringan tidaklah selalu berjalan dengan baik tanpa terjadi gangguan, baik ganguan terhadap hardware maupun software. Dalam sebuah proses bisnis gangguan sekecil apapun terhadap server akan mempengaruhi kinerja secara keseluruhan.
1.1
Untuk mencegah terjadinya gangguan yang terlalu lama biasanya seorang administrator pasti menyiapkan server backup dan memonitor kinerja server. Khusus dalam hal memonitor server tentunya seorang administrator tidak bekerja 24 jam di depan komputernya sehingga selalu mengetahui apabila terjadi gangguan pada server. Oleh karena itu diperlukan sebuah fasilitas pendukung yaitu sistem monitoring agar administrator dapat memonitor server meskipun tidak berada di depan komputer. Dengan penggunaan nagios sebagai aplikasi monitoring server dan gammu sebagai sms gateway diharapkan permasalahan yang sering terjadi pada server dapat dimonitor serta diatasi dengan baik tanpa mengganggu kegiatan lain yang dilakukan administrator. Nagios sendiri dapat dikonfigurasi sesuai dengan kebutuhan, seperti pemanfaatan event handler untuk menangani error serta notifikasi melalui email dan sms. 1.2
Perumusan masalah Permasalahan yang ditangani dalam pembuatan Proyek
Bagaimana mengirimkan notifikasi error kepada
Tujuan Adapun tujuan yang ingin dicapai antara lain sebagai berikut : a.
Memanfaatkan event handler untuk menangani error pada service (http dan ftp).
b. 1.4
Mengimplementasikan notifikasi melaluiemail dan SMS .
Batasan Masalah a. Event handler menangani error service (http dan ftp). b.
Event handler hanya diterapkan pada server nagios.
c.
Notifikasi error berupa status (Up, Down) untuk sistem, status(Critical, Recovery, Warning, Unknown) untuk service dikirim melalui email dan SMS .
d.
Monitoringdilakukan pada server dalam jaringan lokal berbasis Linux.
e.
Tidak melakukan monitoring pada perangkat jaringan lain.
f.
Kegagalan pengiriman notifikasi berupa email dan SMS tidak ditangani.
Akhir ini: a.
Bagaimana memanfaatkan event handler untuk menangani error terkait service (http dan ftp) pada server ?
1
1.5
d.
Jadwal Kegiatan
1.1 Tabel 1.1 Jadwal kegiatan penelitian Mei
Juni
Juli
e.
Agustus
September
Kegiatan 1
2
3
4
1
2
3
4
1
2
3
4
1
2
3
4
1
2
3
4
Studi literatur
f.
Analsis dan Perancanga n Sistem Implement asi dan Pengujian
g.
Pembuatan laporan
BAB II LANDASAN TEORI
h.
2.1
i.
Pengertian Jaringan Komputer Menurut definisi, yang dimaksud dengan jaringan komputer (computer networks) adalah suatu himpunan interkoneksi sejumlah komputer autonomous. Dalam bahasa yang popular dapat dijelaskan bahwa jaringan komputer adalah kumpulan beberapa komputer dan perangkat lain seperti printer, hub dan sebagainya yang saling terhubung satu sama lain melalui media perantara. Media perantara ini bisa berupa media kabel maupun media tanpa kabel (nirkabel). Informasi berupa data akan mengalir dari satu komputer ke komputer lainnya atau dari satu komputer ke perangkat lain, sehingga masing-masing komputer yang terhubung tersebut bisa saling bertukar data atau berbagi perangkat keras.
2.2
Pengertian LAN Local Area Network (LAN), merupakan sebuah jaringan lokal yang dibuat pada area tertutup. Misalkan dalam satu gedung atau dalam satu ruangan. Kadangkala jaringan lokal disebut juga jaringan private. LAN biasa digunakan untuk jaringan kecil yang menggunakan resource bersama-sama, seperti penggunaan printer secara bersama.
2.1
Linux
Ubuntu Ubuntu terdiri dari banyak paket perangkat lunak, sebagian besar yang didistribusikan di bawah lisensi perangkat lunak bebas.Satu-satunya pengecualian adalah beberapa driver proprietary hardware. Lisensi utama yang digunakan adalah GNU General Public License (GNU GPL) bersama dengan Lisensi GNU Lesser General Public License (GNU LGPL), yang secara eksplisit menyatakan bahwa pengguna bebas untuk menjalankan, menyalin, mendistribusikan, mempelajari, mengubah, mengembangkan dan meningkatkan kinerja perangkat lunak. Di sisi lain, ada perangkat lunak proprietarytersedia yang dapat berjalan di Ubuntu. Ubuntu berfokus pada kegunaan, keamanan dan stabilitas.Ubiquity installer mengizinkan Ubuntu untuk diinstal ke hard disk darilive CD, tanpa perlu restart komputer sebelum instalasi. Ubuntu juga menekankan aksesibilitas dan internasionalisasi untuk menjangkau orang sebanyak mungkin. Ubuntu terinstal dengan berbagai perangkat lunak yang mencakup LibreOffice (OpenOffice dalam versi sebelum 11.04), Firefox, Empathy (Pidgin dalam versi sebelum 9.10), Transmisi, GIMP (dalam versi sebelum 10.04), dan beberapa game ringan (seperti Sudoku dan catur).Software tambahan yang tidak terinstal secara default dapat didownload dan diinstal dengan menggunakan Ubuntu Software Center atau Synaptic Package Manager. Ubuntu juga dapat menjalankan banyak program yang dirancang untuk Microsoft Windows (seperti seperti Microsoft Office), melalui Wine atau menggunakan Virtual Machine (seperti VMware Workstation atau VirtualBox). Ubuntu memiliki kelebihan-kelebihan sebagai berikut: 1. Dukungan komunitas yang luas dan aktif. 2. Pengembangan yang aktif . 3. User Friendly. 4. Stabil dan selalu update. 5. Kompatibel dengan berbagai perangakat keras komputer lama maupun terbaru. 6. Repositori tersedia di banyak server , lokal maupun internasional.
Linux adalah sistem operasi yang dibuat oleh Linus Trovalds dan didesain untuk dapat bekerja secara multitasking dan multiuser pada komputer, dalam artian Linux mampu untuk menjalankan beberapa aplikasi secara bersamaan dan mendukung penggunaan aplikasi dan komputer untuk melayani beberapa pengguna sekaligus. Linux dikembangkan menurut standar yang dimiliki UNIX dan kemampuan yang sama dengan UNIX. Artinya Linux memiliki kemampuan cukup baik sebagai server maupun workstation layaknya UNIX. Berikut ini adalah beberapa kemampuan dan kelebihan yang dimiliki Linux : a.
b.
c.
Mendukung implementasi jaringan dengan protokol TCP/IP. Protokol ini yang digunakan untuk melakukan komunikasi pada jaringan. Multitasking dan multiuser, yaitu kemampuan untuk menggunakan beberapa aplikasi secara bersamaan dan dapat melayani beberapa pengguna sekaligus. Virtual Memory. Memungkinkan penggunaan space harddisk sebagai memory.
Shared Library. Memungkinkan penggunaan library secara bersama sehingga file executable lebih sedikit menggunakan ruang pada harddisk. Demand paged Loading. Hal ini akan memastikan hanya segmen dari program yang benar-benar digunakan yang akan dibaca dari disk ke memori. Implementasi unified memory pool untuk program dan disk cache, sehingga semua free-memory akan digunakan untuk mempercepat proses. Menggunakan lisensi free software sehingga dapat digunakan secara bebas tanpa perlu membayar kepada pihak tertentu. Dukungan komunitas internet yang sangat matang, seperti pada website forum, blog, aggregator, jejaring sosial, dan webzine. Memiliki kestabilan yang sangat tinggi. Banyak konfigurasi linux yang tidak membutuhkan proses restart, ketika terdapat perubahan konfigurasi.
2.2
Nagios Nagios adalah tool untuk monitoring sistem dan jaringan komputer dengan lisensi open source
2
sehingga bebas untuk digunakan serta dikembangkan. Nagios bersifat modular, mudah digunakan, dan memiliki skalabilitas tinggi. Modul atau plugin pada Nagios dapat disesuaikan dengan kebutuhan pengguna. Nagios awalnya didesain untuk berjalan pada sistem operasi Linux, namun dapat juga berjalan dengan baik hampir di semua sistem operasi Unix. Beberapa fitur yang tersedia pada Nagios diantaranya adalah: a. Monitoring servis - servis pada jaringan (SMTP, POP3, HTTP, PING, dan sebagainya). b. Monitoring sistem host (Processor load, Disk usage, dan sebagainya). c. Web-based interface. d. Desain plugin yang sederhana. e. Jika terjadi masalah, Nagios dapat menghubungi user lewat email dan sms.
tidaknya nomor tujuan. Bila dideteksi bahwa tujuan tidak aktif, maka sistem akan menunda pengiriman ke tujuan hingga tujuan aktif kembali. Pada dasarnya sistem SMS akan menjamin pengiriman dari suatu pesan hingga sampai ke tujuan. 2.6
Gammu adalah nama sebuah project yang ditujukan untuk membangun aplikasi, script dan drivers yang dapat digunakan untuk semua fungsi yang memungkinkan pada telepon seluler atau alat sejenisnya. Sekarang Gammu telah menyediakan codebase yang stabil dan mapan untuk berbagai macam model telepon yang tersedia di pasaran dibandingkan dengan project sejenis. Gammu merupakan project yang berlisensi GNU GPL 2 sehingga menjamin kebebasan menggunakan tool ini tanpa perlu takut dengan masalah legalitas dan biaya yang mahal yang harus dikeluarkan. Gammu mendukung berbagai macam model telepon seluler dengan berbagai jenis koneksi dan tipe. 2.7
Gambar 2. 1 Monitoring nagios pada linux host
2.3
Event handler adalah perintah tambahan untuk system berupa script yang akan dijalankan secara otomatis apabila terjadi error atau perubahan terhadap system, tergantung konfigurasi yang dilakukan oleh administrator.
2.4
2.5
a. Restart services yang gagal berfungsi. b. Memasukkan trouble ticket ke helpdesk system c. Memasukkan informasi log ke database. Notifikasi Email dan SMS Notifikasi email dan sms adalah suatu peringatan yang dibuat dengan suatu software email, sms daemon dan aplikasi pendukungnya yang digunakan untuk memberikan suatu informasi dari suatu respon yang akan dilakukan. SMS Gateway SMS Gateway adalah sebuah perangkat lunak yang menggunakan bantuan komputer dan memanfaatkan teknologi seluler yang diintegrasikan agar mampu mendistribusikan pesan-pesan yang dihasilkan lewat sistem informasi melalui media SMS yang ditangani oleh jaringan seluler. SMS ditangani oleh jaringan melalui suatu layanan data text atau SMS Center (SMSC) yang berfungsi menyimpan dan meneruskan pesan dari sisi pengirim ke sisi penerima. Format SMS yang dipakai oleh produsen MS (Mobile Station) adalah Protocol Data Unit (PDU). SMS merupakan sebuah layanan yang bersifat non real-time dengan sebuah pesan singkat dapat dikirim ke suatu tujuan, tidak mempedulikan aktif
Email Email adalah sarana untuk mengirim surat atau pesan melalui jaringan Intenet. Seperti halnya konsep surat melalui pos, email memiliki alamat yang bias dituju secara elektronik, contoh alamat email :
[email protected]. Standar protokol pertama yang digunakan email adalah SMTP (Simple Message Transfer Protokol). Seiring pertumbuhan internet, muncul protokol baru yaitu POP ( Post Office Protocol). Dengan penggunaan protokol POP, email dapat dibaca secara offline.
Event Handler Nagios
Salah satu kegunaan event handler adalah kemampuan untuk memperbaiki masalah sebelum notifikasi dikirim. Beberapa kegunaan event handler yang lain meliputi :
Gammu
2.8
Mail Server Sebuah mail server (juga dikenal sebagai Mail Transfer Agent atau MTA, pengirim mail, router mail atau mailer Internet) adalah sebuah aplikasi yang menerima mail masuk dari pengguna lokal (orang dalam domain yang sama) dan meneruskan mail keluar untuk pengiriman. Sebuah komputer yang didedikasikan untuk menjalankan aplikasi tersebut juga disebut mail server.
2.9
Mail Transfer Agent (MTA) MTA merupakan program yang bertanggung jawab dalam hal pengiriman sebuah email ke alamat tujuan. Beberapa Jenis MTA antara lain: Sendmail, Qmail, Mercury, Postfix. MTA menggunakan port 25 untuk penghubung antar MTA.
2.10
Postfix Postfix adalah Mail Transfer Agent yang dikembangkan oleh Wietse Venema. Beberapa fitur yang ditawarkan oleh Postfix: a. Performance. Postfix mampu melayani sejuta email dalam sehari. Hal ini menunjukkan kalau Postfix dapat dikategorikan sebagai mail server berskala besar. b. Kompatibilitas. Postfix sangat kompatibel dengan Sendmail (yang sudah banyak dipergunakan orang sebagai MTA di UNIX). c. Postfix terdiri beberapa program kecil yang saling tidak percaya. Jika Sendmail hanya mempunyai satu program besar dan satu file konfigurasi besar, Postfix memiliki program-program kecil yang menjalankan tugasnya secara spesifik.
3
d.
e.
f.
g.
Keamanan. Postfix dijalankan dengan proteksi bertingkat, oleh program-program kecil yang saling tidak percaya. Masing-masing program dijalankan oleh user khusus (bukan setuid). Multiple Transport. Postfix dapat mengirim surat dengan modus SMTP (Simple Mail Transfer Protocol) dan UUCP (Unix to Unix Copy Protocol) sekaligus. Mendukung format Maildir. Maildir adalah format boks penyimpanan surat dalam bentuk folder daripada berbentuk satu fi le (mbox). Kemudahan konfigurasi. Meskipun Postfix terdiri dari banyak program kecil,namun hanya memiliki satu fi le konfi gurasi yang mudah untuk di-setting, yakni /etc/Postfix/main.cf. Berikut sekilas gambaran bagaimana Postfix
bekerja: a. Jika ada email lokal, maupun email remote yang mempergunakan SMTP, diletakkan ke dalam direktori /var/mail/Postfix/maildrop. Direktori ini world writable, dan permissionnya selalu dicek oleh pickup daemon setiap kali ada mail masuk. b. Di sini akan dicek host, domain, maupun username yang dituju. Pengecekan juga termasuk yang didefinisikan di /etc/aliases dan ~/.forward. Jika bermasalah, mail akan dikembalikan ke pengirim. Biasanya ada satu tembusan ke postmaster. c. Dari maildrop, mail akan di-clean-up dengan menambahkan header, dan meletakkannya di direktori /var/mail/postfix/incoming. Di sini program queue manager akan diaktifkan. d. Queue Manager akan memisahkan email yang ditujukan untuk jaringan local dan mail yang ditujukan untuk host/jaringan remote. Jika ada mail yang macet, Queue Manager akan memilahnya, sehingga tidak mempengaruhi pengantaran email lainnya. e. Trivial-rewrite adalah program yang dipanggil oleh Queue Manager untuk resolving alamat dari tujuan surat. 2.11
Web Server Web server adalah software yang menjadi tulang belakang dari world wide web (www). Secara umum Web Server yaitu, Suatu program (dan juga mesin yang menjalankan program) yang mengerti protokol HTTP dan dapat menanggapi permintaanpermintaan dari web browser yang menggunakan protokol tersebut. Web server menunggu permintaan dari client yang menggunakan browser seperti Netscape Navigator, Internet Explorer, Modzilla, dan program browser lainnya. Jika ada permintaan dari browser, maka web server akan memproses permintaan itu kemudian memberikan hasil prosesnya berupa data yang diinginkan kembali ke browser. Web server, untuk berkomunikasi dengan client-nya (web browser) mempunyai protokol sendiri, yaitu HTTP (hypertext transfer protocol). Dengan protokol ini, komunikasi antar web server dengan client-nya dapat saling dimengerti dan lebih mudah. Berikut contoh-contoh web server di antaranya : a. Apache Web Server - The HTTP Web Server b. Nginx c. Apache Tomcat
d. e.
Microsoft windows Server 2008 Internet Information Services (IIS) Lighttpd
Apache Web Server Apache adalah web server yang kompak, modular, mengikuti standar protokol HTTP, dan tentu saja sangat digemari. Kesimpulan ini bisa didapatkan dari jumlah pengguna yang jauh melebihi para pesaingnya. Sesuai hasil survai yang dilakukan oleh Netcraft, bulan Januari 2005 saja jumlahnya tidak kurang dari 68% pangsa web server yang berjalan di Internet. Ini berarti jika semua web server selain Apache digabung, masih belum bias mengalahkan jumlah Apache. Saat ini ada dua versi Apache yang bisa dipakai untuk server produksi, yaitu versi mayor 2.0 dan versi mayor 1.3., bisa menggunakan salah satu dari keduanya. Tapi sangat dianjurkan memakai versi 2.0. Fitur Apache Berikut adalah fitur-fitur Apache yang sangat baik untuk sebuah web server : a. Arsitektur modular. b. Mendukung banyak sistem operasi, termasuk di dalamnya adalah Windows NT/2000/XP dan berbagai varian Unix. c. Mendukung IP versi 6 (Ipv6). d. Mendukung CGI (Common Gateway Interface) dan SSI (Server Side Include). e. Mendukung otentifi kasi dan kontrol akses. f. Mendukung SSL (Secure Socket Layer) untuk komunikasi terenkripsi. g. Konfigurasi yang mudah dipahami. h. Mendukung Virtual Host. i. Pesan kesalahan multi bahasa dan bias dimodifikasi. BAB III ANALISIS DAN PERANCANGAN Pada bab ini akan dibahas mengenai perancangan sistem monitoring server agar bisa mengirim notifikasi melalui modem dalam bentuk email dan sms, serta dapat melakukan event handler. Selain itu, alur kerja sistem akan dijelaskan menggunakan flowchart. Pembahasan tersebut dibagi menjadi beberapa subbab, yaitu : 3.1 Pengumpulan Data a. Pencarian referensi dan sumber-sumber yang berhubungan dengan Nagios dan pengimplementasiannya. b. Pencarian referensi dan sumber-sumber yang berhubungan dengan email server dan sms gateway. c. Mempelajari implementasi dari Postfix dan Gammu untuk digabungkan dengan sistem monitoring . d. Mempelajari dan memahami proses event handler pada Nagios. e. Pencarian referensi tentang web server dan ftp server.
4
3.2
Perancangan Sistem Nagios sebagai monitoring server, Gammu sebagai sms gateway, dan Postfix sebagai email server akan diinstal pada sistem operasi Ubuntu. Agar aplikasi berjalan dengan lancar maka dibutuhkan spesifikasi minimum pada server yaitu dengan penggunaan processor minimum Pentium 4 (atau yang setara) dan RAM tidak kurang dari 512 MB. Kebutuhan perangkat keras dan lunak merupakan salah satu aspek utama yang diperhatikan dalam pembuatan proyek akhir ini. Tidak semua perangkat keras sesuai dengan kebutuhan perangkat lunak, misal pada modem, modem harus menggunakan spesifikasi yang sudah didukung oleh perangkat lunak. Oleh karena itu kebutuhan perangkat keras disesuaikan dengan perangkat lunak yang akan digunakan. Sistem monitoring server yang dirancang diharapkan sesuai dengan fungsinya yaitu mampu melakukan event handler dan mengirimkan notifikasi ke administrator. Sehingga dibuat sebuah diagram alur sebagai pedoman alur kerja sistem yang akan diimplementasikan nanti.
3.3
Untuk lebih jelasnya dari rancangan proyek ini, dapat dilihat dari gambar-gambar berikut berikut:
GSM modem
switch Web Server Admin phone
internet
Check_nrpe
Nagios, Send Mail, Gammu
Kebutuhan Sistem Untuk menyelesaikan proyek akhir ini, maka dibutuhkan analisis beberapa perangkat lunak dan perangkat keras yang akan digunakan untuk dapat memenuhi kebutuhan dan mencapai tujuan yang diinginkan. Analisis yang dilakukan antara lain sebagai berikut: 3.3.1 Spesifikasi perangkat keras dan lunak pada server monitoring Perangkat No Keras / Unit Keterangan Lunak Processor : AMD Zacate E-350 1 PC server 1 RAM : DDR3 2 GB HDD : 320 GB 2 Modem 1 Huawei Sistem 2 1 Ubuntu Operasi 3 Switch 1 TP-Link 5 port 4 Kabel UTP 3 Cat 5 Sebagai sms 6 Gammu 1 gateway system Sebagai tools 7 Nagios 1 monitoring server Sebagai mail transfer agent 8 Postfix 1 untuk notifikasi email Sebagai webserver 9 Apache 1 untuk web interface Nagios Sebagai database 10 MySQL 1 server
FTP Server
Tabel 3. 1 Spesifikasi server monitoring
Mail admin
Gambar 3. 1 Desain sistem
3.3.2
MULAI
Terjadi Error pada Server
No Nagios Mengirim Data
Nagios menggunakan event handler untuk merestart service dan sistem
1 2 7 8
Sendmail dan Gammu memproses dan mengirim informasi
9
GSM Modem memproses pengiriman
Tabel 3. 2 Spesifikasi host server yang dimonitor
3.4 SMS diterima
YA
Spesifikasi perangkat keras dan lunak pada host server Perangkat Keras / Unit Keterangan Lunak PC host Intel Dual Core, 2 server Harrdisk, RAM. Sistem 1 Ubuntu Operasi vsftpd 1 Sebagai FTP server Apache 1 Sebagai webserver Sebagai database MySQL 1 server
Sms dan Email sukses terkirim ?
SELESAI TIDAK
Penulisan Laporan Pembuatan laporan dilakukan dengan mengikuti syarat-syarat yang sudah ditentukan dan dilaksanakan bersamaan dengan tahap pengujian. Hal ini dimaksudkan agar hasil pengujian langsung dapat dibuatkan laporan dengan dokumentasinya.
Gambar 3. 2 Diagram alur sistem
5
BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1
Pada tahap ini dilakukan instalasi software yang berkaitan atau diperlukan dalam sistem monitoring.
Implementasi Dalam pengimplementasian proyek akhir ini ada beberapa langkah yang harus dilakukan, diantaranya : 4.1.1 Hal-hal yang harus dipersiapkan Sebelum memulai pengimplementasian dalam proyek akhir ini ada beberapa hal yang harus dipersiapkan, diantaranya adalah : a.
4.1.2.1 Instalasi dan Konfigurasi Modem Instalasi modem dilakukan apabila driver modem belum terdeteksi otomatis oleh Ubuntu. Karena disini menggunakan modem yang sudah secara otomatis terdeteksi oleh Ubuntu, maka tinggal dilakukan konfigurasi. Berikut konfigurasinya : a.
PC / Laptop PC / Laptop digunakan untuk tempat penginstallan dan konfigurasi perangkat lunak yang akan dibentuk menjadi sebuah sistem monitoring server. PC / laptop nanti juga berfungsi sebagai host server.
b.
Modem Huawei GSM/CDMA Modem Huawei support dengan software sms gateway Gammu yang akan digunakan dalam proyek akhir ini. Modem digunakan untuk sms gateway dan koneksi internet sehingga server bisa mengirim email dengan MTA.
c.
Masuk ke network connections dengan langkah : system -> preferences -> network connections. Kemudian akan muncul tampilan seperti dibawah ini. Pilih menu tab “ mobile broadband” dan kemudian pilih menu add untuk memulai konfigurasi selanjutnya.
Gambar 4. 1 Network Connections
b.
Pada bagian ini Ubuntu membaca device modem yang kita gunakan, apabila device telah muncul kita tinggal melanjutkan ke konfigurasi selanjutnya dengan meng-klik „forward‟.
Simcard GSM/CDMA Simcard dibutuhkan untuk pengiriman sms oleh sms gateway dan untuk koneksi internet sebagai jalan pengiriman email melalui SMTP.
d.
Switch dan Kabel UTP Switch dan kabel UTP digunakan untuk menghubungkan antara server monitoring dan server yang dimonitor (host server).
e.
CD atau Flashdisk installer Ubuntu Dalam proyek akhir ini sistem monitoring server dan host server berjalan di system operasi Ubuntu.
f.
Gambar 4. 2 Deteksi Modem
c.
Memilih provider dari simcard untuk koneksi internet yang digunakan, di proyek akhir ini menggunakan smartfren maka ditulis “smart” pada kolom provider, hal itu dilakukan karena tidak terdapat dalam list. Selanjutnya memilih negara tempat provider dan terakhir apply.
Nagios-3.2.3.tar.gz Merupakan package software monitoring server yang diperlukan saat penginstallan Nagios.
g.
Koneksi Internet Merupakan hal penting dalam proyek akhir ini karena dibutuhkan dalam setiap installasi software yang akan digunakan. Gammu dan Apache2 misalnya, langsung diinstall melalui CLI Ubuntu dengan catatan server terkoneksi ke internet dan repositori ubuntu. Dan masih banyak software lain pendukung sistem monitoring yang diinstall langsung melalui CLI.
Gambar 4. 3 Memilih provider
4.1.2 Instalasi dan Konfigurasi Gambar 4. 4 Memilih negara provider
6
d.
daftar repository selesai, maka repository siap digunakan untuk instalasi. Dibawah ini gambar menunjukkan tombol reload dan proses reload repository.
Pada bagian ini adalah konfigurasi nomor dial, username, dan password yang digunakan untuk melakukan koneksi. Setelah konfigurasi selesai maka koneksi internet siap digunakan.
Gambar 4. 8 Klik reload pada menu synaptic package manager
Gambar 4. 5 Konfigurasi dial koneksi
4.1.2.2 Konfigurasi Repositori Ubuntu Konfigurasi repositori dimaksudkan agar server terkoneksi ke repositori lokal sehingga bisa melakukan instalasi software-software yang diperlukan dalam pembuatan server monitoring dan lebih besar kecepatan download paket-paketnya daripada mendownload paket-paket dari repositori luar negeri. Berikut tahapan konfigurasinya : a.
Masuk Synaptic Package Manager, pilih Settings -> Repositories, Selanjutnya akan muncul Software Source, dibagian „Ubuntu Software‟ pada menu „Download from‟ dipilih „other‟ untuk memilih server lokal. Pada proyek akhir ini menggunakan server lokal dengan alamat kambing.ui.ac.id (server Indonesia). Untuk lebih jelasnya dapat dilihat pada gambar berikut :
Gambar 4. 9 Proses download daftar repositori
4.1.2.3 Instalasi dan Konfigurasi Nagios Instalasi Nagios bisa dilakukan setelah sebelumnya paket yang diperlukan sudah didownload, paket tersebut berupa software nagios 3.2.3 dan pluginnya. Pada tahapan instalasi nagios diperlukan paket-paket software pendukung yang harus diinstal terlebih dahulu. Berikut tahapan instalasi dan konfigurasinya : a.
Instalasi compiler Ubuntu
root@rascool:~# apt-get install build-essential
b. Gambar 4. 6 Memilih other pada software source
Instalasi GD Libraries
root@rascool:~# apt-get install libgd2-xpm-dev
c.
Instalasi Apache2
root@rascool:~# apt-get install apache2
Gambar 4. 7 Memilih server Indonesia ' kambing.ui.ac.id'
b.
Setelah memilih server, selanjutnya adalah mereload repository agar daftar repository yang ada diperbarui dengan repository dari kambing.ui.ac.id. Setelah proses download
7
d.
Instalasi PHP untuk Apache2 :
root@rascool:~# apt-get install php5-common php5 libapache2-mod-php5
root@rascool: /home/rasyid/nagios-3.2.3# make install-webconf i.
Menambahkan user untuk interface nagios : root@rascool:~# mkdir /usr/local/nagios/etc root@rascool:~# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
e.
Konfigurasi Apache2 agar menggunakan PHP :
root@rascool:~# /etc/apache2/apache2.conf
Output New password: Re-type new password:
j.
Menambahkan direktori nagios ke apache2 dengan konfigurasi pada apache.conf :
root@rascool:~# nano /etc/apache2/apache.conf f.
Restart Apache2 :
root@rascool:~# /etc/init.d/apache2 restart g.
Penambahan user untuk nagios :
root@rascool:~# useradd -m nagios root@rascool:~# passwd nagios
root@rascool:~# groupadd nagcmd root@rascool:~# usermod -a -G nagcmd nagios root@rascool:~# usermod -a -G nagcmd wwwdata h.
Instalasi nagios dari package tar.gz :
root@rascool: /home/rasyid/# 3.2.3.tar.gz
tar -zxvf nagios-
root@rascool: /home/rasyid/# cd nagios-3.2.3 root@rascool: /home/rasyid/nagios-3.2.3# ./configure --with-command-group=nagcmd root@rascool: /home/rasyid/nagios-3.2.3# make all root@rascool: /home/rasyid/nagios-3.2.3# make install root@rascool: /home/rasyid/nagios-3.2.3# make install-init root@rascool: /home/rasyid/nagios-3.2.3# make install-config
root@rascool:~# /etc/init.d/apache2 restart k.
Instalasi Nagios Plugins dari package tar.gz yang telah diunduh sebelumnya :
root@rascool:~# cd /home/rasyid/ root@rascool: /home/rasyid/ # 1.4.15.tar
nagios-plugins-
root@rascool: /home/rasyid/ # 1.4.15
nagios-plugins-
root@rascool: /home/rasyid/ # with-nagios-user=nagios group=nagios
./configure ---with-nagios-
root@rascool: /home/rasyid/ # make root@rascool: /home/rasyid/ # make install root@rascool: ~# /etc/rcS.d/S99nagios
ln -s /etc/init.d/nagios
Konfigurasi lanjutan untuk nagios berupa pembuatan file monitor.cfg untuk menyatukan beberapa file konfigurasi menjadi satu kesatuan, ditulis pada lampiran.
root@rascool: /home/rasyid/nagios-3.2.3# make install-commandmode
8
l.
Mengaktifkan Nagios:
sudo /etc/init.d/nagios start
4.1.2.4 Tahap instalasi dan konfigurasi Gammu Pada tahap ini dilakukan instalasi Gammu dan software yang diperlukan dalam instalasi Gammu beserta konfigurasinya.
Gambar 4. 10 Konfigurasi awal Postfix
a. Instalasi Gammu : root@rascool:~# apt-get install gammu gsm-utils b. Melakukan check pada port modem : Dilakukan untuk mengetahui pada port mana usb modem terkoneksi, sehingga bias dilakukan konfigurasi selanjutnya. root@rascool:~# dmesg | tail
Gambar 4. 11 Konfigurasi mail pada Postfix
b.
root@rascool:~# gsmctl -d /dev/ttyUSB0 c. Konfigurasi gammurc : root@rascool:~# nano /etc/gammurc
Konfigurasi postfix manual, dilakukan untuk mengkonfigurasi SMTP dan IP yang terhubung ke internet.
root@rascool:~# /etc/postfix/mainbackup.cf
cp
/etc/postfix/main.cf
root@rascool:~# nano /etc/postfix/main.cf
[gammu] port= /dev/ttyUSB0 connection = at115200
d. Menambahkan user nagios ke usergroup dialout : root@rascool:~# usermod -G dialout nagios root@rascool:~# usermod -G dialout www-data e. Melakukan tes kirim sms dengan user nagios : root@rascool:~# su nagios $ echo "sms test" | /usr/bin/gammu --sendsms TEXT 085645809541
Gambar 4. 12 Konfigurasi utama pada Postfix
c.
Melakukan restrart postfix dan tes :
root@rascool:~# /etc/init.d/postfix restart “tes”
root@rascool:~# echo cuma tes saja |mail -s
[email protected] 4.1. Pengujian 4.1.2.4 a.
Tahap instalasi dan konfigurasi Postfix Instalasi Postfix
root@rascool:~# apt-get install postfix Selanjutnya akan dihadapkan pada konfigurasi seperti pada gambar, pilih Internet Site dan mengisikan mail name.
Pada tahan ini dilakukan beberapa pengujian untuk memastikan fungsionalitas sistem berjalan dengan semestinya. 4.2.1 Pengujian terhadap fungsionalitas interface server nagios Pengujian dilakukan dengan cara melakukan akses ke web interface server nagios http://rasyid.net/nagios. Di bawah ini adalah gambar web interface dari nagios, web ini diakses menggunakan alamat localhost, yaitu dengan mengetikkan
9
alamat rasyid.net/nagios pada web browser. Alamat rasyid.net sebelumnya telah didefinisikan pada konfigurasi hosts.
5. Duration : lama service dicek. 6. Attempt : percobaan cek yang dilakukan nagios pada service 7. Status Information : memberikan informasi detail gangguan yang terjadi pada service . Catatan :
Gambar 4. 13 Halaman depan nagios
Keterangan Gambar : a.
b.
c.
Hosts : menunjukkan jumlah server yang dimonitoring beserta status servernya dalam keadaan Up atau Down. Status Up bila server hidup dan terkoneksi ke jaringan, status Down bila server mati atau tidak terkoneksi ke jaringan. Services : menunjukkan status dari service yang di monitoring. Terdapat beberapa status yaitu Critical, Warning, Unknown, Ok, dan Pending. Monitoring Features : memperlihatkan fitr-fitur pada Nagios yang diaktifkan. Fitur tersebut diantarnya adalah Flap Detection, Noification, Event Handler, Active Checks, Passive Checks. Fitur yang berstatus enable berarti sedang aktif, apabila disable berarti tidak aktif.
Dari hasil penelitian ketika terjadi error terdapat delay pada perubahan statusservice dari ”OK” ke ”CRITICAL” maupun ke status lainnya dan juga sebaliknya. Delay terjadi selama 2-4 menit. Lamanya delay terjadi tergantung pada pendefinisian pada konfigurasi ” normal_check_interval” pada nagios dan pada auto refreshwebbrowser. Sama halnya yang terjadi pada perubahan status host dari ”UP” ke ”DOWN” maupun sebaliknya. 4.2.2 Pengujian terhadap fungsionalitas Event Handler Pengujian penonaktifanservice
dilakukan
dengan
http pada localhost, sehingga
dapat dilihat status http pada localhost menjadi critical. Ketika status http terdeteksi critical maka event handler akan segera menangani masalah tersebut. Dapat dilihat pada gambar status awal http ”CRITICAL”, setelah beberapa saat kemudian status menjadi ”OK”.
Di bawah ini adalah gambar interface yang menunjukkan status service dari host server yang dimonitoring maupun pada localhost, sesuai pada konfigurasi yang dilakukan. Service yang tampil pada kolom service juga merupakan hasil dari konfigurasi.
Gambar 4.15Event Handler Gambar 4. 14 Status server pada nagios
Keterangan :
Catatan :
Pada gambar terdapat bagian„service status details for all hosts‟ yang terdiri dari 7 kolom yang mempunyai fungsi berbeda-beda :
Event handler berfungsi atau berjalan secara otomatis ketika :
1. Host : menunjukkan nama host.
1. Service yang dimonitor tidak berfungsi normal. Contohnya : ketika service http dalam keadaan critical.
2. Service : menunjukkan service dari masing-masing host. 3. Status : menunjukkan status dari service . 4. Last Check : menunjukkan waktu terakhir service dicek.
2. Service dinonaktifkan. Penonaktifan service hanya bisa dilakukan oleh user „root‟ pada setiap server yang dimonitor.
10
4.2.3 Pengujian terhadap fungsionalitas notifikasi email
Keterangan :
Pengujian dilakukan dengan menonaktifkan 2 host server yang di monitoring, penonaktifan bias dilakukan dengan mematikan server yang dimonitoring atau dengan memutus koneksi ke server tersebut. Sehingga secara otomatis notifikasi email bahwa server1 dan server2 down akan dikirim ke alamat email yang sudah didefinisikan pada saat konfigurasi.
Waktu dan tanggal pada SMS menunjukkan waktu dan tanggal saat nagios mengirim notifikasi, yaitu saat terjadi error pada server .Apabila terjadi pending pengiriman akibat gangguan pada operator GSM, tidak berpengaruh terhadap waktu dan tanggal pengiriman notifikasi oleh Nagios.Waktu dan tanggal sesuai dengan saat pengiriman meskipun diterima pada waktu yang berbeda.
Dibawah ini adalah gambar notifikasi email yang menyatakan bahwa server down yang dikirim setiap 2 jam :
BAB V PENUTUP 1.1 Kesimpulan Kesimpulan dari pengujian pada proyek akhir adalah : a.
b. Gambar 4. 16 Notifikasi email
c.
Keterangan : Waktu dan tanggal pada email menunjukkan waktu dan tanggal saat nagios mengirim notifikasi, yaitu saat terjadi error pada server . Apabila terjadi delay pengiriman akibat gangguan pada SMTP dari ISP, tidak berpengaruh terhadap waktu dan tanggal pengiriman notifikasi oleh Nagios. Waktu dan tanggal sesuai dengan saat pengiriman meskipun diterima pada waktu yang berbeda. 4.2.4
Pengujian
terhadap
Nagios memudahkan seorang administrator untuk menkonfigurasi sesuai kebutuhan, hal tersebut terdapat pada cara pemecahan dan penggabungan file konfigurasi yang sangat mudah. Jumlah pengiriman notifikasi dilakukan sesuai dengan pendefinisian interval pada file konfigurasi. Untuk melakukan pengiriman email dari MTA (Postfix) dapat menggunakan SMTP dari ISP atau dengan menggunakan SMTP dari Google dan Yahoo.
1.2 Saran Untuk pengembangan lebih lanjut, penulis menyarankan seperti berikut : 1. Dapat
notifikasi SMS akan dikirim. Notifikasi dikirim dalam rentang waktu sesuai dengan pendefinisian a. dalam konfigurasi. Setiap host maupun service bisa memiliki
monitoring
pada
modem. 2. Dapat ditambahkanjenis sistem operasi server yang dimonitor.
Pengujian dilakukan dengan menonaktifkan host dan menonaktifkan beberapa service , sehingga
lagi
perangkat jaringan seperti router, switch, dan
fungsionalitas
notifikasi melalui SMS
dikembangkan
3. Dapat dikembangkan event handler pada remote server , tidak hanya pada server nagios. . DAFTAR PUSTAKA
rentang waktu yang berbeda-beda. [1] Erislan. 2006. Notifikasi e-Mail Melalui SMS. Yogyakarta : Penerbit Andi. [2] Josephshen, David. 2007. Building A Monitoring Infrastructure With Nagios. Boston : Prentice Hall. Gambar 4.17 Notifikasi SMS
[3] M. Doss, George. 2000. Tip Server Red Hat Linux. Jakarta : Elex Media Komputindo. [4] Purbo, Onno W. 2008. Workshop Onno : Panduan Mudah Merakit dan Menginstal Server Linux. Yogyakarta : Penerbit Andi. [5] Rafiudin, Rahmat. 2006. Membangun Server E-Mail Berbasis Freebsd/Linux. Yogyakarta : Penerbit Andi.
11
[6] Sofana, Iwan. 2008. Mudah membangun server dengan fedora. Bandung : Informatika. timeperiod_name working [7] Cihar, Michal. 2011. Gammu Manual. http://wammu.eu/docs/pdf/gammu.pdf (diakses tanggal 27 Mei 2011)
alias “Normal” Working Hours monday 09:00-16:00
[8] ___________. Ubuntu Server Guide. https://help.ubuntu.com/11.04/serverguide/C/serverguide.pdf (diakses tanggal 20 Mei 2011) [9] ___________.“Nagios Core Version 3.x Documentation.” http://nagios.sourceforge.net/docs/nagioscore-3-en.pdf (diakses tanggal 7 Mei 2011)
tuesday 09:00-16:00 wednesday 09:00-16:00 thursday 09:00-16:00 friday 09:00-16:00 }
LAMPIRAN
# „nonworkhours‟ timeperiod definition
Konfigurasi lanjutan untuk nagios berupa pembuatan file monitor.cfg untuk menyatukan beberapa file konfigurasi menjadi satu kesatuan.
define timeperiod{
root@rascool:~# /usr/local/nagios/etc/objects/monitor.cfg
touch
timeperiod_name freetime
root@rascool:~# /usr/local/nagios/etc/objects/monitor.cfg
gedit
alias Non-Work Hours sunday 00:00-24:00
############################################
monday 00:00-09:00,17:00-24:00
# TIMEPERIOD DEFINITIONS
tuesday 00:00-09:00,17:00-24:00
############################################
wednesday 00:00-09:00,17:00-24:00 thursday 00:00-09:00,17:00-24:00
# ‟24×7′ timeperiod definition
friday 00:00-09:00,17:00-24:00
define timeperiod{
saturday 00:00-24:00 }
timeperiod_name non-stop
# „none‟ timeperiod definition
alias 24 Hours A Day, 7 Days A Week
define timeperiod{
sunday 00:00-24:00
timeperiod_name none
monday 00:00-24:00
alias No Time Is A Good Time
tuesday 00:00-24:00
}
wednesday 00:00-24:00 thursday 00:00-24:00
# CONTACT DEFINITIONS
friday 00:00-24:00
# 'nagios' contact definition
saturday 00:00-24:00
define contact{
} contact_name nagios # „workhours‟ timeperiod definition
alias Nagios Admin
define timeperiod{
service_notification_period non-stop
12
host_notification_period non-stop
contactgroup_name linux-admins
service_notification_options w,u,c,r
alias Linux Administrators
host_notification_options d,u,r
members rasyid, sms, nagios
service_notification_commands notify-service-byemail
}
host_notification_commands notify-host-by-email # 'Server' host definition email
[email protected] define host{ } use linux-server ; Name of host template to use # 'rasyid' contact definition define contact{ host_name localhost alias Server PC Nagios contact_name rasyid address 127.0.0.1 alias Bukhari Abdu Rasyid check_command check-host-alive service_notification_period working max_check_attempts 20 host_notification_period working check_period non-stop service_notification_options c,r notification_interval 120 host_notification_options d,u,r notification_period non-stop service_notification_commands notify-service-byemail
notification_options d,u,r
host_notification_commands notify-host-by-email
stalking_options o,d,u
email
[email protected]
contact_groups linux-admins
}
}
# 'SMS' contact definition define contact{
define host{
contact_name sms
use linux-server ; Name of host template to use
alias sms Bukhari Abdu Rasyid
host_name Server1
service_notification_period non-stop
alias Server PC Webserver
host_notification_period non-stop
address 192.168.1.x
service_notification_options c,r
check_command check-host-alive
host_notification_options d,u,r
max_check_attempts 20
service_notification_commands notify-by-sms
check_period non-stop
host_notification_commands host-notify-by-sms
notification_interval 120
pager 085645809541
notification_period non-stop
}
notification_options d,u,r
# 'linux-admins' contact group definition
stalking_options o,d,u
define contactgroup{
contact_groups linux-admins
13
}
retry_check_interval 1 contact_groups linux-admins
define host{
notification_interval 120
use linux-server ; Name of host template to use
notification_period non-stop
host_name Server2
notification_options c,r
alias Server PC FTP
check_command check_ping!100.0,20%!500.0,60%
address 192.168.1.x stalking_options o,w,u,c check_command check-host-alive } max_check_attempts 20 check_period non-stop notification_interval 120 define service{ notification_period non-stop use local-service ; Name of service template to use notification_options d,u,r host_name Server1, Server2, localhost stalking_options o,d,u service_description check_http contact_groups linux-admins is_volatile 0 } check_period non-stop max_check_attempts 3 normal_check_interval 5 # 'Server' host group definition retry_check_interval 1 define hostgroup{ contact_groups linux-admins hostgroup_name Server notification_interval 120 alias Server Monitor notification_period non-stop members Server1, Server2 notification_options w,u,c,r } check_command check_http } # Service definition define service{ use local-service ; Name of service template to use
Menonaktifkan file konfigurasi yang tidak digunakan pada nagios.cfg :
host_name Server1, Server2, localhost
root@rascool:~# gedit /usr/local/nagios/etc/nagios.cfg
service_description check_ping
.....................................................................
is_volatile 0
# OBJECT CONFIGURATION FILE(S)
check_period non-stop
# These are the object configuration files in which you define hosts,
max_check_attempts 3 normal_check_interval 5
# host groups, contacts, contact groups, services, etc. # You can split your object definitions across several
14
config files
some systems will require
# if you wish (as shown below), or keep them all in a single config file.
# you to use "/usr/bin/mailx" instead of "/usr/bin/mail" in the commands below. #'notify-host-by-email' command definition
# You can specify individual object config files as shown below:
define command{ command_name notify-host-by-email
cfg_file=/usr/local/nagios/etc/objects/commands.cfg #cfg_file=/usr/local/nagios/etc/objects/contacts.cfg #cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg #cfg_file=/usr/local/nagios/etc/objects/templates.cfg
# Definitions for monitoring the local (Linux) host
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/bin/mailx -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$ }
#cfg_file=/usr/local/nagios/etc/objects/localhost.cfg #cfg_file=/usr/local/nagios/etc/objects/serverAndi.cfg #cfg_file=/usr/local/nagios/etc/objects/commands.cfg cfg_file=/usr/local/nagios/etc/objects/monitor.cfg
# 'notify-service-by-email' command definition define command{ command_name notify-service-by-email
# Definitions for monitoring a Windows machine #cfg_file=/usr/local/nagios/etc/objects/windows.cfg
# Definitions for monitoring a router/switch #cfg_file=/usr/local/nagios/etc/objects/switch.cfg
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n" |mailx -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$ }
# Definitions for monitoring a network printer #cfg_file=/usr/local/nagios/etc/objects/printer.cfg
# CHECK BY SMS : rasyid
..............................................................................
define command { command_name
Mengkonfigurasi ulang perintah untuk notifikasi melalui email dan sms pada file commands.cfg : root@rascool:~#gedit /usr/local/nagios/etc/objects/commands.cfg .........................................................................
command_line /usr/bin/printf "%b" "Alert $HOSTNAME$ is $HOSTSTATE$" | /usr/bin/gammu --sendsms TEXT $CONTACTPAGER$ } define command { command_name
# SAMPLE NOTIFICATION COMMANDS # These are some example notification commands. They may or may not work on
host-notify-by-sms
notify-by-sms
command_line /usr/bin/printf "%b" "Alert service $SERVICEDESC$ on $HOSTNAME$" is $SERVICESTATE$ | /usr/bin/gammu --sendsms TEXT $CONTACTPAGER$
# your system without modification. As an example,
15
} # Event Handler Restart define command{ command_name restart-httpd command_line /usr/local/nagios/libexec/eventhandler/restart-http $SERVICESTATE$ $SERVICESTATETYPE$ $SERVICEATTEMPT$ } define command{ command_name restart-ftp command_line /usr/local/nagios/libexec/eventhandler/restart-ftp $SERVICESTATE$ $SERVICESTATETYPE$ $SERVICEATTEMPT$
fi fi exit 0
Mengecek Konfigurasi : root@rascool: ~# /usr/local/nagios/bin/nagios /usr/local/nagios/etc/nagios.cfg Output : Nagios Core 3.2.3 Copyright (c) 2009-2010 Nagios Core Development Team and Community Contributors
}
Copyright (c) 1999-2009 Ethan Galstad
......................................................................................... .........
Last Modified: 03-09-2010
Event Handler scriptuntuk restart http :
License: GPL Website: http://www.nagios.org
root@rascool: ~#nano /usr/local/nagios/libexec/eventhandler/restart-http #!/bin/sh # use variables for arguments SERVICESTATE=$1 SERVICESTATETYPE=$2 SERVICEATTEMPT=$3 # we don't want to restart if current status is OK if [ "$SERVICESTATE" != "OK" ] ; then # proceed only if we're in soft transition state if [ "$SERVICESTATETYPE" == "SOFT" ] ; then # proceed only if this is 3rd attempt, restart if [ "$SERVICESTATEATTEMPT" == "3" ] ; then # restarts Apache as system administrator sudo /etc/init.d/apache2 restart fi fi fi exit 0
Reading configuration data... Read main config file okay... Processing object config '/usr/local/nagios/etc/objects/commands.cfg'...
file
Processing object config '/usr/local/nagios/etc/objects/contacts.cfg'...
file
Processing object config '/usr/local/nagios/etc/objects/timeperiods.cfg'...
file
Processing object config '/usr/local/nagios/etc/objects/templates.cfg'...
file
Processing object config '/usr/local/nagios/etc/objects/localhost.cfg'...
file
Read object config files okay... Running pre-flight check on configuration data...
Event Handler scriptuntuk restart-ftp :
Checking services...
root@rascool: ~#nano /usr/local/nagios/libexec/eventhandler/restart-ftp
Checked 8 services. Checking hosts...
#!/bin/sh # use variables for arguments SERVICESTATE=$1 SERVICESTATETYPE=$2 SERVICEATTEMPT=$3 # we don't want to restart if current status is OK if [ "$SERVICESTATE" != "OK" ] ; then # proceed only if we're in soft transition state if [ "$SERVICESTATETYPE" == "SOFT" ] ; then # proceed only if this is 3rd attempt, restart if [ "$SERVICESTATEATTEMPT" == "3" ] ; then # restarts Apache as system administrator sudo service vsftpd restart fi
Checked 1 hosts. Checking host groups... Checked 1 host groups. Checking service groups... Checked 0 service groups. Checking contacts... Checked 1 contacts.
16
-v
Checking contact groups... Checked 1 contact groups. Checking service escalations... Checked 0 service escalations. Checking service dependencies... Checked 0 service dependencies. Checking host escalations... Checked 0 host escalations. Checking host dependencies... Checked 0 host dependencies. Checking commands... Checked 24 commands. Checking time periods... Checked 5 time periods. Checking for circular paths between hosts... Checking for dependencies...
circular
host
and
service
Checking global event handlers... Checking obsessive commands...
compulsive
processor
Checking misc settings... Total Warnings: 0 Total Errors: 0 Things look okay - No serious problems were detected during the pre-flight check
17