perpustakaan.uns.ac.id
digilib.uns.ac.id
BAB III ANALISA KEBUTUHAN DAN PERANCANGAN SISTEM
3.1
Alat dan Bahan Perancangan sistem load balancing sekaligus failover cluster ini membutuhkan
minimal
3
PC
(Personal
Computer)
untuk
dapat
diimplementasikan. Instalasi hardware maupun software untuk menyusun kedua sistem ini sangatlah diperlukan. Untuk menyusun dari rancangan kedua sistem ini, dibutuhkan hardware dan software seperti berikut : a). Satu PC sebagai load balancing : 1.
Processor
: Intel Pentium IV 133 Mhz
2.
RAM
: 256 MB DDR2
3.
Harddisk
: 80 GB ATA
4.
NIC
: Onboard dan External PCI 10/100Mbps
Instalasi software yang diperlukan : a.
Sistem Operasi
: CentOS 6.5 32-bit
b.
Load Balancing
: haproxy 1.4.24
b). Dua PC sebagai web server : Node1 1.
Processor
: Intel Pentium IV 1.70 MHz
2.
RAM
: 512 MB DDR2
3.
Harddisk
: 40 GB ATA dan 80 GB ATA
4.
NIC
: Onboard
Instalasi software yang diperlukan : a.
Sistem Operasi
: CentOS 6.5 32-bit
b.
Kernel
: kernel-uek 2.6.39
c.
Cluster
: pacemaker 1.1.10, cman 3.0.12.1, commit to user
20
perpustakaan.uns.ac.id
digilib.uns.ac.id
pcs 0.9.90, ccs 0.16.2, resourceagents 3.9.2, ocfs2-tool-1.6 d.
Web Server
: httpd 2.2.15
e.
Database
: mysql-community-server 5.5.38
f.
Sinkronisasi
: drbd83-utils dan kmod-drbd83
File dan Database g.
Web Based
: phpMyAdmin 3.5.8
Database h.
Web CMS
: joomla 2.5.24
Node2 1.
Processor
: Intel Pentium Dual-Core 2.70 GHz
2.
RAM
: 1 GB DDR3
3.
Harddisk
: 320 GB SATA dan 80 GB ATA
4.
NIC
: Onboard
Instalasi software yang diperlukan : a.
Sistem Operasi
: CentOS 32-bit
b.
Kernel
: kernel-uek 2.6.39
c.
Cluster
: pacemaker 1.1.10, cman 3.0.12.1, pcs 0.9.90, ccs 0.16.2, resourceagents 3.9.2, ocfs2-tools-1.6
d.
Web Server
: httpd 2.2.15
e.
Database
: mysql-community-server 5.5.38
f.
Sinkronisasi
: drbd83-utils dan kmod-drbd83
File dan Database g.
Web Based
: phpMyAdmin 3.5.8
Database h.
Web CMS
: joomla 2.5.24
c). Hardware pendukung : 1. Kabel RJ-45 beserta konektor secukupnya. commit to user 2. Switch hub D-Link 5 port. 21
perpustakaan.uns.ac.id
3.2
digilib.uns.ac.id
Alur Penelitian Tahap-tahap dalam melakukan penelitian ini disajikan dalam bentuk bagan alur penelitian seperti berikut. 1. Inisiasi Hardware dan Software
2. Instalasi Sistem Operasi CentOS 6.5 32-bit
14. Testing Load Balancing Web Server
3. Instalasi Kernel
13. Konfigurasi HAProxy
4. Instalasi Management Cluster Pacemaker, CMAN, pcs, ccs, resourceagents dan ocfs2-tools-1.6
12. Instalasi Load Balancing HAProxy 5. Instalasi Web Server Apache 11. Testing Sinkronisasi File dan Database serta pengujian Failover Cluster
6. Instalasi Database MySQL-Server
10. Konfigurasi Pacemaker, CMAN
7. Instalasi DRBD
9. Konfigurasi DRBD, Apache, MySQL-Server
8. Konfigurasi Network Selinux, Firewall
commit to user Gambar 3.1 Bagan Alur Penelitian
22
perpustakaan.uns.ac.id
digilib.uns.ac.id
Keterangan lebih lanjut : 1.
Inisiasi Hardware dan Software. Tahap ini merupakan tahap awal / persiapan sebelum merujuk ke instalasi aplikasi. Menyiapkan seluruh kebutuhan hardware maupun software yang dibutuhkan dalam implementasi HAProxy di Linux CentOS.
2.
Instalasi sistem operasi CentOS 6.5 32-bit. Pada tahap ini, semua hardware yang dibutuhkan harus sudah terpenuhi dari rancangan sistem yang sudah fix untuk melanjutkan intalasi sistem operasi CentOS 6.5 32-bit. Instalasi dilakukan baik yang nantinya akan digunakan sebagai failover cluster maupun load balance server.
3. Instalasi Kernel. Tahap untuk melakukan instalasi kernel-uek, digunakan untuk menjalankan dan mengoptimalkan sistem management cluster. 4. Instalasi Management Cluster Pacemaker, CMAN, pcs, ccs, resourceagents dan ocfs2-tools-1.6. Tahap di mana akan dilakukan instalasi sistem untuk management cluster pada web server. 5.
Instalasi web server Apache. Pada tahap ini, dilakukan instalasi aplikasi httpd pada web server. Httpd ini adalah service yang berfungsi untuk melayani request dari client berupa http.
6.
Instalasi Database MySQL. Tahap ini adalah tahap untuk instalasi MySQL server. MySQL server ini berfungsi sebagai database yang berjalan di web server.
7.
Instalasi DRBD. DRBD merupakan unsur terpenting dalam sistem cluster ini. Karena DRBD berfungsi sebagai replikasi data diantara minimal dua server. DRBD dapat mereplikasi data berupa file maupun dalam bentuk commit to user database.
23
perpustakaan.uns.ac.id
8.
digilib.uns.ac.id
Konfigurasi Network, Selinux, Firewall. Tahap ini adalah tahap pemberian ip address, pemberian hostname tiap server, pemberian DNSname, pengaturan selinux dan firewall. Jika tidak dikonfigurasi dengan benar, maka sinkronisasi file maupun database tidak akan pernah terjadi. Untuk mempermudah konfigurasi, matikan saja selinux maupun firewall-nya.
9.
Konfigurasi DRBD, Apache, MySQL. Tahap ini dapat dilakukan setelah instalasi dari DRBD, Apache dan MySQL sudah dilakukan dengan benar. Pertama, konfigurasi untuk DRBD terlebih dahulu dan berikan file system OCFS2. Langkah kedua, konfigurasi apache agar dapat dijalankan di kedua server. Terakhir, konfigurasi MySQL agar dapat disinkronisasi oleh DRBD.
10. Konfigurasi Pacemaker, CMAN. Pada tahap konfigurasi ini digunakan untuk melakukan monitoring cluster atau service mana yang sedang bekerja. 11. Testing Sinkronisasi File dan Database serta pengujian Failover Cluster. Tahap testing yang pertama ini adalah tahap di mana dilakukan pengecekan sinkronisasi file maupun database. Setelah data dapat tersinkronisasi dan didapat data di kedua server sama, maka dilanjut ke pengecekan failover cluster apakah sudah jalan sistemnya. 12. Instalasi Load Balancing HAProxy. Tahap di mana dilakukan instalasi HAProxy yang difungsikan sebagai load balancer. 13. Konfigurasi HAProxy Tahap ini dilakukan konfigurasi HAProxy. Harus dikonfigurasi dengan teliti, apabila ip address yang dikonfigurasi salah, maka request dari client tidak akan pernah direspon oleh web server. 14. Testing Load Balancing Web Server Tahap terakhir untuk pengujian dari sistem load balancing. Apabila request dari client direspon oleh web server berarti konfigurasi dari awal sampai akhir sudahcommit benar.to user
24
perpustakaan.uns.ac.id
3.3
digilib.uns.ac.id
Perancangan Sistem Untuk merancang sistem ini diperlukan 2 buah web server dan 1 buah server untuk load balance. Server-server berada dalam jaringan lokal yang sama. Kedua web server ini memiliki ip address lokal bertujuan agar web server tidak dapat diakses langsung oleh client melalui jaringan internet karena dari segi keamanannya. Sedangkan untuk server yang berfungsi sebagai load balance memiliki ip addres publik yang dapat diakses melalui internet. Sehingga untuk mengakses web server, client diharuskan melalui server load balance terlebih dahulu. Server load balance akan memilih / memprioritaskan web server mana yang dipilih untuk melayani request dari user / client yang ditentukan dari konfigurasi aplikasi pada server load balance yang menggunakan algoritma Round Robin dan parameter yang dapat menentukan pembagian beban / pemilihan web server tersebut. Skema topologi hardware load balance dapat dilihat pada gambar 3.2.
Gambar 3.2 Skema Hardware Load Balancing Web Server Pada gambar 3.2 diatas adalah skema load balancing web server dari segi perangkat keras (hardware). Berikut adalah gambaran dari segi
commit to user software yang digunakan. (lihat Gambar 3.3)
25
perpustakaan.uns.ac.id
digilib.uns.ac.id
Gambar 3.3 Skema Software Load Balancing Web Server Software utama dalam penelitian ini yakni menggunakan HAProxy sebagai load balancing-nya (diumpamakan berwarna ungu), Pacemaker sebagai
alat
untuk
monitoring
service
yang
sedang
digunakan
(diumpamakan berwarna biru), DRBD sebagai alat untuk mengatur sinkronisasi file maupun database (diumpamakan berwarna coklat) beserta tools pendukung lainnya. Selain ketiga warna yang telah disebutkan, warna hijau berarti service yang seharusnya harus selalu aktif pada kedua server. Dalam penelitian ini, jenis cluster yang digunakan yakni Active/Active yang dapat diartikan bahwa kedua web server dalam keadaan aktif. Apabila salah satu web server sedang down, maka server yang lainnya akan mengambil alih seluruh tugas dari web server yang sedang down. Ada kelebihan yang lain untuk sinkronisasi file maupun database, yakni menggunakan jenis MASTER-MASTER. Dapat diartikan bahwa kedua commit to user yang tidak akan pernah terputus. server akan selalu melakukan sinkronisasi
26
perpustakaan.uns.ac.id
digilib.uns.ac.id
Alhasil, kedua server akan memiliki kesamaan file maupun database. DRBD menjadikan sinkronisasi menjadi MASTER-MASTER dengan mengikat service apache dan mysql. Kemudian pacemaker akan melakukan monitoring kedua server, apakah dalam keadaan Online, Offline ataupun Standby. Yang bekerja untuk mengecek server adalah CMAN. CMAN harus selalu aktif agar pacemaker dapat bekerja. Pacemaker menggunakan XML untuk
mendistribusikan
konfigurasi
cluster.
Konfigurasi
CMAN
menggunakan ccs sedangkan untuk pacemaker menggunakan pcs. Konfigurasi menggunakan ccs maupun pcs ini dimaksudkan untuk mempermudah konfigurasi agar tidak terjadi kesalahan apabila melakukan konfigurasi langsung pada file XML-nya. Resource-agents akan membantu dalam hal menyediakan resource untuk service yang akan dikelola oleh pacemaker. Saat client mengakses request http ke server load balancing, HAProxy akan bekerja untuk meneruskan request menuju ke web server yang berada dalam jaringan lokal. Dengan menggunakan algoritma Round Robin, HAProxy akan menyebarkan request ke semua server yang sedang dalam keadaan active secara merata. Kemudian web server yang dalam keadaan active akan merespon request dari client untuk diumpanbalikkan ke client. Dan client akan mendapatkan sejumlah informasi dalam bentuk http.
commit to user
27