HIGH AVAILABILITY SERVER STORAGE MENGGUNAKAN
APLIKASI DRBD DAN HEARTBEAT BERBASIS SISTEM OPERASI
CENTOS 6.5 PADA JARINGAN WAN
Helmi Prasetyo1, (1)
Jurusan Teknik Elektro, Fakultas Teknik, Univeristas Mercu Buana, Meruya, Jakarta, Indonesia Tel: +6285780704290, E-mail: [email protected]
Dosen : DR Ir Iwan Krisnadi MBA
Abstrak
Teknologi backup, cluster, fail-over dan High Availability (HA) merupakan teknologi yang banyak dibutuhkan dilingkungan perusahaan atau ruang lingkup bisnis yang menggunakan sistem komputerisasi. Linux sebagai sebuah pilihan terbaik untuk sistem server menyediakan berbagai macam tools powerful yang dapat dipergunakan dengan biaya minimal. Ketersediaan data dan layanan sangat dibutuhkan yang bersifat sangat penting. Apabila terjadi kerusakan data ataupun layanan, sangat dibutuhkan adanya server cadangan. Sesuai dengan dasar teori dari teknologi High-Availability, yaitu ilmu untuk menciptakan redundansi dalam setiap sistem dan subsistem untuk memastikan bahwa layanan tetap aktif dan tersedia. Pada penelitian kali ini penulis membangun sistem clustering pada sistem operasi linux CentOS 6.5 64bit dengan menggunakan aplikasi cluster Distributed Replicated Block Device (DRBD) sedangkan untuk aplikasi fail-over menggunakan aplikasi Heartbeat. Implementasi dilakukan pada jaringan Wide Area Network menggunakan dua buah routermikrotik sebagai penghubung jaringan kedua serber. Hasil dari penelitian ini terlihat bahwa proses sinkronisasi tiga file besar data yang diujikan memiliki status sinkronisasi yang berbeda-beda. Bahwa semakin besar data yang dirubah semakin lama proses sinkronisasi data dan semua tergantung pada kecepatan menulis/membaca harddisk dan infrastruktur bandwith
jaringan.
Keyword : High-availability, Failover, Heartbeat, Distributed Replicated Block Device
A. Pendahuluan
Latar Belakang
Pada saat ini Teknologi Informasi dan Komunikasi (TIK) semakin berkembang dari tahun ke tahun, terutama dalam hal jaringan keamanan komputer terkait dengan keamanan penyimpanan data server dilingkungan suatu organisasi, pendidikan, bisnis maupun instasi pemerintahan.
Dalam penyimpanan data yang dapat melayani pengguna secara online untuk mudah diakses dimana saja dibutuhkan sebuah data center. Namun sering kali data center mengalami kerusakan, downtime, dan bahkan kehilangan data-data yang bersifat penting. Hal ini menyebabkan layanan terhadap client terganggu dan instansi tersebut dapat mengalami
antara lain ketersediaan infrastruktur pada pusat-pusat layanan bisnis. Dalam infrastruktur pada data center ini tentu saja rentan terhadap gangguan mulai dari bencana alam misalnya banjir, kebakaran, mati listrik hingga ancaman kejahatan dan gempa bumi. Sehingga perlu ada pemecahan permasalahan yang terjadi pada penyimpanan data/database (Sugianto, 2012).
High Availability Server Storage merupakan solusi yang baik dalam bidang teknologi (IT) untuk menyimpan data-data penting. High Availability Server Storage menjadikan suatu pelayanan bagi masyarakat agar data yang sudah tersimpan pada data base tidak hilang secara cepat saat server sedang mengalami downtime dengan menggunakan sekelompok server database yang terhubung antar server satu dengan yang lainnya dan saat mendistribusikan data ke server untuk disimpan dengan secara otomatis data tersebut menduplikat dengan system mirror. Metode ini sangat baik dalam penanganan system management server menjamin operasional bisnis tetap berjalan sebagaimana mestinya sehingga keberlangsungan penyimpanan data duplicate tetap terjaga meski salah satu pusat data mengalami gangguan(Solikin, 2011).
Setelah melakukan studi literatur dari berbagai macam sumber, dapat diketahui tidak ada penelitian yang menggunakan konsep High Availability pada jaringan WAN dan dari uraian diatas penulis berkeinginan membahas dan mengimplementasikan konsep High
Availability untuk ketersedian Server Storage pada jaringan WAN menggunakan software Distributed Replicated Block Device (DRBD) dan Heartbeat
Tujuan Penelitian
Adapun tujuan dari penelitian ini adalah :
a. Membangun High Availability Server Storage yang menggunakan sistem operasi Linux CentOS 64 bit.
b. Untuk mengetahui sistem yang dihasilkan dari server yang menggunakan high availability server storage menggunakan DRBD dan Heartbeat proses sharing data yang dilakukan pada client ke server. c. Merancang serta membangun replicated data server pada jaringan Wide Area Network untuk mengurangin terjadinya downtime atau kegagalan pada server di satu tempat. d. Mengetahui tinjauan terhadap replicated data server menggunakan DRBD dan heartbeat berbasis sistem operasi CentOS 6.5 64 bit pada jaringan WAN
Batasan Penelitian
Batasan masalah dalam penulisan MEMBANGUN HIGH AVAILABILTY
SERVER STORAGE
MENGGUNAKAN APLIKASI DRBD DAN HEARTBEAT BERBASIS SISTEM OPERASI CENTOS 6.5 PADA JARINGAN WANterfokus pada rumusan masalah, maka diperlukan batasan masalah seperti dibawah ini: a. High Availability Server Storage ini diimplementasikan dengan dua server yang aktif dan pasive menggunakan DRBD dan Heartbeat
c. Aplikasi yang digunakan adalah aplikasi opensource
d. Implementasi High Availability Server Storage ini hanya membahas perbandingan pada saat kegagalan pada server atau downtime yang dihasilkan dengan menggunakan aplikasi DRBD dan Heartbeat dengan menggunakan Windows sebagai client untuk pengujian terhadap server.
B. Telah Pustaka
Dalam masyarakat masa kini teknologi informasi sudah tidak dapat dipisahkan oleh kegiatan sehari-hari, terdapat beberapa aplikasi yang membutuhkan proses cepat tetapi terkendala dengan kondisi perangkat keras (hardware). Fenomena ini menimbulkan ide bagaimana jika resource-resource yang banyak dan tersebar itu
digabungkan. Karena bisa
dibayangkan apabila resource-resource tersebut dapat digabungkan, maka akan terbentuk suatu lingkungan komputasi yang sangat besar. Solusi ini dikenal sebagai high availabiity, high availability menawarkan
pemanfaatan ketersedian
penyimpanan data yang dapat memfasilitasi masyarakat untuk mendistribusikan data pada server dengan meminimaliskan downtime. Setiap orang bisa menggunakannya secara bebas sesuai kebutuhan masing-masing, namun juga tetap memberikan kuasa penuh terhadap pemilik resource untuk mengatur kebijakannya. Berbagai institusi bisnis, pendidikan dan penelitian banyak mengadopsi cara ini di departemennya masing-masing, sehingga terbentuk resource - resource yang tersebar secara geografis.
Tulisan ini membahas beberapa tools yang bisa dimanfaatkan untuk mendukung proses backup dan recovery yang memiliki tujuan akhir terciptanya suatu sistem yang handal dan mampu memberikan benefit optimal dalam penggunaannya. Sistem clustering pada tulisan ini menggunakan aplikasi Distributed Replicated Blok Device ( DRBD ) sedangkan untuk aplikasi fail-over menggunakan Heartbeat dan untuk mendukung implementasi High Availability menggunakan service Samba sebagai aplikasi file server linux yang dapat diakses oleh client yang menggunakan sistem operasi Windows.
Cluster Computer
Sistem Cluster computing merupakan beberapa komputer independen yang digabungkan menjadi satu sistem dengan menggunakan jaringan dan software. Dalam pengertian mendasar, dua atau lebih komputer digunakan untuk menyelesaikan satu masalah berasama-sama adalah sebuah Cluster. Berbagai macam konfigurasi dan metode telah tersedia saat ini, yang memungkinkan membangun Cluster dengan biaya murah karena tidak membutuhkan perangkat khusus (Anugrah Dwi dan Priyadi, 2009.). Secara mendasar terdapat tiga macam Cluster
High-availability cluster atau Fail-
over: bila ada layanan pada salah satu mesin yang gagal, mesin lainnya akan mengambil alih.
Load-balancing: Load-balancing
yang kemudian mendistribusikan beban kerja secara efisien antara node aktif yang tersisa. Loadbalancing cluster sangat berguna bagi mereka yang bekerja dengan anggaran Teknologi Informasi yang terbatas. Mencurahkan beberapa node untuk mengelola alur kerja sebuah cluster memastikan bahwa kemampuan pemrosesan yang terbatas dapat sistem komputer yang terintegrasi atau bekerja sebagai suatu komputer individual. Cluster middleware
bertanggung jawab untuk
programming environments tools menyediakan kebutuhan dan memberikan kemudahan pada user dalam mengembangkan program aplikasi
sekuensial atau paralel yang dibutuhkannya seperti message passing libraries.
Komponen yang terdapat pada cluster komputer ialah :
Node, dimana sistem cluster
terdiri dari beberapa node. Paling sederhana terdiri dari
dua node. Node disini adalah komputer yang mandiri, artinya mampu memproses tugas
komputasi tanpa node lain.
Sistem operasi, Sistem operasi untuk dapat saling bekerja sama
Aplikasi yang mendukung
pemindahan tugas (biasanya pada high performance
cluster, menggunakan pustaka Message Passing Interface atau Paralel Virtual
Machine).
Manfaat Cluster Computer
Komputer cluster memiliki manfaat lebih dari komputer
banyak kasus, terbukti biaya lebih efektif daripada mainframe dengan kekuatan yang sama.
3. Peningkatan Jaringan
Teknologi:Driving pengembangan cluster komputer telah mengalami kemajuan besar dalam teknologi yang berhubungan dengan
jaringan,bersama dengan
High Availability
High availability cluster atau Failover Cluster adalah cluster komputer yang
diimplementasikan dengan tujuan utama untuk meningkatkan availabilitas layanan yang
disediakan cluster tersebut. High availability cluster beroperasi dengan menggunakan
banyak komputer dimana komputer-komputer tersebut berguna untuk menyediakan
layanan ketika suatu sistem komputer mengalami crash. Secara normal, apabila suatu server mengalami crash, maka layanan yang disediakan server tersebut akan terhenti
sampai server tersebut diperbaiki (Nugroho Prasetyo, 2009).
Jenis-jenis High Availability
Ada dua jenis high availability, yaitu continuous availability dan failover
availability. Continuous avilability adalah suatu pendekatan untuk sistem komputer dan desain aplikasi yang melindungi user terhadap downtime, apapun penyebabnya serta memastikan bahwa pengguna tetap terhubung ke data mereka, baik file data dan aplikasi bisnis. Continuous availability menggambarkan metode teknologi informasi untuk menjamin kelangsungan bisnis. Failover availability didefinisikan sebagai kemampuan untuk koneksi client yang berpindah dari satu server ke server lainnya dalam hal terjadin kegagalan server sehingga aplikasi client
dapat terus beroperasi (Fox et al, 2012).
Replicated System
Replicated adalah suatu teknik untuk melakukan copy dan
pendistribusian data
melaksanakan sinkronisasi antara objek-objek konsistensi data dapat terjamin. Dengan menggunakan replicated system ini, data dapat didistribusikan melalui koneksi jaringan lokal maupun internet. Replikasi juga memungkinkan untuk mendukung kinerja aplikasi penyebaran data fisik sesuai dengan penggunaannya, seperti pemrosesan transaksi online (Widhyaestoeti, 2011).
C. Metode Penulisan
Pada bab ini dijelaskan tahapan penelitian, teknik pengumpulan data, rencana pengolahan data, analisa serta evaluasi yang digunakan pada penelitian ini.
TAHAPAN PENELITIAN
Metodologi yang digunakan dalam penelitian ini mencakup beberapa langka, yaitu studi literatur, pengumpulan data, desain eksperimen, implementasi, analisahasil pengujian, penulisan laporan akhir dan publikasi.
Studi LiteraturStudi
Literatur PengumpulaPengumpulan Datan Data
Desain
Analisa Hasil Laporan dan Penulisan Publikasi Penulisan Laporan dan
1. Studi Literatur
Pada tahap ini dilakukan penelusuran literatur seperti buku, referensi- referensi baik melalui perpustakan, internet dan lain sebagainya tentang high availability server storage, aplikasi replicated DRBD, samba backup, recovery,clustering dan bagaimana dalam membangun prototype sistem high availability Server Storage. bagaimana penerapannya terkait dengan judul penelitian ini.
2. Perancangan dan Implementasi
Perancangan dan implementasi, metode ini digunakan untuk melakukan analisis kebutuhan, desain atau perancangan, instalasi, setting, dan konfigurasi software dan hardware yang dibutuhkan dalam membuat sistem high availability Server Storage yang meliputi dua komputer server dan komputer client di dalam jaringan Wide Area Network (WAN). Tahapan yang dilakukan adalah sebagai berikut:
1) Merancang topologi jaringan yang ingin dibangun.
2) Konfigurasi Router Mikrotik untuk membangun sebuah jaringan komputer yang besar.
3) Instalasi sistem operasi di dua komputer server menggunakan linux CentOS 6.5 64bit dan satu komputer client menggunakan Windows 7.
4) Instalasi serta konfigurasi aplikasi DRBD dan Heartbeat, aplikasi Samba (sebagai file sharing) di kedua komputer server.
3. Pengujian dan Evaluasi Aplikasi
Setelah proses perancangan dan implementasi telah selesai dilakukan seperti instalasi dan konfigurasi di
komputer server, maka dilakukan pengujian berupa koneksi dari komputer-komputer tersebut. Setelah terkoneksi dengan baik, pengujian berikutnya dilakukan pada client untuk sharing data ke server primary dan berikutnya dapat dilihat data yang di replicated dari server primary ke server secondary.
4. Analisa Hasil Pengujian
Tahap ini dilakukan dengan menguji server yang sudah dilakukan konfigurasi aplikasi DRBD dan Heartbeat sebagai tolak ukur meminimalisirkan kehilangan data disaat server primary mengalami downtime. Dengan menggunakan client mengakses data yang disimpan oleh server primary melalui file sharing dan data yang sudah di share ke server primary akan di replicated ke server secondary maka data yang disimpan menjadi dua di server primary dan di server secondary.
Analisis Sintesis
Sesuai dengan metode penelitian yang telah dijelaskan pada bab 3
sebelumnya,hasil dan
pembahasannya adalah sebagai berikut:
Analisa Sistem High Availability
Pada analisa ini mengukur kecepatan singronisasi data antara node 1 dengan node 2. Sebelum pengujian dilakukan terlebih dahulu melihat kecepatan menulis dan membaca pada harddisk penyimpanan. Cara mengetahui kecepatan harddisk lakukan perintah berikut:
# hdparm –tT /deb/sdb
(Perintah untuk mengetahui kecepatan membaca harddisk)
Gambar 3.1 Kecepatan membaca harddisk
# dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync
(Perintah untuk mengetahui kecepatan menulis harddisk)
Gambar 3.1 Kecepatan menulis harddisk.
Dapat dilihat selain kecepatan jaringan yang menentukan faktor sinkronisasi data HighAvailability adalah dari kecepatan membaca atau menulis hardisk dari server yang dapat diukur sebagai acuan kecepatan sinkronisasi antara node 1 dengan node 2. Selanjutnya adalah menganalisa sinkronisasi data pada disk DRBD.
Dari data dua tabel diatas sudah dapat menganalisa kondisi yang terjadi pada server High availability. Semakin besar data yang dirubah semakin lama proses sinkronisasi data.
Pada Tabel 3.1 pengujian dilakukan copy file dengan dua kondisi. Kondisi pertama saat kedua server aktif dan kondisi kedua saat salah satu server terjadi down. Sedangkan pada Tabel 3.2 pengujian sinkronisasi dilakukan pada saat server node 1 down selanjutnya diaktifkan kembali akan terlihat proses kecepatan dan waktu sinkronisasi data dari server node 2 terhadap server node 1. Selain kecepatan baca/tulis harddisk dan spesifikasi server, untuk kecepatan sinkronisasi tidak bisa dipastikan karena faktor yang lebih utama adalah pada bandwith jaringan High Availability itu dibangun.
Analisa sinkronisasi pada Tabel 3.1 dan Tabel 3.2 menggunakan terminal pada server node 2 untuk memonitor menggunakan perintah :
# watch cat /proc/drbd .
ctrl+c . Berikut contoh tampilan watch pada tampilan terimanal node 2:
Gambar 3.3 Contoh tampilan watch DRBD
Gambar 3.4 Contoh tampilan sinkronisasi DRBD
Kesimulan dan saran
1. High Avaibility Server Storage menggunakan aplikasi Heartbeat dan DRBD ini dapat melakukan proses backup otomatis bagi server utama (master) apabila sedang down yang kemudian dialihkan kepada server backup yang keduanya dapat mengoptimalkan kinerja jaringan serta tingkat High Availability pada infrastruktur IT.
2. Topologi jaringan yang digunakan dalam skripsi ini telah mendukung konsep WAN( Wide Area Network ) dalam menghilangkan kesalahan pada satu titik Sehingga apabila terjadi gangguan pada salah satu node maka kerja node yang lain tidak mengalami dampak yang sama.
3. Keuntungan lain dari penggunaan metode ini adalah bisa dilakukan penjadwalan nonaktif server. Jadi misalnya dalam satu minggu sebuah server diistirahatkan selama satu hari. Jadi salah satu server bisa
beristirahat. Tetapi untuk menerapkan contoh ini tidak bisa hanya dua node, minimal tiga node untuk tetap membuat sebuah sistem memiliki availability (tingkat ketersediaan layanan) yang tinggi. Jadi, seandainya ada satu node yang sedang beristirahat, tetap ada dua node yang aktif melayani user.
4. Kesimpulan dari analisa yang dilakukan adalah semakin besar data yang dirubah pada sistem High Availability semakin lama proses sinkronisasi data. Pengujian sinkronisasi dilakukan dengan tiga file besar data yang berbeda yaitu file pertama sebesar 700MB memiliki kecepatan rata-rata sinkronisasi data 7,556 K/sec waktu sinkronisasi data 1 menit 43 detik , file kedua 300 MB memiliki kecepatan rata-rata sinkronisasi data 8,156K/sec waktu sinkronisasi data 46 detik, dan besar data file ketiga 20MB memiliki kecepatan rata-rata sinkronisasi data 8,156 K/sec waktu sinkronisasi data 4 detik. Analisa tersebut tidak bisa dijadikan acuan karena itu semua
tergantung pada kecepatan
menulis/membaca harddisk dan infrastruktur bandwith jaringan dimana sistem High Availability dibangun. 5. High Avaibility Server Storage menggunakan aplikasi Heartbeat dan DRBD Merupakan konsep dimana suatu server dapat berjalan dengan
maksimal, karena memiliki
ketersediaan yang tinggi didalam jaringan. Memiliki node yang berlebih, dimana node yang berlebih tersebut dijadikan cadangan bagi node yang mengalami gangguan.
Penulis berharap kedepannnya untuk konsep High Availibility Server Storage dapat dikembangkan dengan memanfaatkan teknologi opensource lain nya. Penulis juga menyarankan HA sebaiknya tetap dilengkapi dengan mekanisme backup lain seperti RAID maupun backup manual dikarenakan Sistem High Availibility Server Storage tidak bisa berdiri sendiri.
Ucapan Terima Kasih
`Puji syukur kami panjatkan atas kehadiran Tuhan Yang Maha Esa, karena berkat-Nya Program Kegiatan Mahasiswa ini dapat diwujudkan sesuai dengan rencana. Melalui kegiatan ini, tim penulis sangat berharap dapat berkembang kearah positif dan memberikan manfaat yang besar bagi masyarakat di Indonesia. Tim penulis juga mengucapkan terima kasih kepada semua pihak yang telah membantu secara teknis maupun nonteknis. Sebagai penutup, tim penulis memohon maaf atas segala kesalahan selama kegiatan ini terlaksana dari awal sampai akhir.
Referensi
Alquran. Diakses dari
http://www.alquran-indonesia.com/ pada Juli 2014.
Distributed Replicated Block Device.
Di akses dari
http://en.wikipedia.org/wiki/Distributed_ Replicated_Block_Device pada Juni 2014
Easy Samba server installation on
CentOS. Di akses dari
http://lintut.com/easy-samba-serverinstallation-on-centos-6-5/pada Juli 2014
High Availability linux lamp. Diakses dari http://karedok.net/buku/high-availability-linux-lamp pada Juni 2014 High Availability. Diakses dari http://en.wikipedia.org/wiki/High_availa bility pada Juli 2014
Linux CentOs5.5 CluserHA. Di akses dari
http://overflow.web.id/source/LinuxCen tOs5.5_ClusterHA.pdf pada Juli 2014
Samba Serber.Di akses dari http://blogdeddytkj.blogspot.com/2013/ 02/samba-server-sejarahpengertian-fungsi.html pada Juli 2014
Software Development For High Availability Clusters. Diakses dari http://www.drbd.org/ pada Juli 2014. Tanenbaum, Andrew S. 2004. ”Jaringan Komputer, Edisi Bahasa Indonesia, Jilid 1”, PT. Prenhallindo, Jakarta
Utdirartatmo, F. 2004. Clustering PC di Linux dengan OpenMosix dan ClusterKnoppix, Penerbit Andi, Yogyakarta.
Rivai, Muhammad Andargini., 2014. ”Panduan Clustering ,Fail Over & Linux High Availability Server menggunakan SLES”, PT. Exceellent Infotama Kreasindo, Bekasi