PEMANFAATAN FAILOVER CLUSTER SERVER GUNA …repository.amikom.ac.id/files/Naskah...
Transcript of PEMANFAATAN FAILOVER CLUSTER SERVER GUNA …repository.amikom.ac.id/files/Naskah...
PEMANFAATAN FAILOVER CLUSTER SERVER GUNA RECOVERY SISTEM PADA PT.LINTAS DATA PRIMA
Naskah Publikasi
diajukan oleh
Nanang Purnomo
11.21.0616
kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM
YOGYAKARTA
2012
2
3
UTILIZATION OF FAILOVER CLUSTER SERVER FOR RECOVERY SYSTEM ON PT.LINTAS DATA PRIMA
PEMANFAATAN FAILOVER CLUSTER SERVER GUNA RECOVERY SISTEM PADA PT.LINTAS DATA PRIMA
Nanang Purnomo Jurusan Teknik Informatika
STMIK AMIKOM YOGYAKARTA
ABSTRACT
Recovery system is a process or procedure in which the system performs both data and recovery information when a system crash or failure in running function. Failure in the system can be hardware such as power supply off causing death and failure in the server service is not running as a web server, database service in not running and somethink else that cause the service of server can not perform as well.
To overcome these replication methods can be used as system or server where there is a server that acts as backup server or cluster server. Backup server functioning provide system backup if the main server failure in running service whereis recovery process must run as otomatics or failover server.
Failover cluster server concept is make one server run as master server or main server and other server run as slave server or backup server, when on normal condition, all service and request running on master server. But when master server failure or death ,all request and service will be take over by slave server.
Keywords : Recovery system, master server, backup server, failover cluster
4
1. Pendahuluan
Server sebagai sebuah sistem komputer yang menyediakan berbagai jenis
layanan dalam jaringan komputer haruslah mempunyai kemampuan yang tinggi dalam
melayani request-request dari client. Server akan menjadi sebuah bagian yang penting
dalam sebuah usaha atau perusahaan manakala terdapat aplikasi-aplikasi penting
perusahaan yang berjalan didalamnya. Kegagalan server dalam menjalankan service
baik aplikasi maupun database tentunya akan menghambat pekerjaan dan dapat
menggangu proses administrasi dari perusahaan yang bersangkutan.
PT. Lintas Data Prima adalah sebuah perusahan jasa yang bergerak dibidang
internet connection sebagai core bisnisnya dan didukung dengan sistem yang telah
terintegrasi, baik dari sisi server maupun aplikasi. Akan tetapi proses administrasi kadang
terkendala dengan adanya permasalahan pada akses ke server aplikasi, diantaranya
server gagal menjalankan service baik database maupun aplikasinya, link ke server
bermasalah dan gangguan hardware pada server. Hal tersebut dapat mengganggu
proses pelayanan ke pelanggan, karena belum adanya sebuah sistem backup server
yang akan mengambil alih tugas server utama ketika gagal menjalankan service-nya.
2. Landasan Teori
2.1 Failover Clustering
Cluster adalah sekelompok mesin yang bertindak sebagai entitas tunggal untuk
menyediakan sumber daya dan layanan ke jaringan. Pada saat terjadi kegagalan,
sebuah failover akan terjadi pada sistem dalam kelompok itu yang akan menjaga
ketersediaan sumber daya itu ke jaringan.
Failover adalah proses peralihan ke sebuah komponen cadangan, elemen, atau
operasi, sementara perbaikan untuk mengatasi gangguan sedang dijalankan. Prosedur
failover menentukan kelangsungan operasional jaringan. Mekanisme failover dapat
dirancang sehingga dapat sesegera mungkin bertindak setelah gangguan muncul.
2.2 High Availability Cluster
Failover clustering menyediakan solusi high availability server dimana jika terjadi
kegagalan pada sistem hardware seperti power supply mati yang menyebabkan server
mati total maka server lain anggota cluster yang akan mengambil alih fungsi dari server
yang mati, sehingga komputer client tidak mengetahui jika terjadi kegagala pada server,
karena proses yang dilakukan pada server yang gagal atau mati akan dilanjutkan oleh
server backup. Untuk menjadi high available dengan tidak ada satu titik kegagalan,
cluster harus dikelola dengan beberapa cara berikut:
5
Jika server utama tidak merespon permintaan ke sumber daya cluster pada antar
muka jaringan publiknya, maka server kedua sebaiknya mengambil alih dan
mematikan atau mereset power pada server utama.
Jika salah satu server yang sesungguhnya (cluster node) di dalam cluster tidak
merespon permintaan ke layanannya, server itu sebaiknya dikeluarkan dari
cluster.
Jika server beroperasi dalam local node dan secara lokal menjalankan daemon
yang memberhentikan respon, server sebaiknya memberhentikan rute
permintaan ke sumber daya cluster secara lokal dan meneruskan semua
permintaan ke server real di dalam cluster.
2.3 Backup dan Recovery
Backup data merupakan salah satu kegiatan pengelola database untuk
melakukan penyalinan sistem, data dan aplikasi. Backup data harus dilakukan untuk
menjaga jangan sampai terjadi kerusakan sistem dari luar ataupun dari dalam sistem,
yang disengaja atau pun tidak disengaja.
Recovery adalah proses mengembalikan backup ke dalam sistem pasca terjadi
kerusakan. Recovery dilakukan untuk mengembalikan keadaan sistem kembali pada
keadaan semula, keadaan terakhir pada saat operasional, sebelum terjadi kerusakan
sistem.
2.4 Server
Server adalah sebuah sistem komputer yang menyediakan jenis layanan tertentu
dalam sebuah jaringan komputer (Wahana Komputer,2008). Server didukung dengan
prosesor yang bersifat scalable dan RAM yang besar, juga dilengkapi dengan sistem
operasi khusus, yang disebut sebagai sistem operasi jaringan atau network operating
system. Server juga menjalankan perangkat lunak administratif yang mengontrol akses
terhadap jaringan dan sumber daya yang terdapat di dalamnya, seperti halnya berkas
atau alat pencetak (printer), dan memberikan akses kepada workstation anggota
jaringan.
2.5 EoIP Tunneling
Ethernet over IP (EoIP) Tunneling adalah sebuah protocol Mikrotik RouterOS
yang digunakan membuat jalur tunnel melalui interface ethernet diantara dua router
dengan menggunakan koneksi IP. Protokol EoIP digunakan untuk melakukan bridging
antar LAN (Local Area Network) melalui koneksi internet, dengan memanfaatkan tunnel
antar router mikrotik.
6
3. Analisis
3.1 Analisis Topologi Jaringan
PT.Lintas Data Prima Yogyakarta merupakan sub-core dari core Jakarta
dimana masing-masing Point Of Presence (POP) dihubungkan menggunakan
jalur fiber optik (FO). POP tersebar di beberapa daerah antara lain Yogyakarta,
Solo, Madiun, Denpasar dan Magelang.
Gambar 3.1 Jaringan Global PT.Lintas Data Prima Yogyakarta
Gambar 3.2 Topologi Jaringan POP Yogyakarta
3.2 Analisis Permasalahan
Server aplikasi billing pada PT. Lintas Data Prima merupakan server yang
memerlukan nilai availability yang tinggi. Hal ini dikarenakan bahwa server ini digunakan
untuk menjalankan aplikasi billing perusahaan untuk mencatat administrasi pembayaran
7
seluruh pelanggan PT.Lintas Data Prima.. Aplikasi billing adalah aplikasi yang setiap hari
digunakan karena setelah penerbitan invoice harus dilakukan pula input, update, maupun
delete terhadap adminsitrasi pembayaran dari pelanggan. Artinya ketika ada gangguan
akses ke server ini baik karena permasalahan jaringan ataupun terjadi gangguan
terhadap server (mati atau terjadi kerusakan pada hardware (hardisk)) maka semua data
pelanggan akan hilang karena saat ini tidak ada server backup untuk data aplikasi
tersebut dan akan mengganggu proses administrative terhadap pelanggan. Aplikasi ini
mencatat sebanyak 84 record pelanggan PT.Lintas Data Prima.
Dari kondisi diatas maka muncul sebuah kebutuhan perusahaan untuk
meningkatkan nilai availability dari server aplikasi tersebut agar ketika ada gangguan
pada server utama masih ada backup server yang akan mengambil alih fungsi server
utama.
3.3 Analisis Kebutuhan Perangkat Keras
Beberapa piranti keras yang diperlukan dalam percobaan ini adalah sebagai berikut :
1. PC Server sebanyak 2 unit
Kedua PC server ini dimasukkan kedalam cluster. Satu server sebagai active
server dan satu server lainnya sebagai backup server. Kedua server tersebut
memiliki spesifikasi seperti berikut:
Tabel 3.1 Spesifikasi Komputer Server 1
Hardware Tipe Ukuran
Mainboard Gigabyte
Processor Intel(R) Core(TM) i3-2100 3.10 GHz
Memory DDR 3 PC 10600 2 GB
Hardisk Serial ATA 250 GB
NIC PCI-e Gigabit Ethernet
Tabel 3.2 Spesifikasi Komputer Server 2
Hardware Tipe Ukuran
Mainboard Gigabyte
Processor Pentium(R) Dual-Core CPU E6600
3.06 GHz
Memory DDR 2 PC 3200 2 GB
Hardisk Serial ATA 80 GB
2. Router Mikrotik
Kedua server akan saling terhubung dengan menggunakan koneksi vpn
antar network dengan masing-masing router melakukan tunneling vpn ke router
vpn pusat dengan metode EoIP (Ethernet over IP). Adapun router yang
8
digunakan adalah router Mikrotik RB751 (node utama) dan Mikrotik RB1100
(node backup) dengan router vpn menggunakan Router Mikrotik RB751.
3.4 Analisis Kebutuhan Perangkat Lunak
Beberapa piranti lunak yang digunakan dalam percobaan ini adalah sebagai
berikut :
1. Sistem Operasi
Sistem operasi yang digunakan adalah Linux Debian 6.0 Squeeze pada kedua
server (node utama dan node backup).
2. Failover Clustering
Untuk membangun failover cluster digunakan service aplikasi hearbeat. Aplikasi
ini dijalankan ada kedua server yang menjalankan sistem operasi Linux Debian.
3. Software Aplikasi Web Server
Web server dijalankan dengan menggunaka aplikasi server apache2 , php5 yang
akan terintregasi pada masing-masing server Linux Debian.
4. Software Aplikasi Database Server
Database server dijalankan dengan menggunakan aplikasi MySQL Server 5 yang
akan terpasang pada masing-masing server cluster.
3.5 Perancangan Topologi Jaringan
Topologi untuk implementasi failover cluster ini adalah dengan menempatkan
dua server, node utama berada di ruang server network Yogyakarta sedangkan node
backup berada di ruang server network Solo dengan memanfaatkan tunneling vpn EoIP.
Gambar 3.3 Skema Jaringan Failover Cluster Server
9
3.6 Perancangan Failover Clustering
Failover clustering memerlukan sebuah aplikasi hearbeat, yang berfungsi agar
antar server saling mengetahui keadaan server lain. Jaringan dirancang dimana hearbeat
akan berjalan di antara kedua server melaui jaringan vpn yang ada. Setiap server akan
diberikan IP address masing-masing, namun pada prinsipnya di dalam sebuah jaringan
cluster diperlukan sebuah IP address tambahan yang disebut dengan Cluster IP atau
Virtual IP. IP address inilah yang akan digunakan sebagai IP address tujuan oleh client
saat ingin mengirimkan sebuah request.
3.7 Perancangan Sinkronisasi Database
Database aplikasi billing di import-kan ke masing-masing server, dan dilakukan
proses sinkronisasi database antar kedua server. Hal tersebut dimaksudkan agar record
data pada server bisa saling sinkron atau bisa saling update satu sama lain. Metode
replikasi database yang digunakan adalah metode master to master. Metode ini
dimaksudkan agar masing-masing database pada server bertindak sebagai master atau
database utama. Dengan demikian jika ada insert, update, dan delete pada satu server
maka data akan ter-replika juga pada server yang lain.
4. Implementasi dan Pembahasan
4.1 Instalasi dan Konfigurasi Server
Pada tahap awal pembuatan failover cluster server, melakukan instalasi dan
konfigurasi server aplikasi baik server utama dan server backup. Kedua server di-install
sistem operasi Debian 6.0 dengan aplikasi web server guna mendukung aplikasi billing
perusahaan.
4.1.1 Instalasi Server Debian
Tahap awal dalam penerapan sistem failover cluster server ini adalah dengan
melakukan instalasi server.
Gambar 4.1 Urutan Instalasi Server Debian 6.0
10
Pengaturan host dan ip address masing-masing server adalah sebagai berikut :
1. Host server utama : apps
IP Address : 192.168.100.2/29
2. Host server backup : apps2
IP Address : 192.168.100.3/29
4.1.2 Instalasi dan Konfigurasi Aplikasi Web Server
Kedua server dilakukan instalasi dan konfigurasi aplikasi web server yaitu
apache2, php5, mysql-server 5.1, paket instalasi menggunakan source langsung dari
repository di internet.
Konfigurasi webserver yang dibutuhkan untuk menjalankan aplikasi billing adalah
dengan mengubah parameter register_globals pada php.ini menjadi On, untuk
mendukung fungsi-fungsi php pada aplikasi billing.
4.2 Instalasi Aplikasi Billing Perusahaan
Tahap selanjutnya adalah melakukan instalasi dan konfigurasi aplikasi billing
perusahaan pada kedua server dengan melakukan upload file aplikasi ke document root
dari web server (/var/www/) , dan pembuatan database (gcdb) serta melakukan import
dengan database yang terbaru.
4.3 Pembuatan Jaringan VPN
Topologi jaringan VPN yang digunakan adalah dengan metode tunneling EoIp
(Ethernet over IP), yaitu protokol yang digunakan untuk membuat terowongan (tunnel)
menggunakan interface ethernet antar 2 buah router atau lebih. Syarat dari penggunaan
metode ini adalah fungsi bridging pada router harus aktif, karena interface-interface
ethernet pada router akan di-bridging dengan koneksi eoip. Router yang digunakan untuk
implemetasi jaringan VPN EoIP adalah router mikrotik. Tujuan digunakannya metode
eoip ini adalah :
1. Membuat 2 network yang berbeda terhubung secara virtual, sehingga masing-
masing network dapat berkomunikasi satu sama lain.
2. Komunikasi berjalan seperti dalam satu jaringan, walaupun masing-masing
network telah melewati beberapa router. Dengan menggunakan EoIp tunnel
maka jaringan yang dituju akan menjadi satu subnet dengan alokasi ip address
yang telah ditentukan.
11
Gambar 4.2 Implementasi Jaringan VPN dengan Metode EOIP Tunneling
4.3.1 Konfigurasi EoIP pada Router I , Router II dan Router EoIP
Pada masing-masing router dilakukan tunneling eoip ke router eoip pusat dengan
rincian sebagai berikut:
Router I : tunnel-id = 1234 , remote-address =124.40.255.58
Router II : tunnel-id = 12345, remote address =124.40.255.58
Router EoIP : tunnel-id = 1234, remote address = 124.40.250.251
tunnel-id = 12345, remote address = 103.28.114.2
4.3.2 Pembuatan Interface Bridge pada Router I, Router II dan Router EoIP
Interface bridge digunakan untuk menghubungkan dua atau lebih (multiple)
ethernet/network. Mode bridge memungkinkan network yang satu tergabung dengan
network di sisi satunya secara transparan, tanpa perlu melalui routing, sehingga server
utama yang ada di network I bisa memiliki IP Address yang berada dalam 1 subnet yang
sama dengan network II.
4.3.3 Pengujian Jaringan VPN EoIP
Selanjutnya dilakukan pengujian terhadap jaringan VPN yang telah dibangun
untuk membuktikan bahwa kedua server dapat berkomunikasi melalui jaringan VPN
EoIP. Pengujian dilakukan dengan melakukan tes ping antar server.
12
Gambar 4.3 Pengujian Ping dari Server Utama ke Server Backup
Gambar 4.4 Pengujian Ping dari Server Backup ke Server Utama
Gambar 4.5 Pengujian Ping dari PC LAN ke Server Utama dan Server Backup
Berdasarkan Gambar 4.3, 4.4, dan 4.5 diatas dapat disimpulkan bahwa koneksi
VPN antar Router I dan Router II sudah berjalan serta koneksi VPN antara network LAN
kantor dengan server master dan server backup sudah terbangun.
4.4 Implementasi Failover Server
Pada tahap ini, dibangun implementasi failover server, dimana antar server
utama dan server backup akan tersinkronisasi baik data maupun koneksi sehingga jika
terdapat masalah pada server utama (mati, koneksi mati, dll), maka server backup akan
secara otomatis mengambil alih tugas server utama.
13
4.4.1 Instalasi dan Konfigurasi Aplikasi Heartbeat
Langkah awal dari tahap ini adalah melakukan instalasi paket aplikasi heartbeat
baik pada server utama maupun pada server backup.
Setelah melakukan instalasi paket heartbeat pada kedua server, selanjutnya
dilakukan konfigurasi terhadap aplikasi tersebut. Konfigurasi ini bertujuan agar kedua
server bisa saling berkomunkasi melalui aplikasi heartbeat, mengatur rule server yang
bertindak sebagai master dan yang bertindak sebagai backup, serta mengatur proses
failover ketika master server mengalami gangguan.
4.4.2 Konfigurasi Aplikasi Heartbeat
Selanjutnya dilakukan konfigurasi pada aplikasi heartbeat. Berikut langkah-
langkah yang dilakukan untuk mengkonfigurasi failover server :
1. Mengatur security dan autentikasi kode agar kedua server bisa berkomunikasi.
Model enkripsi security yang dipakai adalah sha1.
Gambar 4.6 Konfigurasi Autentikasi Server
2. Menambahkan hak akses terhadap file authkeys (/etc/ha.d/authkeys). Hak akses
terhadap file yang diberikan adalah 600 yaitu untuk user diberi akses read dan
write.
Gambar 4.7 Penambahan Hak Akses pada File authkeys
3. Mengatur proses failover server pada file ha.cf (/etc/ha.d/ha.cf).
Gambar 4.8 Konfigurasi Proses Failover
14
4. Mendefinisikan server yang bertidak sebagai master, ip address virtual, dan
service yang akan dimonitoring. Master server adalah host apps, ip address
virtual 192.168.100.4 dan service apache2
Gambar 4.22 Definisi Master Server, IP Virtual dan Service
5. Meng-copy file ha.cf , haresources, dan authkeys ke server backup
6. Menjalankan service heartbeat pada kedua server
# /etc/init.d/heartbeat start
4.4.3 Pengujian terhadap Jaringan Failover Cluster Server
Tahap selanjutnya adalah melakukan pengujian terhadap implementasi failover
pada jaringan vpn EoIP yang telah dibangun. Pengujian dilakukan dengan menggunakan
komputer kantor sebagai client, yang terhubung ke jaringan LAN pada Router I. Tujuan
dari pengujian ini adalah untuk membuktikan apakah client dapat menggunakan aplikasi
billing melalui jaringan EoIP, dan tetap dapat menjalankan aplikasi jika terdapat
gangguan pada master server dengan fungsi failover server yang telah dibangun.
Pengujian dilakukan dalam beberapa kondisi sebagai berikut:
1. Server utama dan server backup dalam keadaan hidup dan kondisi link
terhubung ke dalam jaringan vpn (kondisi 1).
2. Server utama dalam keadaan tidak bekerja (mati, link putus ke jaringan),
sementara server backup dalam kondisi hidup dan link terhubung ke jaringan
(kondisi 2).
Berdasarkan pengujian (kondisi 1 dan kondisi 2) dapat disimpulkan bahwa
proses failover cluster server sudah barjalan, dimana server backup dapat mengambil
alih tugas server master begitu pula sebaliknya.
4.5 Implementasi Sinkronisasi Database
Pada tahap ini dilakukan konfigurasi sinkronisasi database antar kedua server.
Aplikasi database yang digunakan pada aplikasi billing adalah MySQL database. Tujuan
dari sinkronisasi ini adalah untuk menyamakan record data pada database aplikasi biling
antar kedua sever, baik saat master server down maka data yang masuk pada backup
server akan secara otomatis ditransfer ke master server jika sudah up, begitu pula
15
sebaliknya, data di master server akan ditransfer ke backup server setiap ada perubahan
(insert, update , delete).
4.5.1 Pengujian Replikasi Database
Proses pengujian terhadap replikasi database yang telah dibangun dengan
menerapkan beberapa kondisi untuk membuktikan bahwa proses replikasi berjalan antar
kedua server. Berikut beberapa kondisi yang diterapkan dalam pengujian.
Kondisi 1
Melakukan proses insert (penambahan), update (perubahan), dan delete
(penghapusan) data billing di master server, dengan kondisi backup server dalam
keadaan hidup dan terhubung kedalam jaringan.
Kondisi 2
Melakukan proses insert (penambahan), update (perubahan), dan delete
(penghapusan) data di backup server, dengan kondisi master server dalam keadaan
mati atau tidak terhubung kedalam jaringan.
Berdasarkan pengujian replikasi database pada server master dan server backup
(kondisi 1 dan kondisi 2) dapat disimpulkan bahwa proses replikasi untuk sinkronisasi
database antar server sudah berjalan dengan menerapkan metode replikasi master to
master.
4.6 Pengujian Client Terhadap Akses Aplikasi Billing
Pengujian pada bagian ini ditujukan untuk mengetahui apakah client dapat
mengakses aplikasi billing baik pada Master Server maupun pada Backup Server. Hasil
uji coba menunjukkan bahwa jaringan yang dibangun berjalan baik pada setiap kondisi
seperti berikut.
1. Master Server dan Backup Server dalam kondisi hidup dan kondisi link terhubung
dengan jaringan VPN EoIP (kondisi 1).
2. Master Server dalam kondisi mati dan Backup Server dalam kondisi hidup serta
kondisi link terhubung dengan jaringan VPN EoIP (kondisi 2).
16
1. Kesimpulan
Kesimpulan yang dapat diambil dari kegiatan penelitian ini adalah sebagai berikut :
1. Sistem failover clustering server yang dibangun dapat bekerja dengan baik
berdasarkan pengujian yang telah dilakukan dimana jika salah satu server baik
secara fisik maupun secara jaringan tidak dapat diakses, maka user tetap dapat
mengakses data dan aplikasi server pada server backup.
2. Proses sinkronisasi data antar server utama dan server backup dapat berjalan
dengan baik dan realtime dengan memanfaatkan metode replikasi database
master to master, dimana masing-masing database akan bertindak sebagai
master untuk saling mengupdate data satu sama lain.
3. Response time failover server dari server utama ke server backup lebih pendek
dibandingan proses recovery dari server backup ke server utama, hal ini
dikarenakan pengaruh proses inisialisasi kedua server.
4. Jaringan VPN dengan metode EoIP(Ethernet over IP), dapat menjawab
kebutuhan akan syarat failover cluster server yang harus dalam satu subnet. Hal
ini dikarenakan EoIP melakukan metode bridging antar network.
5. Teknik failover cluster server dengan memanfaatkan jaringan VPN ini dapat
menjadi solusi perusahan jaringan untuk mengembangkan produk disaster
recovery system yang aman, karena backup server dapat ditempatkan dimana
saja dan dengan tingkat keamanan akses yang tinggi karena memanfaatkan
jaringan private (VPN).
17
DAFTAR PUSTAKA
Anonim, Manual:Interface/EoIP, http://wiki.mikrotik.com/wiki/Manual:Interface diakses
tanggal 10 Juli 2012 jam 20.00 wib
Anonim, Replicate Master to Master MySQL, http://alinux.web.id/archives/ diakses
tanggal 5 Juli 2012 jam 20.00 wib
Depkominfo. 2008. High Availibility System, Jakarta: Direktorat Sistem Informasi
Perangkat Lunak dan Konten.
Mansyurin, Pudja. 2011. Konfigurasi Debian Server. Jakarta: Al-Mansyurin Informatika.
Syafrizal, M. 2005. Pengantar Jaringan Komputer. Yogyakarta : Andi Offset.