ANALISIS PERFORMANSI SERVER CLUSTER PADA LOAD

advertisement
ANALISIS PERFORMANSI SERVER CLUSTER PADA LOAD BALANCING
WEBSERVER MENGGUNAKAN NLB MANAGEGR
Muhammad Sholikhin1, Muhamad Akbar2, Zaid Amin3
Mahasiswa Universitas Binadarma1, Dosen Universitas Binadarma2, Dosen Universitas Binadarma3
Program Studi Informatika, Fakultas Ilmu Komputer, Universitas Bina Darma
Jl.Ahmad Yani no.12 Plaju Palembang
Telp. (0711) 515679 ext.177, Faks. (0711) 515679 ext 124
Pos-el: [email protected] [email protected] [email protected]
Abstract: At the moment the website is one of the media information that is growing very fast. In
memdesain a web would be in accordance with the needs. But not infrequently the web that is often
experienced over load because no longer able to withstand the load. Therefore, it makes a server cluster is
a solution to deal with such matters. In building a server cluster will certainly require methods to be used
in its application, to the server cluster that development can be carried out easily then using load
balancing with NLB Manager on a Windows server is a way that can be used. After building a server
cluster can certainly not be directly granted to use. Because we also have to know in advance what the
performance of a server cluster that has been built. To determine the performance of a server cluster we
can test performance by testing the application using Apache benchmark. The results showed that the
build server cluster by using NLB Manager is very easy and can improve the performance of servers are
built.
Keywords: Server cluster, load balancing, NLB manager, the performance test.
Abstrak: Pada saat ini website merupakan salah satu media informasi yang berkembang sangat cepat.
Dalam memdesain sebuah web tentu harus sesuai dengan kebutuhan. Namun tak jarang web yang sering
mengalami over load karena tidak lagi mampu menahan beban. Oleh karena itu membuat sebuah server
cluster adalah sebuah solusi untuk menangani hal tersebut. Dalam membangun server cluster tentunya
akan membutuhkan metode yang akan digunakan dalam penerapannya, untuk itu agar pembangunan
server cluster dapat dilaksanakan dengan mudah maka menggunakan metode load balancing dengan NLB
manager pada windows server adalah sebuah cara yang dapat digunakan. Setelah membangun server
cluster tentunya tidak dapat langsung begitusaja digunakan. Karena kita juga harus tahu terlebih dahulu
seperti apa performa dari sebuah server cluster yang telah dibangun. Untuk mengetahui performa server
cluster kita dapat menguji performanya dengan melakukan pengujian dengan menggunakan aplikasi
Apache benchmark. Hasil penelitian menunjukkan bahwa membangun server cluster dengan
menggunakan NLB Manager adalah sangat mudah dan dapat meningkatkan kinerja dari server yang
dibangun.
Kata kunci: Server cluster, load balancing, NLB manager, performance test.
1. Pendahuluan
Penyedia layanan informasi dituntut untuk
selalu efektif dalam melayani segala informasi
yang dibutuhkan. Karena itu penyedia
informasi khususnya situs web harus bisa
menangani banyaknya pengguna agar tidak
terjadi overload. Oleh karena itu ada beberapa
solusi untuk menangani hal tersebut seperti
meningkatkan spesifikasi server atau dengan
menambah bandwidth pada webserver.
Namun hal tersebut belum cukup kuat untuk
mengatasinya karena biasanya tidak akan
bertahan lama yang disebabkan oleh terus
bertambahnya
jumlah
pengguna
dan
pengakses informasi tersebut.
Analisis Performansi Server Cluster Pada Load Balancing
Webserver Menggunakan Nlb Manager(Muhammad Sholikhin) 1
Terdapat teknologi clustering server yang
dapat digunakan yaitu dengancara loadbalancing sebuah server dan dapat dilakukan
dengan NLB Manager (lukitasari dkk,2010).
Dalam penelitian yang sudah ada, load
balancing memang memiliki keunggulan
yakni mampu membuat kinerja server lebih
ringan dan lebih cepat dengan bantuan server
yang ada dibawahnya (rathi,2013). Dalam
penerapan clustering load balancing kita perlu
mengetahui kinerja server tersebut.Untuk itu
perlu dilakukan pengujian performanya.
Dalam menganalisa performa suatu web
server, yaitu bisa dengan melakukan
pengujian, load testing yang berupa transfer
rate dan request persecond. Dan bisa
dilakukan dengan tool Apache benchmark
(sarojadevi,2011). Maka dari itu dirumuskan
permasalahan yaitu, Bagaimana membangun
virtualisasi web server cluster dengan metode
load balancing sekaligus menganalisa
performannya dengan batasan-batasannya
yaitu Virtualisasi server cluster dilakukan
menggunakan software Vmware, Sistem
operasi yang digunakan adalah Windows
Server 2008 dan web server IIS, Topologi
yang akan dianalisa yaitu menggunakan
metode clustering, Fiture atau aplikasi NLB
Manager pada windows server 2008 yang
akan digunakan untuk membangun server
cluster, dan Aplikasi Apache benchmark
yang akan digunakan untuk menguji performa
dari webserver cluster dengan batasan
pengujian pada transfer rate dan request
persecond saja.
Hal diatas bertujuan untuk Untuk
mengetahui bagaimana cara membangun
sebuah server cluster dan Untuk mengetahui
bagaimana performa server cluster dan
menguji sebuah webserver menggunakan
software Apache benchmark. Serta diharapkan
manfaatnya sebagai informasi yang tepat
tentang membangun dan menganalisa
performa sebuah webserver cluster
2. Tinjauan pustaka
1. Server Cluster
Menurut Rukun (2015:21), Cluster adalah
merupakan sekumpulan komputer (umumnya
server jaringan) independen yang beroperasi
serta bekerja secara erat dan terlihat seolah-
olah komputer-komputer tersebut adalah satu
buah unit komputer. Sedangkan proses
menghubungkan beberapa komputer tersebut
agar dapat bekerja seperti itu dinamakan
dengan clustering. Cluster biasanya saling
terhubung melalui koneksi yang sangat cepat
atau juga bisa melalui jaringan lokal (LAN).
2. Network Load Balancing (NLB)
Menurut rathi dkk (2013:1), Network Load
Balancing adalah teknik yang digunakan
untuk menyebarkan beban kerja di antara
banyak proses, komputer, jaringan, disk atau
sumber daya lainnya, agar tidak terjadi over
load pada semberdaya tersebut. Serta dalam
hasil pelitianya menyebutkan bahwa hasil
akhir yang didapat, menunjukkan bahwa
perbandingan
tanpa
NLB
dengan
menggunakan NLB, berbeda jauh yakni
sekitar 100kbps.
Network Load Balancing (NLB) adalah
sebuah fitur yang sudah tersedia pada
windows server yang ditujukan untuk
membuat load balancing server pada windows
server yang berupa NLB Manager. Network
load-balancing
bekerja
dengan
cara
menciptakan suatu adapter jaringan virtual
(Virtual Network Adapter) pada masingmasing node yang mewakili cluster sebagai
suatu entitas tunggal. Adapter virtual
mempunyai IP address dan address MAC
(Media Access Control) yang independen dari
address-address yang diberikan kepada
interface jaringan fisik dari node-node cluster
tersebut. Clients akan mengakses permintaan
aplikasi ditujukan kepada IP address cluster
ketimbang ditujukan ke masing-masing IP
address individual dari masingmasing server
node.
3. Web performance test
Menurut Guntoro dkk (2015:2), Web
Performance Test adalah serangkaian proses
pengujian untuk mengukur kemampuan dari
suatu website. Menurut Arora (2015:367),
Analisis Performansi Server Cluster Pada Load Balancing
Webserver Menggunakan Nlb Manager(Muhammad Sholikhin) 2
pengujian kinerja adalah jenis pengujian nonfungsional yang meliputi jenis tes diantaranya
yaitu: load testing, stress testing, capacity
testing, spike testing, dan endurance testing.
Dengan Web Performance Test dapat dengan
mudah membangun sebuah kerangka kerja tes
untuk dilakukan secara berulang yang dapat
membantu dalam menganalisis kinerja
aplikasi website dan mengidentifikasi
hambatan potensial. Namun dalam penelitian
ini hanya akan menggunakan software apache
benchmarking untuk pengujian transfer rate
dan request persecond pada webserver yang
dibangun.
3. Metodologi penelitian
Penelitian ini sebenarnya adalah sebuah
penelitian uji coba atau eksperimen yang bisa
dilakukan dengan menggunakan metode
eksperimen. Namun untuk penerapan dan
pengujian dari web server yang menggunakan
metode load balancing yang akan diterapkan
menggunakan dengan NLB Manager yang
dapat dilakukan dengan metode: perancangan
jaringan/topologi,
membangun
cluster,
pengujian,
analisis
dan
kesimpulan
(Rukun,2015).
dahulu menganalisa beberapa kebutuhan yang
harus di penuhi. Diantara kebutuhan itu
adalah kebutuhan software dan kebutuhan
hardware. Oleh karena itu perlu menganalisa
kebutuhan software dan hardware. Adapun
kebutuhan software yang harus dipenuhi
yaitu:
1. Windows server 2008
2. VMware
3. NLB Manager
4. Apache benchmarking
5. Windows 7 Ultimate
6. Webserver IIS dan mysql
Untuk memenuhi kebutuhan installasi system
operasi diatas maka dibutuhkan spesifikasi
system yang cukup.Berikut s pesifikasi
minimum kebutuhan sistem
Processor
RAM
Free disk
Windows server 2008 32bit
1Ghz
1GB
10GB
Windows 7 Ultimate 32bit
1Ghz
512Mb
10GB
Table 3.1 kebutuhan minimal sistem
Jadi jika akan membuat server cluster dengan
tiga server dan satu load balancer, serta satu
buah client dalam virtual machine maka
membutuhkan spesifikasi sebagai berikut:
No
Nama Hardware
kebutuhan
1
Ram
8GB
2
Harddisk
125GB
3
CPU
Core i5
Tebel 3.2 kebutuhan perangkat
2. Perancangan dan Desain Topologi
Gambar 3.1 fase pembangunan dan uji
sever cluster
1. Analisis kebutuhan sistem
Sebelum membangun virtualisasi server
cluster dan mengujinya maka perlu terlebih
Desain topologi server cluster yang
akan dibangun dalam penelitian ini
yaitu ada dua macam yang akan
dibangun yaitu dua server cluster dan
tiga server cluster. Adapun gambar
topologi pertama yaitu:
Analisis Performansi Server Cluster Pada Load Balancing
Webserver Menggunakan Nlb Manager(Muhammad Sholikhin) 3
4. Hasil
Gambar 3.2 Topologi1 dengan 2 server
cluster
Seperti pada gambar bahwa server cluster
yang akan dibangun yaitu menggunakan dua
node server dan masing-masing dihubungkan
dengan jaringan yang nyata, oleh karena itu
pada VMware mode NIC dipilih sebagai NAT
network. Dan akan diberi IP 192.168.1.10/24
untuk IP NLB-nya dan 192.168.1.100/24
untuk server 1 serta 192.168.1.2/24 untuk
server 2.
Sedangkan topologi yang kedua yaitu dengan
menggunakan tiga node server cluster.
1. Pembangunan server cluster
Sebelum membangun virtualisasi server
cluster, harus terlebih dahulu mempersiapkan
windows servernya. Yaitu install semua
windows server yang dibutuhkan, install
active directory, dan setting IPnya. Ip yang
digunakan disini adalah 192.168.1.10 sebagai
ip cluster atau load balancer, 192.168.1.100
sebagai server 1 dan DNS, 192.168.1.2
adalah ip server 2, dan 192.168.1.3 untuk ip
server 3, sesuai yang ada pada topologi yang
sudah dirancang.
Jika semua sudah siap lalu install NLB
Manager pada semua server cluster melalui
add features. Jika semua server cluster tidak
di install NLB Manager maka antara sever
cluster tersebut tidak bisa tersambung, karena
mereka membutuhkan NLB Manager yang
sama-sama aktif. Jika pada jendela NLB
Manager sudah terlihat semua server yang
sudah di sambungkan maka hasilnya seperti
berikut.
Gambar 4.1. Tampilan NLB Manager
Gambar 3.3. Topologi 2 dengan 3 server
cluster
Seperti pada gambar di atas bahwa akan
digunakan tiga buah node server dengan IP
server 3: 192.168.1.3/24. dari kedua topologi
ini nantinya akan dianalisa performanya dan
akan dilihat bagaimana perbedaannya setelah
diuji
menggunakan
software
Apache
benchmarking, antara topologi 1 dan topologi
2.
Jika semua cluster sudah berstatus
converged atau gambarnya sudaah hijau
berarti server tersebut sudah terhubung
dan pepbangunan server cluster sudah bisa
dikatakan selesai. Selanjutnya yaitu
dilanutkan dengan membuat webserver
beserta kontennya. Webserver yang
digunakan yaitu IIS dan konten yang di
isikan adalah wordpress.
Analisis Performansi Server Cluster Pada Load Balancing
Webserver Menggunakan Nlb Manager(Muhammad Sholikhin) 4
Gambar 4.2.IIS di semua cluster
Gambar 4.4.apache benchmark
Selanjutnya kita kumpulkan setiap hasil dari
pengujiannya.
Gambar 4.3. tampilan web
Jika semua sudah siap selanjutnya adalah
melakukan pengujian dengan menggunakan
apache benchmark. Pengujian yang yang
dilakukan yaitu pengujian terhadap transfer
rate nya pada halaman
www.zeus.com/http://192.168.1.10 dengan
memberikan beban request 1000 dan
concurrency dari 400-500 dengan perintah :
#ab –n 1000 1 -c 400
http://192.168.1.10/index.php
2. Hasil pengujian
Concu
rrency
Topologi
1/kbps
Topologi
1/kbps
400
80.4
82.73
410
76.3
77.21
420
68.25
71.55
430
59.27
56.34
440
53.61
68.81
450
56.82
63.27
460
48.74
59.72
470
44.85
56.92
480
40.96
52.35
490
38.64
46.89
500
31.52
42.67
Rata-rata peningkatan
transfer rate
Peningkata
n transfer
rate
2.33
0.91
3.3
-2.93
15.2
6.45
10.98
12.07
11.39
8.25
11.15
7.19 kbps
Tabel 4.1. hasil uji transfer rate
Dari hal tersebut terlihat bahwa
semakin tinggi concurrency maka
semakin rendah transfer rate, hal tersebut
adalah normal seperti pada umumnya.
Analisis Performansi Server Cluster Pada Load Balancing
Webserver Menggunakan Nlb Manager(Muhammad Sholikhin) 5
Namun yang di lihat adalah bagaimana
peningkatan hasil antara topologi 1 dan
topologi 2
Concu
rrency
Topologi Topologi
1
2
Req/sec
Req/sec
400
172.31
210.5
410
167.52
182.32
420
164.61
193.79
430
160.17
185.68
440
151.69
179.92
450
148.72
174.06
460
143.81
170.86
470
140.64
164.71
480
137.23
160.19
490
133.9
157.39
500
126.37
148.36
Rata-rata peningkatan req/sec
Peningkata
n Req/sec
38.19
14.8
29.18
25.51
28.23
25.34
27.05
24.07
22.96
23.49
21.99
25.52/sec
5. Simpulan
Dari hasil penelitian ini maka dapat ditarik
sebuah kesimpulan bahwa:
1. untuk meningkatkan kinerja server
dengan menggunakan metode load
balancing yang diterapkan menggunakan
NLB Manager sangatlah mudah untuk
diterapkan.
2. Dalam pengujian server cluster atau
server yang sudah dibuat load balancing
membuktikan bahwa metode ini memang
dapat meningkatkan kinerja sebuah
server.
6. Daftar rujukan
Tabel 4.2. hasil uji request/sec
Dari tebel di atas dapat kita lihat
bahwa hasil antara topologi 1 dan topologi
2
menunjukkan
bahwa
adanya
peningkatan kecepatan pada request
persecondnya.
Dan
rata-rata
dari
peningkatannya adalah 25.52/sec. Dari
data diatas maka dapat ditampilkan grafik
sebagaiberikut:
200
150
100
50
0
400 420 440 460 480 500
top
olo
gi 2
top
olo
gi 1
Gambar 5 grafik transfer rate
600
topo
logi
2
400
200
500
480
460
440
420
400
0
Gambar 6 grafik request/sec
topo
logi
1
Arora, Isha & Bali, Vikram (2015) 'A Brief
Survey
on
Web
Application
Performance Testing Tools Literature
Review', Diakses 03 April 2016 dari;
http://www.ijltet.org/wpcontent/uploads/2015/05/50.pdf.
Guntoro (2015) ‘ Analisis Web Performance
dan Load Test Studi Kasus: Topologi
Cloud Microsoft Azure Test Rig pada Ibanking Bank XYZ’. Diakses 03 April
2016,dari;
https://openlibrary.telkomuniversity.ac.i
d/pustaka/files/100655/jurnal_eproc/ana
lisis-web-performance-dan-load-teststudi-kasus-topologi-cloud-microsoftazure-test-rig-pada-i-banking-bankxyz.pdf.
Lukitasari, Desy and Oklilas, Ahmad Fali
(2010) ‘Analisis Perbandingan Load
Balancing Web Server Tunggal Dengan
Web server Cluster Menggunakan
Linux Virtual Server'. Diakses 14 April
2016
dari;
http://eprints.unsri.ac.id/336/.
Rathi, Arvind, Kirti, & Neelam. (2013) ‘Hig
Performance Cluster Support for NLB
Analisis Performansi Server Cluster Pada Load Balancing
Webserver Menggunakan Nlb Manager(Muhammad Sholikhin) 6
on Windows’. India : Department of
CSE
Sarojadevi, (2011) 'Performance Testing:
Methodologies and Tools'. Diakses 14
April 2015 dari;
http://www.iiste.org/Journals/index.php
/JIEA/article/download/1196/1117.
Introduction to Network Load Balancing,
Microsoft website, diakses 10 juni 2016
http://technet.microsoft.com/enus/librar
y/cc786264(v=ws.10).aspx
Ramadhan, Arief. 2006. Pemrograman Web
Database dengan PHP dan MySQL.
Jakarta : Elex Media Computindo
M. Woodside, G. Franks and D. C. Petriu,
"The Future of Software Performance
Engineering," Future of Software
Engineering, 2007.
T. Arora, "Part 1 - Load Testing In
TheCloud," 29 June 2013. [Online].
Available:
http://geekswithblogs.net/TarunArora/a
rchive/2011/11/20/part-1---load-testingin-thecloud.aspx. [Diakses 18 Juni 2016
Analisis Performansi Server Cluster Pada Load Balancing
Webserver Menggunakan Nlb Manager(Muhammad Sholikhin)7
Download