Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
ANALISIS DAN IMPLEMENTASI PERFORMANCE LOAD
BALANCING WEB SERVER PADA NGINX
MENGGUNAKAN DOCKER SWARM
SKRIPSI
Diajukan Untuk Memenuhi
Persyaratan Guna Meraih Gelar Sarjana Strata 1
Teknik Elektro Universitas Muhammadiyah Malang
Disusun Oleh :
Destriawan
201510130311037
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2021
LEMBAR PERSETUJUAN
ANALISIS DAN IMPELEMENTASI PERFORMANCE LOAD
BALANCING WEB SERVER PADA NGINX MENGGUNAKAN
DOCKER SWARM
Diajukan Untuk Memenuhi Persyaratan Guna Meraih Gelar Sarjana (S1)
Teknik Elektro Universitas Muhammadiyah Malang
Disusun Oleh:
DESTRIAWAN
NIM : 201510130311037
Diperiksa dan disetujui oleh:
Pembimbing I Pembimbing II
Ir. M. Irfan, MT. Amrul Faruq, S.T., M. Eng.
NIDN : 0705106601 NIDN : 0718028601
LEMBAR PENGESAHAN
ANALISIS DAN IMPLEMENTASI PERFORMANCE LOAD
BALANCING WEB SERVER PADA NGINX MENGGUNAKAN
DOCKER SWARM
Tugas Akhir ini disusun Sebagai Salah Satu Syarat Memperoleh Gelar Sarjana (S1)
Teknik Elektro Universitas Muhammadiyah Malang
Oleh:
DESTRIAWAN
201510130311037
Tanggal Ujian : 17 Februari 2021
Periode Wisuda : 05 Juni 2021
Disetujui Oleh:
Ir. M. Irfan, MT. (Pembimbing I)
NIDN : 0705106601
Amrul Faruq, S.T., M. Eng. (Pembimbing II)
NIDN : 0718028601
Machmud Effendy, ST., M.Eng (Penguji I)
NIDN : 0715067402
Zamah Sari, ST., MT. (Penguji II)
NIDN : 0708087701
Mengetahui,
Ketua Jurusan Teknik Elektro
Zulfatman, M. Eng., Ph.D.
NIDN : 0709117804
LEMBAR PERNYATAAN
Yang bertanda tangan dibawah ini:
Nama : DESTRIAWAN
Tempat/Tanggal Lahir : EMPANG, 30 DESEMBER 1995
NIM : 201510130311037
Fakultas/Jurusan : TEKNIK/ELEKTRO
Dengan ini saya menyatakan bahwa Tugas Akhir ini dengan judul: “ANALISIS DAN
IMPLEMENTASI PERFORMANCE LOAD BALANCING WEB SERVER PADA
NGINX MENGGUNAKAN DOCKER SWARM ”, dan beserta seluruh isinya adalah
karya saya sendiri dan bukan merupakan karya tulis orang lain, baik sebagian maupun
seluruhnya, kecuali dalam bentuk kutipan yang telah disebutkan sumbernya.
Demikian surat pernyataan ini saya buat dengan sebenar-benarnya. Apabila
kemudian ditemukan adanya pelanggaran terhadap etika keilmuan dalam karya saya ini,
atau ada klaim dari pihak lain terhadap keaslian karya saya ini maka saya siap
menanggung segala bentuk resiko/sanksi yang berlaku.
Malang, Februari 2021
Yang Membuat pernyataan
Destriawan
Mengetahui,
Dosen Pembimbing I Dosen Pembimbing II
Ir. M. Irfan, MT. Amrul Faruq, S.T., M.Eng.
NIDN : 0705106601 NIDN : 0718028601
KATA PENGANTAR
Dengan memanjatkan puja dan puji syukur kehadirat Allah SWT. Atas limpahan
rahmat dan hidayah-NYA, penulis dapat menyelesaikan tugas akhir ini yang berjudul:
“ANALASIS DAN IMPLEMENTASI PERFORMANCE LOAD BALANCING
WEB SERVER PADA NGINX MENGGUNAKAN DOCKER SWARM ”
Dalam penelitian tugas akhir ini penulis menyajikan metode load balancing docker
swarm terdistribusi untuk mengetahui performa availabilitas dan reliabilitas dari sistem.
Penulis menyadari sepenuhnya, bahwa dalam penulisan tugas akhir ini masih
banyak kekurangannya hal itu tidak lepas karena keterbatasan penulis. Oleh karena itu
kritik dan saran yang membangun sangat kami harapkan demi menghasilkan penulisan
yang lebih baik. Semoga hasil penulisan tugas akhir ini bermanfaat bagi perkembangan
ilmu pengetahuan kedepan.
Malang, 26 Februari 2021
Penulis
DAFTAR ISI
LEMBAR PERSETUJUAN....................................................................................... ii
LEMBAR PENGESAHAN ....................................................................................... iii
LEMBAR PERNYATAAN ....................................................................................... iv
ABSTRAK ....................................................................................................................v
ABSTRACT ............................................................................................................... vi
LEMBAR PERSEMBAHAN................................................................................... vii
KATA PENGANTAR ............................................................................................ viiii
DAFTAR ISI .............................................................................................................. ix
DAFTAR GAMBAR ................................................................................................. xi
BAB I PENDAHULUAN ............................................................................................1
1.1 Latar Belakang ................................................................................................1
1.2 Rumusaan Masalah .........................................................................................2
1.3 Batasan Masalah .............................................................................................2
1.4 Tujuan .............................................................................................................2
1.5 Sistematika Penulisan .....................................................................................3
BAB II TINJAUAN PUSTAKA .................................................................................4
2.1 Docker .............................................................................................................4
2.2 Web Server......................................................................................................5
2.3 Load Balancing ...............................................................................................6
2.4 Round Robin Scheduling Algorithm ..............................................................7
2.5 Nginx...............................................................................................................7
2.6 Apache JMeter ................................................................................................8
2.7 Penelitian Terdahulu .......................................................................................8
BAB III PERANCANGAN SISTEM .......................................................................11
3.1 Kebutuhan Hardware dan Software ..............................................................11
3.2 Desain Sistem................................................................................................11
3.3 Fungsional Sistem .........................................................................................12
3.4 Skenario Pengamatan ...................................................................................13
3.5 Mekanisme Pemodelan Docker Swarm ........................................................14
BAB IV IMPLEMENTASI DAN EVALUASI .......................................................16
4.1 Instalasi Docker Pada Ubuntu Server ...........................................................16
4.2 Implementasi Swarm ...................................................................................17
4.3 Impelementasi Service ..................................................................................18
4.4 Implementasi Load Balancing ......................................................................19
4.5 Evaluasi .........................................................................................................21
4.5.1 Evaluasi Performance ............................................................................21
4.5.2 Evaluasi Fungsional Sistem ...................................................................22
4.5.3 Evaluasi Scalling ...................................................................................23
4.6 Monitoring CPU dan RAM Server ...............................................................24
4.6.1 Total CPU Usage ...................................................................................24
4.6.2 Total RAM Usage .................................................................................25
BAB V KESIMPULAN DAN SARAN.....................................................................27
5.1 Kesimpulan ...................................................................................................27
5.2 Saran .............................................................................................................27
DAFTAR PUSTAKA ................................................................................................28
DAFTAR GAMBAR
Gambar 2. 1 Arsitektur Docker .....................................................................................5
Gambar 2. 2 Cara Kerja Web Server .............................................................................6
Gambar 3. 1 Design Cara Kerja Load Balancing 12
Gambar 3. 2 Flowchart mekanisme Pemodelan Docker Swarm……………………..15
Gambar 4. 1 Gambar Docker Install 16
Gambar 4. 2 Memulai Dan Mengaktifkan Docker ......................................................16
Gambar 4. 3 Gambar Docker Version .........................................................................17
Gambar 4. 4 List Node Pada Docker Swarm...............................................................18
Gambar 4. 5 Script Untuk Membuat Layanan Pada Docker Swarm ...........................19
Gambar 4. 6 Script Untuk Membuat Directory Load Balancer ...................................19
Gambar 4. 7 Script Untuk Masuk Directory Load Balancer .......................................19
Gambar 4. 8 Script Algoritma Round Robin ...............................................................20
Gambar 4. 9 Script Docker Service Loadbalancer ......................................................20
Gambar 4. 10 (a) Jmeter Dengan 200 User (b) Jmeter Dengan 300 User
(c) Jmeter Dengan 400 User (d) Jmeter Dengan 500 User .........................................21
Gambar 4. 11 (e) Interface IP 10.10.102.11 (f) Interface IP 10.10.102.12 ................22
Gambar 4. 12 Perintah Untuk Melakukan Replikasi ...................................................23
Gambar 4. 13 Daftar Proses Service Replikasi............................................................23
Gambar 4. 14 Daftar Service Setelah Di Replikasi .....................................................23
Gambar 4. 15 (g) Grafik CPU IP 10.10.102.11 (h) Grafik CPU IP 10.10.102.12 ......24
Gambar 4. 16 (i) Grafik RAM IP 10.10.102.11 (j) Grafik RAM IP 10.10.102.12......25
DAFTAR PUSTAKA
[1] Kopparapu, Chandra. 2002. Load Balancing Servers, Firewalls, and Caches.
Canada : Wiley.
[2] Lingayat, A., Badre, R. R., & Gupta, A. K. (2018). Performance Evaluation
for Deploying Docker Containers on Baremetal and Virtual Machine.
Proceedings of the 3rd International Conference on Communication and
Electronics Systems, ICCES 2018, (Icces), 1019–1023.
https://doi.org/10.1109/CESYS.2018.8723998
[3] Mustafa, D. M. (2017). Load balancing algorithms round-robin (rr),
leastconnection, and least loaded efficiency. GESJ: Computer Science and
Telecommunications 2017|No.1(51)
[4] Affan, I. (2018, March 20). Perkembangan Infrastruktur Saat ini. Diambil
kembali dari Mico Citra Utama: https://cv-
mcu.co.id/2018/03/20/perkembangan-infra-saat-ini.html
[5] Adiputra, F. (2015). Container dan Docker: Teknik Vertualisasi dalam
Pengelolaan Banyak Aplikasi Web. Jurnal SimanteC, 4(3).
[6] Pershance, A. (2017). Rancang bangun web hosting menggunakan docker
container dan clustering pada coreos: docker container tugas akhir.
[7] Sujana, A. P. (2019). Implementasi Cluster Server Pada Raspberry Pi
Dengan Menggunakan Metode Load Balancing. Komputika : Jurnal Sistem
Komputer, 8(1), 37–43. https://doi.org/10.34010/komputika.v8i1.1623
[8] Rahmatulloh, A., & MSN, F. (2017). Implementasi Load Balancing Web
Server menggunakan Haproxy dan Sinkronisasi File pada Sistem Informasi
Akademik Universitas Siliwangi. Jurnal Nasional Teknologi Dan Sistem
Informasi, 3(2), 241–248. https://doi.org/10.25077/teknosi.v3i2.2017.241-
248
[9] Nugroho, A., Yahya, W., & Amron, K. (2017). Analisis Perbandingan
Performa Algoritma Round Robin dan Least Connection untuk Load
Balancing pada Software Defined Network. 1(12), 1568–1577. Retrieved
from http://j-ptiik.ub.ac.id
[10] Irza, I. F., Zulhendra, & Efrizon. (2017). Analisis Perbandingan Kinerja
Web Server Apache dan Nginx Menggunakan Httperf Pada Portal Berita
(Studi Kasus beritalinux.com). Jurnal Vokasional Teknik Elektronika &
Informatika, 5(2), 75–82.
[11] Permatasari, D. I., Santoso, B., Ningtias, N., Atika, R., Maulana, I.,
Elektronika, P., & Surabaya, N. (2019). Pengukuran throughput load testing
menggunakan test case sampling gorilla testing. September, 2008–2014.