• Tidak ada hasil yang ditemukan

T1 672008102 Full text

N/A
N/A
Protected

Academic year: 2017

Membagikan "T1 672008102 Full text"

Copied!
18
0
0

Teks penuh

(1)

1. Pendahuluan

Server merupakan suatu elemen penting dalam membangun sebuah jaringan komputer. Server sekarang ini dituntut untuk bisa melayani request secara bersama-sama dalam jumlah yang banyak. Serta kecepatan pelayanan merupakan salah satu hal yang harus bisa dilakukan oleh server. Salah satu penggunaan server yang sering diakses oleh banyak user adalah webserver, contohnya adalah indowebster. Situs indowebster menurut data dari Alexa.com adalah situs yang sering dikunjungi oleh pengguna internet dikarenakan adanya inforrmasi yang dibutuhkan oleh user dengan anggota berjumlah 1.261.080, dokumen berjumlah 1.202.230, kapasitas berjumlah 130,24 TB dan 19,50% pengunjung aktif harian.[1] Namun pada kenyataanya, server komputer sering terjadi masalah yang timbul, terutama pada beban jaringan yang dipakai. Server yang diakses oleh banyak user secara bersama-sama akan menjadikan server tersebut menjadi lambat atau bahkan mengalami kegagalan.

Dari permasalahan yang dihadapi, telah banyak solusi yang digunakan untuk mengatasi masalah pada beban jaringan. Salah satunya dengan menggunakan cluster server. Dalam hal ini akan diimplementasikan dengan menggunakan dua layanan cluster sekaligus dan menggabungkannya dengan istilah cluster switching. Cluster switching adalah sebuah metode atau teknik yang dipakai untuk menukar fungsi cluster yang berbeda dalam penanganan kondisi tertentu. Manfaatnya adalah resources dan fungsi dari kedua cluster dapat digunakan secara maksimal.

Tujuan dari penelitian ini adalah menganalisis sebuah cluster server dengan menggabungkan dua model cluster sekaligus yaitu high avaibility dan load balance dengan menggunakan teknik cluster switching. Dengan menggunakan dua model cluster sekaligus diasumsikan dapat memberikan sebuah kinerja server yang fleksibel dan mampu mengatasi beban jaringan dan memberikan kestabilan pada server. Terdapat beberapa jenis cluster yang dapat digunakan untuk merancang sebuah cluster komputer. Dengan menggunakan sistem load balancing yang digunakan untuk membagi beban ke seluruh server yang ada, server akan bekerja bersama-sama untuk melayani permintaan dari user. Dan sistem high avaibility yang berfungsi melakukan failover atau perpindahan resources dari satu server ke server yang lain agar kestabilan server tetap terjaga.

2. Tinjauan Pustaka

Penelitian Sebelumnya

(2)

mengakibatkan semua server backend akan mati dan akses user pun akan mengalami timeout [2].

Salah satu solusi untuk mengatasi permasalahan di atas adalah dengan menggunakan cluster switching yang digabungkan dengan teknologi high avaibility cluster, yang akan melakukan failover atau perpindahan resources dari satu server ke server yang lain secara otomatis agar kestabilan server tetap terjaga. Pertukaran fungsi cluster ke high avaibility dilakukan untuk mengatasi kegagalan fungsi server utama agar server lain yang menjadi backend dapat bekerja secara utuh dengan resources yang dimiliki. Teknologi ini diharapkan dapat menjadi solusi dalam mengatasi kegagalan server ketika terjadi gangguan.

Dalam jurnal yang berjudul “High Avaibility MMORPG dalam lingkungan cloud computing”, dilakukan penelitian berupa penggunaan cluster high avaibility di dalam sebuah permainan MMORPG (Massive Multiplayer Online Role Playing Game). Penggunaan cluster tersebut difungsikan agar sistem yang terpusat pada sebuah server akan terus aktif untuk terjaganya sesi permainan. Jika terjadi down atau salah satu server mati, maka koneksi akan tetap berjalan dengan dialihkan ke server yang berbeda. Kestabilan koneksi akan terjaga, namun beban bandwith untuk satu server dalam menangani traffic jaringan masih tergolong cukup lama. Hal ini disebabkan oleh kemampuan sistem pada traffic jaringan yang telah terimplementasi oleh server dalam mengatasi jumlah permintaan ke server yang terus bertambah [3].

Sebuah solusi untuk mengatasi permasalahan di atas adalah dengan menggunakan cluster switching yang digabungkan dengan teknologi load balance cluster, yang digunakan untuk membagi beban ke seluruh server yang ada, server akan bekerja bersama-sama untuk melayani permintaan dari user. Pertukaran fungsi cluster ke load balance dilakukan pada saat beban bandwith yang ditangani oleh server terlalu padat, dan dengan menyeimbangkan beban kepada dua server diasumsikan dapat membantu server dalam mengatasi jumlah permintaan client yang terus bertambah.

Cluster Server

Cluster Computing adalah teknik menghubungkan dua atau lebih komputer ke dalam jaringan dalam rangka mengambil keuntungan dari resources yang terdapat pada komputer yang menyediakan redundant interconnections, sehingga user hanya mengetahui ada satu sistem server yang tersedia dan komputer client tidak menyadari jika terjadi kegagalan pada sistem server karena tersedianya server sebagai redundant atau backup. Clustering computing dapat digunakan untuk load balancing cluster ataupun failover clustering(high avaibility).

(3)

client. Slave server akan mengambil alih tugas master server apabila master server tidak berfungsi atau mati.[4]

Load balancing cluster merupakan cluster server dimana anggota cluster server dikonfigurasikan untuk saling berbagi beban yang berfungsi mendistribusikan request dari client ke anggota server load balanced cluster. Secara umum cara kerja load balancer adalah menerima incoming request dari client dan meneruskan request tersebut pada server tertentu jika dibutuhkan. Load balancer menggunakan beberapa algoritma yang berbeda untuk melakukan control traffic network. Tujuan algoritma load balancer adalah untuk mendistribusikan beban secara pintar atau memaksimalkan kerja anggota servercluster. Algoritma load balance meliputi Roundrobin, weighted-roundrobin, least connection, dan load based.

Heartbeat merupakan perangkat lunak yang umum digunakan untuk cluster high availability. Heartbeat perlu dikombinasikan dengan resource yang diperlukan untuk membangun failover yang memiliki kemampuan menghentikan dan memulai service yang diinginkan seperti service IP address, webserver, dan mounting blok hard disk. Heartbeat menjalankan script inisialisasi untuk menjalankan service lain pada saat Heartbeat dijalankan atau bisa juga mematikan service lain pada saat Heartbeat dimatikan. Heartbeat juga melakukan perpindahan IP address dari satu server ke server yang lain (IP floating).

Haproxy merupakan aplikasi open sources untuk load balancer yang dibuat oleh Willy Tarreau pada tahun 2005 menggunakan bahasa C. Aplikasi yang merupakan singkatan dari High Availability Proxy digunakan untuk meningkatkan performa banyak website yang tersebar di banyak server. Aplikasi ini sangat cocok untuk webserver yang menangani jumlah traffic yang tinggi. Haproxy sendiri dipasang pada server front-end. Front-End server umumnya memiliki IP statis yang terintegrasi dengan DNS.

3. Metode Pengembangan Sistem

(4)

Gambar 1 Network Delevopment Life Cycle

Tahap Analysis

Pada tahap analisis ini dilakukan analisa permasalahan dan kebutuhan dengan mencari informasi dari dokumentasi yang mungkin pernah dibuat sebelumnya. Dengan menelaah setiap data yang didapat dari data-data sebelumnya, akan muncul suatu kebutuhan serta masalah yang akan dipecahkan. Permasalahan yang akan dibahas pada topik penelitian ini adalah terletak pada bagaimana membuat sebuah konfigurasi server yang dapat difungsikan sebagai cluster untuk mengatasi beban jaringan yang disebabkan oleh banyaknya user yang mengakses suatu webserver dengan menggunakan dua model cluster, yaitu high Avaibility dan load balance. Penggunaan dua model cluster sekaligus didasarkan pada fungsi yang terdapat di setiap cluster dan dimaksudkan agar dapat menutupi kelemahan pada tiap-tiap cluster. Setelah dilakukannya tahapan tersebut langkah selanjutnya adalah menganalisa topologi jaringan yang akan dibuat.

Tahap Design

(5)

Gambar 2 Topology Jaringan Cluster Server

Dari Gambar 2 perancangan topologi jaringan ini memerlukan 3 buah node / server yang terintegrasi sebagai server cluster. Node 1 memiliki IP 192.168.2.2, node 2 memiliki ip 192.168.2.3, dan node 3 memiliki alamat ip 192.168.2.5. Semua node diberi sebuah virtual ip 192.168.2.6 yang akan digunakan sebagai alamat public yang diakses oleh client. Node 1 dan node 2 difungsikan sebagai high avaibility cluster dan node 3 difungsikan sebagai load balance cluster dengan menggunakan node 1 dan node 2 sebagai backend server. Dibutuhkan sebuah switch sebagai penjembatan antar server.

(6)

Gambar 3 Flowchart cara kerja cluster switching pada high avaibility

Gambar 3 menggambarkan flowchart tentang cara kerja cluster switching yang dipakai pada high avaibility, langkah awalnya adalah mulai. Setelah itu program akan mencetak total bandwith dilayar console linux pada node 1, dimana total bandwith didapat dari jumlah koneksi yang dilakukan oleh client. Program akan mengecek apakah total bandwith kurang dari kapasitas yang sudah diset (1Mb). Jika tidak, program akan mencetak total bandwith lagi, dan jika ya maka program akan menghidupkan semua servis high avaibility yang akan membuat node 1 menjadi high avaibility.

Setelah dua kondisi di atas, program akan mengecek untuk kedua kalinya total bandwith apakah melebihi kapasitas yang sudah diset (15Mb). jika melebihi, program akan mematikan semua servis high avaibility dan membuat node1 menjadi load balance dan selesai. Program akan dihentikan, namun jika jumlah total bandwith tidak melebihi kapasitas (15Mb) , maka program akan menampilkan total bandwith pada console dan akan melakukan pengecekan kembali ke total bandwith yang pertama (1Mb).

Mulai

Mode Server

menjadi LB Selesai

Hidupkan Servis High Avaibility

Mode Server menjadi HA

Cetak total bandwith (B) pada layar console Cek total (B)

< 1 Mb

Cetak / tampilkan total bandwith (B) pada layar console

Matikan Servis High Avaibility

YA

TIDAK

YA TIDAK

Cek total (B) > 15 Mb

(7)

Gambar 4 Flowchart cara kerja cluster switching pada load balance

Untuk Gambar 4 menggambarkan cara kerja yang dipakai cluster switching pada server load balance di node 3. Langkah-langkah ataupun alur program sama seperti cara kerja pada server high avaibility. langkah awalnya adalah dengan memulai. Setelah itu program akan mencetak total bandwith dilayar console linux pada node 3. Program akan mengecek apakah total bandwith kurang dari kapasitas yang sudah diset (1Mb). Jika tidak, program akan mencetak total bandwith lagi, dan jika ya maka program akan mematikan semua servis load balance pada node 3 yang kemudian akan membuat servis high avaibility pada node 1 dan node 2 mengambil alih kinerja webserver.

Namun perbedaan mendasar dari kedua cluster ini terdapat pada saat pengecekan kedua dimana pada server load balance akan mengecek apakah server high avaibility pada node 1 mati atau tidak. Diasumsikan node 1 mengalami timeout karena servis high avaibility yang telah mati diakibatkan oleh jumlah beban yang melebihi batas. Jika tidak, maka program akan kembali ke pengecekan total bandwith awal (1Mb). Dan bila ya, maka program akan menghidupkan semua servis load balance dan mengambil alih kinerja webserver dari server high avaibility.

Mulai

Mode server

menjadi LB Selesai

Matikan Servis Load Balance

Mode Server menjadi HA

Cetak total bandwith (B) pada layar console Cek total (B) <

1 Mb

Cetak / tampilkan total bandwith (B) pada layar console

Hidupkan Servis Load Balance

YA

TIDAK

YA TIDAK

Cek server HA mati

(8)

Tahap Simulation prototype

Dalam perancangan sebuah jaringan, dibutuhkan sebuah software khusus di bidang jaringan untuk membuat simulasi dari topologi jaringan yang akan dibuat. Hal ini digunakan untuk melihat design dari jaringan yang akan dibangun dan sebagai bahan presentasi. Tetapi dalam penerapannya, tools yang digunakan dalam membuat simulasi dari topologi jaringan menggunakan Packet tracer dari Cisco

Tahap Implementation

Selanjutnya tahap implementasi akan diterapkan semua yang telah direncanakan dan didesain sebelumnya. Implementasi merupakan tahapan yang sangat menentukan berhasil atau gagalnya perancangan yang dibangun. Analisis ini meliputi instalisasi linux ubuntu server beserta konfigurasinya, pembuatan clusterserver, pengujian clusterserver, pembuatan shell script untuk cluster switching, dan pengujian kinerja cluster server dengan menggunakan cluster switching.

Tahap Monitoring

Tahapan monitoring merupakan tahapan yang penting agar jaringan dan komunikasi dapat berjalan sesuai dengan keinginan dan tujuan awal pada tahap awal analisa, maka perlu dilakukan kegiatan monitoring. Pada tahapan ini dilakukan beberapa percobaan untuk memastikan perangkat yang digunakan bekerja dengan baik. Percobaan yang dilakukan antara lain memastikan semua komponen server terhubung dengan baik terhadap client sehingga dapat diakses oleh user, dan cara yang dilakukan dengan melakukan ping dari komputer client ke semua node Memastikan pula seluruh service cluster dapat bekerja dengan baik sehingga saat pengujian berlangsung segala macam kesalahan yang terjadi dapat diminimalisir.

Tahap Management

(9)

4. Hasil Dan Pembahasan

Setelah tahapan perancangan sistem, maka selanjutnya adalah implementasi sistem yang dibangun. Pada perancangan sistem ini meliputi beberapa tahap antara lain instalisasi linux Ubuntu server beserta konfigurasinya, pembuatan clusterserver, pengujian clusterserver, pembuatan shell script untuk cluster switching, dan pengujian kinerja cluster server dengan menggunakan cluster switching.

Tahap awal dengan menginstal linux Ubuntu server dan mengkonfigurasinya. Pembuatan cluster server ini menggunakan sistem operasi Ubuntu server 12.04 (32 bit). Sistem operasi ini di-install pada ketiga komputer yang akan dijadikan server. Pembuatan server ini tidak hanya meliputi instalasi server akan tetapi juga meliputi konfigurasi jaringan dari ketiga server sehingga dapat diakses dengan komputer client melalui Local Area Network sesuai dengan topologi jaringan. Pembuatan jaringan ini meliputi konfigurasi IP address dari tiap – tiap server, netmask, dan pemberian hostname (DNS) di setiap server.[6]

Tahap pembuatan cluster server ditujukan kepada 3 buah server / node. Instalasi cluster dilakukan melalui console linux Ubuntu dari tiap – tiap node. Pada node 1 dan node 2 difungsikan sebagai server high avaibility, sedangkan untuk node 3 difungsikan sebagai server load balance. Hubungan antara node 1 dan node 2 adalah master dan slave, yang dikarenakan menggunakan tehnik cluster failover yang nantinya dapat saling berinteraksi antara node 1 dan node 2 untuk dapat saling mem-backup kinerja dari sistem server. Dan untuk node 3 berfungsi sebagai penyeimbang beban pada saat terjadi kepadatan pada jaringan.

Pembuatan cluster high avaibility dimulai dengan menginstal aplikasi Heartbeat pada node 1 dan node 2. Tahap berikut dengan mengkonfigurasi tiga file berupa ha.cf, haresources dan authkeys yang terdapat pada direktori /etc/ha.d/ di kedua node. Kemudian melakukan pendeklarasian DNS hosts di node 1 dan 2 agar tiap-tiap node yang terhubung mampu mengenali hostname di setiap node. File ini berisi keterangan tentang beberapa node yang akan dipakai oleh service Heartbeat.[7]

Pembuatan cluster load balance dimulai dengan menginstal aplikasi Haproxy pada node 3. Setelah itu, dilakukan pengkonfigurasian pada file /etc/haproxy/haproxy.cfg. dan file /etc/default/haproxy. Tahap terakhir dengan membuat virtual ip public pada tiap-tiap node agar kedua server high avaibility dan load balance dapat diakses oleh user dan tidak bentrok saat memberikan servis secara bergantian dengan menghidupkan dan mematikan virtual ip yang dijadikan sebagai alamat public.[8]

(10)

Gambar 5 pengujian Heartbeat pada client dengan perintah curl

Pengujian cluster load balance dapat dilakukan melalui browser dari client dengan mengakses halaman statistik Haproxy pada http: ://192.168.2.5/haproxy?stats. Pengujian dapat juga dilakukan dengan mengakses alamat IP dari node 3, secara otomatis client akan diarahkan pada salah satu alamat dari node 1 ataupun 2.

Gambar 6 pengujian Haproxy pada client dengan perintah curl

(11)

Source Code 1 Program shell script pada high avaibility pada node 1

Alur kerja dari Source Code 1 ini bermula dari sebuah kondisi dimana setiap 3 detik server akan mengecek total dari jumlah bandwith dengan menampilkan ke dalam console agar admin dapat melihat secara langsung total bandwith yang masuk kedalam server. Perintah yang digunakan untuk mengecek total bandwith menggunakan “ bash /var/www/getbytes.sh” yang dimasukkan kedalam variabel bernama “bb”. [10] Perintah tersebut digunakan untuk memanggil script lain yang memang difungsikan untuk mengambil data bandwith jaringan dengan menggunakan satuan byte. Total byte yang dihasilkan akan dijadikan patokan pada setiap kondisi dimana saat menghidupkan atau mematikan servis.

Proses script dilanjutkan pada penggunaan if untuk membuat suatu kondisi, bila total dari bandwith yang diterima server tidak lebih dari 1Mb maka server akan memulai memasuki mode high avaibility dengan menghidupkan virtual IP yang dijadikan sebagai IP public tempat client mengkases fungsi dari Heartbeat, dan mengaktifkan servis Heartbeat dan Apache2. Dalam kondisi seperti ini, cluster yang dipakai dalam keadaan mode high avaibility cluster.

#!/bin/bash while true

bb=`bash /var/www/getbytes.sh`

if [ “$bb” –gt 15000000 ] && [ “$lb” == 1 ]

then

echo “Load Balance Cluster”

echo “Total Active Connection : $bb” else

if [ “$bb” –gt 15000000 ] then

echo “Active Connection : $bb” echo “Load Balancing Cluster Active” ifconfig eth5:1 down

service apache2 start lb=1

ha=0 exit 1 else

if [ “$bb” –le 1000000 ] && [ “$ha” == 1 ]

then

echo “High Avaibility Cluster” echo “Active Connection : $bb” else

if [ “$bb” –le 1000000 ] then

echo “High Avaibility Active” /etc/init.d/networking restart service apache2 start

service heartbeat start ha=1

lb=0 else

(12)

Kemudian bila jumlah dari total bandwith melebihi batas, dalam script telah diset 15Mb dan diasumsikan kondisi ini server mengalami kepadatan jaringan, maka script akan menyuruh server untuk mematikan virtual IP yang berada di node 1. Jika virtual IP dalam kondisi mati , maka secara otomatis koneksi yang tersambung dari client akan mengalami timeout karena kedua cluster servis tidak sedang merespon. Namun, justru ini yang menjadi tujuan utama dari mematikan virtual IP, dikarenakan agar pada saat virtual IP di node 3 dihidupkan, dapat mengambil alih peran dari node 1 dengan status menjadi load balance.

Source Code 2 Program shell script pada high avaibility pada node 2

Alur kerja dari source code 2 sama dengan source code 1, namun perbedaan dari script ini terletak pada penambahan script untuk melakukan pengecekan keaktifan terhadap node 1. apakah node 1 yang menangani alamat public tersebut sedang dalam status hidup atau mati. Jika mati, maka node 2 akan menggantikan peran dari node 1 sehingga proses switching tetap bisa dilakukan dan servis dari kedua cluster tidak mengalami overlapping.

Pembuatan shell script load balance dibuat pada node 3 dengan nama carl.sh dan secara alur kerja program hampir sama dengan shell script high avaibility. Shell script load balance ini juga menggunakan total bandwith sebagai patokan di dalam setiap kondisi dimana saat menghidupkan atau

#!/bin/bash while true

a=`curl http://192.168.2.2` bb=`bash /var/www/getbytes.sh`

if [ “$bb” –gt 15000000 ] && [ “$lb” == 1 ]

then

echo “Load Balance Cluster”

echo “Total Active Connection : $bb” else

if [ “$bb” –gt 15000000 ] && [-z “$a”] then

echo “Active Connection : $bb” echo “Load Balancing Cluster Active” ifconfig eth5:1 down

service apache2 start lb=1

ha=0 exit 1 else

if [ “$bb” –le 1000000 ] && [ “$ha” == 1 ]

then

echo “High Avaibility Cluster” echo “Active Connection : $bb” else

if [ “$bb” –le 1000000 ] && [-z “$a”] then

echo “High Avaibility Active” /etc/init.d/networking restart service apache2 start

service heartbeat start ha=1

lb=0 else

(13)

mematikan servis load balance nantinya. Namun pada shell script ini ditambahkan perintah “curl”. “Curl” sendiri biasanya digunakan untuk mengecek isi dari halaman HTML dari alamat yang dituju. Akan tetapi perintah “curl http://192.168.2.6” dalam shell script ini difungsikan untuk mengetahui status dari alamat public yang telah dideklarasikan, apakah server yang menangani alamat public tersebut sedang dalam status hidup atau mati.

Source Code 3 Program shell script pada load balance server

Source Code 3 merupakan program dari Shell script load balance. Program ini akan mengecek kondisi status dari server yang sedang membawa IP public mengalami error atau timeout, maka secara otomatis server load balance akan segera menggantikan peran untuk menangani IP public dengan menghidupkan servis Haproxy dan virtual IP yang menjadi dasar dari fungsi dari load balance agar dapat diakses oleh client. Kondisi yang sama dengan shell script high avaibility terjadi pada saat script load balance mendeteksi bahwa total bandwith kurang dari 1 Mb, maka servis Haproxy dan virtual IP akan dimatikan. Dengan ini server dalam kondisi mode high avaibility.

Kemudian dilakukan pengujian fungsi cluster switching saat menerima jumlah request secara berkala pada semua node yang aktif. Pengujian ini bertujuan untuk melihat proses switching yang terjadi dari kedua cluster server. Pengujian ini juga dilakukan untuk mengukur tingkat performa tiap-tiap server dalam menangani jumlah request dalam jaringan. Diuji coba menggunakan aplikasi Nload telah didapat data sebagai berikut.

#!/bin/bash while true

ss=` bash /var/www/getbytes.sh` a=`curl http://192.168.2.6` clear

if [-z “$a”] then

echo “Load Balance Cluster Active” /etc/init.d/networking restart Service haproxy start

ha=0 lb=1 exit 1 else

if [ “$ss” –le 10000000 ] && [ “$ha” == 1 ]

then

echo “High Avaibility Cluster” echo “Active Connection : $ss” else

if [ “$ss” –le 1000000 ] then

service haproxy stop ifconfig eth3:1 down ha=1

lb=0

echo “High Avaibility Active” else

echo “Active Connection : $ss” fi

(14)

Tabel 1 Pengujian cluster switching pada ketiga node.

Gambar 7 Perbandingan kinerja cluster switching pada node 1, node 2 dan node 3

Dari Tabel 1 maupun gambar 7 menjelaskan tentang bagaimana cluster switching menukar fungsi antara high avaibility dan load balance saat menerima request dari client. Tabel di atas juga membandingan performa antara income dan outgoing pada semua node. Diketahui jumlah data tiap request adalah 36154 byte yang didapat dari ukuran data dari web yang diakses.

Pengujian pertama dibebankan sebanyak 510 request atau sekitar 17,43 MB yaitu total data yang dikeluarkan dari client. Pada kondisi tersebut, server berfungsi sebagai cluster high avaibility. Node 1 bersifat aktif untuk menangani semua request yang masuk dikarenakan fungsi high avaibility yang menjadikan node 1 menjadi master. Didapat rata-rata income dari node 1 sekitar 18.91 Mbit/s dan rata-rata outgoing 17.60 Mbit/s. Income dari node 2 berkisar 11.35 Kbit/s dan outgoing berkisar 9.52 Kbit/s. Dan income untuk node 3 berkisar 10.29 Kbit/s dan outgoing berkisar 6.07 Kbit/s.

Pengujian kedua dibebankan sebanyak 1530 request atau sekitar 52,29 MB. Pada kondisi tersebut, cluster switching masih menjadikan fungsi cluster server sebagai high avaibility. Semua request yang masuk masih ditangani oleh node 1 yang bersifat aktif. Didapat rata-rata income dari node 1 sekitar 21.20 Mbit/s dan rata-rata outgoing 22.53 Mbit/s. Income dari node 2 berkisar Jumlah

Request

Data Node 1 Node 2 Node 3 Fungsi Server

Cluster

510 Income

Outgoing 18.91 Mbit/s 17.60 Mbit/s 11.35 Kbit/s 9.52 Kbit/s 10.29 Kbit/s 6.07 Kbit/s High Avaibility

1530 Income

Outgoing 21.20 Mbit/s 22.53 Mbit/s 10.21 Kbit/s 9.88 Kbit/s 7.29 Kbit/s 10.34 Kbit High Avaibility

2550 Income

Outgoing 16.54 Mbit/s 27.75 Mbit/s 13.77 Mbit/s 26.08 Mbit/s 28.04 Mbit/s 47.93 Mbit/s Load Balance

5100 Income

Outgoing 24.43 Mbit/s 28.25 Mbit/s 27.12 Mbit/s 28.31 Mbit/s 34.67 Mbit/s 52.89 Mbit/s Load Balance 0 5000 10000 15000 20000 25000 30000 35000

request 510 request 1530 request 2550 request 5100

(15)

10.21 Kbit/s dan outgoing berkisar 9.88 Kbit/s. Dan income untuk node 3 berkisar 7.29 Kbit/s dan outgoing berkisar 10.34 Kbit/s.

Pengujian ketiga dibebankan sebanyak 2550 request atau sekitar 87,15 MB. Pada kondisi tersebut, cluster switching menjadikan fungsi clusterserver sebagai load balance. Semua request yang masuk masih ditangani oleh node 3 dan didistribusikan ke semua node yang aktif. Cluster load balance tersebut menjadikan node 1, node 2, dan node 3 bersifat aktif dalam membantu mengatasi request dari client. Node 1 dan node 2 memiliki rata-rata income dan outgoing yang hampir sama, didapat dari pembagian beban node 3. Sifat load balance terlihat jelas sekali dari pembagian beban secara merata kepada semua server. Didapat rata-rata income dari node 1 sekitar 16.54 Mbit/s dan rata-rata outgoing 27.75 Mbit/s. Income dari node 2 berkisar 13.77 Mbit/s dan outgoing berkisar 26.08 Mbit/s. Dan income untuk node 3 berkisar 28.04 Kbit/s dan outgoing berkisar 47.93 Mbit/s.

Pengujian keempat dibebankan sebanyak 5100 request atau sekitar 174,12 MB. Pada kondisi tersebut, cluster switching menjadikan fungsi cluster server sebagai load balance. Semua request yang masuk ditangani oleh ketiga node yang bersifat aktif. Didapat rata-rata income dari node 1 sekitar 24.43 Mbit/s dan rata-rata outgoing 28.25 Mbit/s. Income dari node 2 berkisar 27.12 Mbit/s dan outgoing berkisar 28.31 Mbit/s. Dan income untuk node 3 berkisar 34.67 Mbit/s dan outgoing berkisar 52.89 Mbit/s.

Kemudian dilakukan pegujian dengan membandingkan kinerja single server dengan load balance dalam menangani bandwith jaringan. Pengujian ini dilakukan untuk mengetahui performa dari cluster load balance melalui client dengan menggunakan aplikasi Siege sebagai benchmark untuk melihat perbandingan respon time dan juga throughtput antara kedua cluster server tersebut.[11]

Tabel 2 Perbandingan kinerja antara single server dengan load balance

Gambar 8 Grafik kinerja antara single server dengan load balance

Beban Perbandingan Single Server Load Balance

1000 Request

Respon Time 0.32 sec 0.25 sec

Throughput 1.61 Mb/sec 2,11 Mb/sec

Respon Time Throughtput

0 0,05 0,1 0,15 0,2 0,25 0,3 0,35

Respon Time

Single Server Load balance

0 0,5 1 1,5 2 2,5

Throughput

(16)

Dari hasil tabel 2 maupun gambar 8 dapat dilihat bahwa jumlah respon time atau waktu yang digunakan server untuk merespon request dari client yang dihasilkan pada single server 0,32 sec lebih lama dibandingkan server dengan menggunakan load balance 0,25 sec.. Dilihat dari jumlah throughtput atau kemampuan server untuk melayani client, load balance menghasilkan jumlah 1,61Mb /sec dan single user menghasilkan 2,11Mb/sec

Hal ini disebabkan kerja server load balance menggunakan dua komputer sekaligus saat menangani request dari client. Jadi waktu respon yang dihasilkan lebih cepat karena beban diseimbangkan oleh 2 server dibandingkan dengan single server yang hanya bekerja secara sendiri.

5. Kesimpulan

Kesimpulan dari hasil skripsi yang membahas tentang perancangan metode cluster switching menggunakan shell script ini, dengan menggunakan cluster switching dapat menukar dua fungsi cluster pada saat digunakan dalam penanganan kondisi tertentu. Penggunaan Cluster load balance mampu menyeimbangkan beban dari server dan penggunaan failover pada server mampu menjaga kestabilan server. Dengan menggunakan Shell Script yang diterapkan pada cluster switching, penukaran dua fungsi cluster dapat dilakukan secara otomatis tanpa harus mengetikkan perintah-perintah secara manual.

Kinerja server yang fleksibel dengan menggunakan fungsi 2 cluster sekaligus telah dibuktikan dengan pengujian kinerja cluster switching yang mampu menukar cluster high avaibility dan load balance yang dapat berfungsi secara bergantian dalam menangani jaringan. Serta pengujian kinerja load balance yang mampu mengatasi beban jaringan yang berlebihan pada satu server dengan membagi beban ke banyak server sehingga kerja dari server lebih ringan, hal ini dibuktikan dengan perbandingan kinerja single server dengan load balance. Diharapkan nantinya penelitian ini dapat diterapkan pada perusahaan atau instansi dengan pengguna jaringan komputer yang padat.

Daftar Pustaka

[1] Alexa Internet, 2014, How popular indowebster.com,

http://www.alexa.com/siteinfo/indowebster.com, diakses tanggal 25 April 2014.

[2] Iwan Rijayana, 2010, Teknologi Load Balance untuk mengatasi beban pada server. Jurusan Teknik Informatika, Universitas Widyatama Bandung [3] Danang Haryo Sulaksono, 2012, High Avaibility MMORPG dalam

lingkungan Cloud Computing. Pasca Sarjana Institute Teknologi Sepuluh November Surabaya.

[4] Ngesti Andik Rimbawanto, 2008, Perancangan dan Implementasi High-Availability Clustering Server Menggunakan Open Source Software Sebagai Back-End Database, Fakultas Teknologi Informasi, UKSW. [5] Deris Stiawan, Fundamental Internetworking Development& Design Life

(17)

[6] Paul Cobbaut, 2013, Linux Fundamentals, GNU Free Documentation. [7] Craig R Webster, 2012, High Avaibility Apache on Ubuntu 8.04. GNU Free

Documentation.

[8] Craig R Webster, 2012, Load Balanced highly available MySQL on Ubuntu 8.04. GNU Free Documentation.

[9] Machtelt Garrels, 2010, Bash Guide for Beginner, Fultus Corporation, GNU Free Documentation.

[10] Larsnooden, 2013, Beginner Bash Scripting, https://help.ubuntu.com diakses tanggal 25 Februari 2014.

(18)

Gambar

Gambar 1 Network Delevopment Life Cycle
Gambar 2 Topology Jaringan Cluster Server
Gambar 3 Flowchart cara kerja cluster switching pada high avaibility
Gambar 4 Flowchart cara kerja cluster switching pada load balance
+4

Referensi

Dokumen terkait

1) Penggundulan hutan yang mengakibatkan debit dasar sungai (base flow) di musim kemarau menjadi menurun. 2) Meningkatnya erosi dan sedimentasi di sungai, sebagai akibat

A- 81.01-85 Merupakan perolehan mahasiswa yang mengikuti perkuliahan dengan sangat baik, memahami materi dengan sangat baik, memiliki tingkat proaktif dan kreatifitas tinggi

kegiatan” dan “menyangkut jenis sumber daya tertentu” yang penentuanya akan diatur dalam peraturan perundang-undangan. Dengan demikian, maka penerapan asas strcit liability

Namun beberapa tulisan yang dikutip penulis memperlihatkan hal yang bertolak belakang, seperti : Andiranto (1993) menyatakan paparan bising pada suatu lingkungan yang besar

Penerapan Strategi Promosi Free Wine Tasting Sebagai Upaya Untuk Meningkatkan Volume Penjualan Pada PT Hatten Bali.. Penerapan On Time In Full Delivery Dalam Pengadaan Bahan Baku

Hasil perhitungan analisis B/C Ratio (B/CR) yang dilakukan terhadap pengusahaan kayu bulat HPHTI menunjukkan bahwa dengan menggunakan tingkat bunga efektif sebesar 5,19%,

Variabel kepribadian sebenarnya merupakan salah satu faktor penyebab kekerasan dalam pacaran, tapi dari hasil penelitian ini menunjukkan bahwa bukan variabel tipe kepribadian

Sebagai perguruan tinggi yang menjadi tumpuan untuk terwujudnya daya saing serta martabat bangsa Indonesia, dalam fungsi, tugas dan tanggung-jawabnya ITB mempunyai