M AKALAH
IM PLEM ENTASI LOAD BALANC ER
M ENGGUNAKAN ALGORITM A ROUND -ROBIN
PADA SISTEM SERVER W ORDPRESS
Kelas : Adm inistrasi Sistem Server - A
Program Studi : Teknik Inform atika
Ketua Kelom pok
Nam a : Kalbuadi Joyoputro NIM : 145150200111028
Anggota
Nam a : Richad Gilang W NIM : 145150207111019
Nam a : Riksa Suta Adji NIM : 1451502001110 18
Nam a : Shufura Naufal NIM : 145150207111014
Nam a : Thelem anica W icaksa na NIM : 1451502011110 39
JURUSAN TE KNIK INFORM ATIKA
FAKULTAS ILM U KOM PUT ER
UNIVERSITAS BRAW IJAY A
KATA PENG ANTAR
Puji Syukur saya panjatkan ke ha dirat T uhan Ya ng M aha Esa, karena atas berka t dan
karunia-Nya, penulis dapa t m enyelesa ikan pe nulisan m akala h IM PLEM ENTASI L OAD
BALANCER M ENGGUN AKAN AL GORITM A ROUND -ROBIN PADA SISTEM
SERVER W ORDPRESS. Adapun m aksud serta tujuan dari penulisan m akalah ini adalah untuk
m enyelesaikan tugas akhir m ata kulia h Adm inistrasi Sistem Server sekaligus m enjadi sum ber
pengetahuan yang dapa t m em perluas ilm u para m ahasiswa, pem baca, dan khususnya bagi
penulis sendiri.
Penulis di sini te lah berusa ha agar dapat m enulis m akalah IM PLEM ENT ASI LOAD
BALANCER M ENGGUN AKAN AL GORITM A ROUND -ROBIN PADA SISTEM
SERVER W ORDPRESS denga n baik dan benar, nam un pe nulis m enyadari adanya kekurangan
dan keterbatasa n dalam penulisa n m akalah ini. Oleh karena itu, jik a dida pati ke
salahan-kesalahan dari segi teknik penulisan, m aupun dari isi m ateri m akalah ini, m aka pe nulis
m em ohon m aaf yang sebesar-besarnya. Kritik da n saran dari sem ua pem baca sa ngat
diharapkan untuk dapat m em perbaiki pe nulisan m aka lah ini terlebih lagi dalam m enam bah
ilm u penge tahuan kita bersam a.
M alang, 26 Novem ber 2017
tertanda,
BAB I PENDAH ULUAN
1.1LATAR BELAK ANG
W ebsite m erupakan m edia penyebaran inform asi yang bersifat global. Saat ini website
sem akin berkem bang pesat serta m enjadi suatu infrastruktur yang penting pada suatu instansi
pem erintahan, orga nisa si m aupun perusahaan untuk m enyediakan layanan a t aupun inform asi
secara publik.
W ebsite ber-arsitektur single web server yang banya k diterapkan ternyata m em iliki
banyak kekurangan. D isaat we bsite m engalam i peningkatan akses reque st dari pengguna
hingga terjadi overload untuk m erespon, m aka server bisa m e ngalam i down total sehingga
tidak ada la gi yang akan m elayani seluruh request dari pe ngguna. M aka dari itu perlu
diterapka nnya teknologi loa d balancing yang diharapkan dapat m enangani beban request yang
besar dengan cara m endistribusikan be ban kerja dari b eberapa com puter atau cluster.
Load balancing m erupakan salah satu cara yang digunaka n untuk m eningkatka n kinerja
dan tingkat ke tersediaan server, yaitu dengan m em bagi request yang da tang ke beberapa server
sekaligus, se hingga be ban yang ditanggung oleh m asing-m asing server lebih ringan. T ingkat
ketersediaan server bisa teta p terja ga denga n penggunaan loa d balanc ing ini, yaitu ke tika salah
satu server tidak da pat m elayani perm intaan pe ngguna (server dow n), m aka secara otom atis
server yang lain langsung m enggantika nnya, sehingga pengguna seakan-akan tida k m engetahui
bahwa server tersebut down.
Terdapat beberapa algoritm a penja dwalan untuk load balancing, seperti round robin,
least connection, weighted round robin, dan weighted least connection. Nam un, pada
percobaan kali ini, penulis m encoba m engim plem entasikan loa d balancer m enggunakan
algoritm a round robin pada sistem server wordpress.
1.2DASAR TEO RI 1.2.1 Load Balancing
Load balancing adalah te knik untuk m endistribusikan beba n trafik pada dua atau lebih
jalur koneksi secara seim bang agar trafik dapat berja lan optim al, m em aksim alka n throughput,
m em perkecil waktu tangga p, dan m enghindari overload pa da salah sa tu ja lur koneksi. Load
balancing digunaka n pada saat sebuah server telah m em iliki jum lah user yang telah m elebihi
dua atau lebih kom puter, link jaringan, CPU, hard drive, atau sum ber daya la innya untuk
m endapatkan pem anfaatan sum ber daya yang optim al. Sedangka n, alat atau program yang
digunakan untuk m elakukan load balancing disebut load ba lancer. Salah satu load bala ncer
yang sering digunakan adala h HAProxy. Seperti bisa kita liha t pada Gam bar 1, pengguna atau
client tidak m engakses server secara langsung, m elainkan m engakses load balancer yang akan
m endistribusikan koneksi ke server tujuan sesua i dengan kebutuhan dan algoritm a yang
diterapka n.
G am bar 1. A rsitektur jaringan pada sistem Load Balancer pada um um nya.
Ada beberapa algoritm a yang digunakan dalam pengim plem entasian load balanc ing,
antara lain:
1. Round Robin
Algoritm a Round Robin m erupakan algoritm a yang paling sederhana dan ba nyak
digunakan oleh perangka t load balancing. Algoritm a ini m em bagi beban secara
bergiliran dan berurutan dari satu server ke server lain sehingga m em bentuk putaran.
2. Ratio
Ratio (rasio) sebenarnya m erupakan sebuah param eter yang diberikan untuk m asing
-m asing server yang a kan di-m asukkan keda la-m siste-m load balanc ing. Dari para-m eter
Ratio ini, akan dilakukan pem bagian beban terhadap server -server yang diberi rasio.
Server dengan rasio terbesar diberi beban besar, begitu juga dengan server denga n rasio
kecil akan lebih sedikit diberi beban.
3. Fastest
Algoritm a yang sa tu ini m elakuka n pem bagian be ban denga n m engutam akan server
-server yang m em iliki respon yang paling cepat. Server di dalam jaringan yang m em iliki
respon paling cepat m erupakan server yang akan m engam bil be ban pada saat
4. Least Connection
Algoritm a Least connection akan m elakukan pem bagian beban berda sarkan banya knya
koneksi yang sedang dilayani oleh se buah server. Server dengan pe layanan koneksi
yang paling sedikit akan diberikan be ban yang berikutnya akan m asuk.
1.2.2 Sistem Server
Sistem server adalah sebua h sistem kom puter yang m enye diakan jenis laya nan (service)
tertentu da lam sebuah jaringan kom puter (Nem eth, 2010). Server didukung de ngan prosesor
yang bersifat scalable dan RAM yang besar, juga dilengkapi deng a n sistem operasi khusus,
yang disebut sebagai sistem operasi jaringan (netw ork operating system ).Server juga
m enjalankan perangkat lunak adm inistratif yang m engontrol akses terhadap jaringan dan
sum ber daya yang terdapa t di dalam nya. Ada beberapa jenis server, yaitu:
1. Server Aplikasi
Server yang digunakan untuk m enyim pan berbagai m acam aplikasi yang dapat diakses
oleh client.
2. Server Data
Server jenis ini di gunakan untuk m enyim pa n berbagai data, baik data yang belum
diola h ataupun data yang suda h diola h m e njadi inform asi. data ini dapat di akse s oleh
client dengna bantuan aplikasi yang ada di server.
3. Server Proxy
Sedangkan Server proxy berfungsi untuk m engatur lalu lintas di jaringan m elalui
pengaturan proxy. Orang awam lebih m enge nal proxy server untuk m en gkoneksikan
BAB II PEMBAHASAN
2.1 Arsitektur Jaringan Sistem Server
Terdapat 4 node yang digunakan dalam sistem server W ordpress ini, yaitu loa d bala ncer
server, W ordpress server 1, W ordpress server 2, dan database server. Seperti pa da gam bar 2,
user akan m engakses load ba lancer yang akan m elakukan forwarding ke W ordpress 1 dan 2
sesuai dengan algoritm a load balancing round -robin. W ordpress server 1 dan 2 akan
tersinkronisasi secara otom atis. W ordpress server 2 akan m eniru setiap perubahan yang terjadi
pada web application server 1 yang berada di dalam direktori /var/www /htm l. W ordpre ss server
1 dan 2 berbagi satu database server yang sam a. Setiap node berjalan di atas VirtualBox
M achine.
Wordpress Server 1
Wordpress Server 2
Database Server Load
Balancer User
/var/www/html syncronized
G am bar 2. A rsitektur jaringan pada sistem server W ordpress.
Setiap node di dalam sistem server W ordpress berada pada jaringan 192.168.56.0/24. Pem berian alam at IP pada m asing -m asing node antara lain adalah sebagai berikut:
Tabel 1. A lam at IP tiap node.
Node Alam at IP
Load Balancer 192.168.56.6
W ordpress Server 1 192.168.56.4 W ordpress Server 2 192.168.56.3
2.2 Analisa K ebutuhan Sistem Server
Terdapat 4 node ya ng beroperasi pada sistem server W ordpress in i, yaitu: Load
Balancer, W ordpress server 1, W ordpress server 2, dan data base server. Setiap node tersebut
m em iliki fungsi ya ng berbe da-beda. Load Balancer digunakan untuk m elakukan load
balancing dengan m endistribusikan akses m enuju W ordpress server 1 dan 2. W ordpress Server
1 berperan sebagai m aster server, yang m ana setiap peruba han yang terja di pada web
application di server 1 akan diikuti/disinkronisasi oleh server 2. Database server bertin dak
sebagai tem pat berdirinya database engine dan tem pat pendistribusian data untuk W ordpress
server 1 dan 2. Berikut adalah system requirem ents pada m asing -m asing node:
1. Load Balancer
Tabel 2. System Requirements Load Balancer.
RAM 512 M B
Hard disk 10 GB
Sistem Operasi Ubuntu 14.04
2. W ordpress server 1
Tabel 3. System Requirements W ordpress server 2.
RAM 1024 M B
Hard disk 15 GB
Sistem Operasi Ubuntu 14.04
3. W ordpress server 2
Tabel 4. System Requirements W ordpress server 2.
RAM 1024 M B
Hard disk 15 GB
Sistem Operasi Ubuntu 14.04
4. Database server
Tabel 5. System Requirements Database server.
Hard disk 10 GB
Sistem Operasi Ubuntu 14.04
2.3 Implementasi Sistem Server 2.3.1 K onfigurasi W ordpress Server
Kam i m enggunaka n Apache sebaga i web server pada W ordpress server 1 dan 2.
Sedangkan web application W ordpress dapat diunduh secara gratis dari website resm i
W ordpress, www.wordpress.org. Langkah konfigurasi W ordpress server adalah se bagai berikut:
1. Install Apache web server pada ke dua W ordpress server. Synta x: # apt -get insta ll
apache2.
2. Install PHP beserta m odul-m odulnya pada kedua W ordpress server. Sytax: # apt-get
install php5 libapache2-m od-php5 php5-m crypt.
3. Pastikan A pache dan PHP sudah berja lan dan terkoneksi dengan be nar.
4. Copy web application W ordpress pada direktori /var/www /htm l yang ada di server 1
dan 2. Dalam hal ini, W ordpress m enjadi website utam a pada server 1 dan 2. Perlu
diperhatikan, bahwa web application W ordpress m em butuhkan databa se untuk dapat
berjalan dengan baik. Sebelum terbentuk koneksi antara W ordpress server 1 dan 2
dengan databa se server, website W ordpress akan m enanm pikan pesa n error.
5. Sebagai tam bahan, kam i m em asang M ySQL -C lient untuk m elakukan rem ote database
pada kedua W ordpre ss server. Syntax: # apt-get insta ll m ysql-client.
2.3.2 K onfigurasi D atabase Server
Kam i m engguna kan M ySQL-Server sebagai database engine pada database sistem
server ini. Langka h konfigurasi database server adalah se bagai berikut:
1. Install M ySQL-Server pada database server. Syntax: # apt-get insta ll m ysql-server.
2. Buka file /etc/m ysql/m y.cnf dengan text editor, lalu uba h nilai variabe l bind-address
sesuai dengan alam at IP database server. Di sini alam at IP database server adalah
192.168.56.5.
3. Login ke dalam M ySQL-Server. Syntax: $ m ysql -u root -p.
4. Buat database untuk website W ordpress, di sini kam i m enggunakan nam a databa se
5. Buat user m ysql baru yang m em iliki a kses penuh untuk databa se wordpress, di sini
kami membuat user dengan nama wp2. Syntax: CREATE USER wp2@‘%’ IDENTIFIED BY ‘*****’. Tanda % m enandakan user wp2 dapat digunaka n sebagai rem ote M ySQL-Server.
2.3.3 Penghubungan W ordpress Server dengan Database Server
Pertam a, kam i terlebih dahulu m em eriksa M ySQL-Server dari database server, apakah
dapat dila kukan rem ote dari luar atau tidak. Pem eriksaan dilakukan dengan cara logi n ke dalam
M ySQL-Server m elalui user database yang telah dibuat di sub -bab 2.2.2. Proses login
m enggunaka n syntax $ m ysql -u wp2 -h 192.168.56.5 -p. Opsi -h adalah alam at IP tujuan, yaitu
database server. Pada Gam bar 3, W ordpress server 1 dapat m engakses database wordpress
yang ada di databa se server.
G am bar 3. Isi database pada database server.
Untuk m elakuka n penghubungan website W ordpress de ngan da tabase wordpress yang
ada di database server dapat dilakuka n dengan m elakuka n konfigurasi pada file
/var/ww w/htm l/wp-config.php. M asukkan atau tam bahkan nam a database, user, password, dan
Tabel 6. Konfigurasi tam bahan pada file wp-config.php.
1 2 3 4
define(‘DB_NAME’, ‘wordpress’); define(‘DB_USER, ‘wp2’);
define(‘DB_PASSWORD, ‘*****’); define(‘DB_HOST, ‘192.168.56.5’);
Jika website W ordpress telah terkone ksi dengan benar, m aka pesan error tidak akan
m uncul lagi, m elainkan akan m uncul user interface website wordpress yang seharusnya, seperti
pada Gam bar 4.
G am bar 4. User Interface website W ordpress.
2.3.4 Sinkronisasi W ordpress Server
W ordpress server 1 dan 2 harus m em berikan atau menam pilkan web application yang
identik. Agar web application di kedua server selalu identik, m aka perlu dilakukan sinkronisasi.
Sinkronisasi da pat dilakukan dengan bantuan aplikasi, salah satunya ada lah Rsync. Rsync
dapat m elakukan sinkronisasi web application setiap kali terjadi perubahan di server utam anya.
Berikut adalah la ngkah pem buatan proses sinkronisa si W ordpress server:
1. Install Rsync pada W ordpress server 1 dan 2. Syntax: # apt-get install rsync.
2. Instal openssh-server pada W ordpress server 1 atau server m aster. Syntax: # apt-get
install openssh-server.
3. Buat proses sinkronisasi berjalan secara otom atis dan periodik. Otom atisasi dapat
Dengan cara, m asuk ke dalam cronta b (# cronta b -e), lalu m asukkan syntax
sinkronisasi (*/5 * * * * rsync -avzhe ssh we bserver2@ 192.168.56.4:/var/ww w/htm l/
/var/ww w/htm l/). Penjelasa n dari syntax sinkronisasi ada pada Tabel 7.
Tabel 7. Penjelasan syntax sinkronisasi web server.
Variabel Synta x Penjelasan
*/5 * * * * Sinkronisasi setiap 5 m enit seka li.
-avzhe Sinkronisasi m enyeluruh pada file -file
yang berubah sa ja.
Ssh Rem ote ke W ordpress server 1.
webserver2@ 192.168.56.4 Usernam e dan alam at IP server W ordpress 1 atau bisa dikatakan server 1.
/var/ww w/htm l/ Direktori yang ingin disinkronisasi.
Sem ua proses pada langka h 2 dila kukan pa da W ordpress server 2.
Kam i m enonaktifkan penggunaan passw ord pa da saat m elakukan ssh ke W ordpress
server 1 melalui user “webserver2”. Jika penggunaan password pada ssh tidak dinonaktifkan,
ini akan m engganggu proses sinkronisasi secara otom atis karena harus m em asukkan passw ord
tiap kali sinkronisa si. Langkah penonaktifan penggunaan passw ord pada ssh adalah sebagai
berikut:
1. Buat kunci public dan private RSA 2048 bit pada W ordpress server 2. Syntax: #
ssh-keygen -t rsa -b 2048. Passphrase harus dijadikan kosong.
2. Copy public key ya ng telah dibua t pada W ordpre ss server 1 ke W ordpre ss server 2.
Syntax: #ssh-c opy-id -i /hom e/webserver2/.ssh/id_rsa.pub webserver2@ 192.168.56.4. 3. Lakukan uji login ssh tanpa password ke W ordpress server 1 m elalui user
“webserver2”. Syntax: $ ssh webserver2@ 192.168.56.4. Seperti pada Gam bar 5, login ssh dilakukan tanpa m enggunaka n password.
2.3.5 K onfigurasi Load Balancer
Load balanc ing dapa t dilakuka n dengan bantuan aplika si load balancer. Di sini kam i
m enggunaka n HAProxy se bagai load balancer. Nantinya, server load ba lancer lah aka n akan
diakse s oleh user sangat ini m em buka website W ordpress. Berikut adalah langkah konfigurasi
load balancer:
1. Install HAProxy. Syntax: # apt-get insta ll haproxy.
2. Buka file konfigurasi yang ada di /etc/ha proxy/haproxy.cfg denga n text editor, lalu
tam bahkan konfigurasi seperti yang ada pada Tabe l 8.
Tabel 8. Konfigurasi load balancer pada file haproxy.cfg.
1
Penjelasan dari konfigurasi load balancer di atas ada pada Tabe l 9.
Tabel 9. Penjelasan konfigurasi load balancer pada file haproxy.cfg.
1
Load Balancer akan mendengar koneksi yang masuk pada port 80. w pServer adalah nama aturannya, dapat diganti sesuai keinginan.
M enjalankan mode H TTP.
M engaktifkan penyimpanan stat koneksi.
Stat dapat diakses melalui 192.168.56.6/haproxy?stats M enggunakan algoritma roundrobin.
Server tujuan pendistribusian, yaitu w pServer1 (192.168.56.4) dan w pServer2 (192.168.56.3). K ata check untuk melakuakan pemeriksaan apakah server sedang dalam keadaan hidup atau mati.
2.4 Pengujian Sistem Server 2.4.1 M etode Pengujian
Terdapat 2 param eter yang akan diuji dalam penelitian ini, yaitu penggunaan m em ory
dan CPU dari Load Balancer, W ordpress Server 1, dan W ordpress Server 2. Pengujian akan
dilakukan m enggunakan aplika si HT TPerf dan Top. HTTPerf digunakan untuk m elakukan
percobaan koneksi ke server, sedangkan Top diguna kan untuk m onitoring penggunaan
m em ory dan CPU. Seperti pada Gam bar 6, H TTPerf dijalanka n pada sisi user yang m elakukan
m engarahkan koneksi ke W ordpres server 1 dan 2. Sedangkan pada Gam bar 7, dapat dilihat
bahwa Top dijalankan pada Load Balancer, W ordpress Server 1, dan W ordpress Server 2.
G am bar 6. Tam pilan HTTPerf pada Ubuntu.
G am bar 7. Tam pilan Top pada Ubuntu.
Pengujian koneksi m enggunakan H TTPerf dilakuka n denga n 3 cara, yaitu se bagai
berikut:
1. 250 koneksi per detik selam a 2 detik. Syntax: $ httperf --server 192.168.56.6 --port 80
--num -conns 500 --rate 250.
2. 500 koneksi per detik selam a 2 detik. Syntax: $ httperf --server 192.168.56.6 --port 80
--num -conns 1000 --rate 500.
3. 1000 koneksi per detik se lam a 2 detik. Syntax: $ httperf --server 192.168.56.6 --port 80
2.4.2 Analisa Penggunaan memory dan CPU
Seperti dapat dilihat pada Grafik X, nilai penggunaan m em ory pada Load Balancer,
W ordpress Server 1, dan W ordpress server 2 selalu m eningkat m engikuti penam bahan jum lah
koneksi. Sem akin banyak jum lah koneksi dari user, sem akin be sar pula penggunaa n m em ory
server. W ordpress server 1 da n 2 m em iliki selisih yang relatif kecil pada penggunaan m em ory,
m enandakan bahwa loa d balancer berjalan dengan benar.
G am bar 8. G rafik presentase penggunaa n m em ory.
Seperti dapat dilihat pada Grafik X, nila i penggunaan CPU pada L oad Balancer,
W ordpress Server 1, dan W ordpress server 2 selalu m eningkat m engikuti penam bahan jum lah
koneksi. Sem akin ba nyak jum lah koneksi dari user, sem akin be sar pula penggunaan CPU
server. Sam a halnya dengan penggunaan m em ory, W ordpress server 1 dan 2 m em iliki selisih
G am bar 9. G rafik presentase penggunaa n CPU.
Dapat dikata kan, penggunaan m em ory dan CPU berbanding lurus dengan banya knya
koneksi pa da server. W ordpress server 1 da n 2 berbagi tuga s dalam m eng -handle re quest dari
user, yang m enga kiba tkan pe nggunaan m em ory tidak sebesar jika ha nya m enggunakan 1 server
saja.
Selain dengan m enggunaka n aplikasi HT TPerf, aktifitas dan trafik pada W ordpress
server 1 dan 2 dapat di-m onitor m elalui alam at http://192.168.56.6/haproxy?stats. Seperti bisa dilihat pada Gam bar 10, kita dapat m em onitor session rate, sessions, queue, errors, lam anya
server telah hidup, dan server yang seda ng down secara real-tim e.
G am bar 10. Tam pilan HA Proxy Stats.
BAB III DAFTAR PUSTAKA
[1] Nem eth, Evi. Unix and Linux System Administration Handbook: Fourth Edition. 2010.
Upper Saddle River, United States: Pearson Education.