MAKALAH
Disusun untuk Memenuhi Tugas Mata Kuliah
Sistem Terdistribusi
oleh :
Pian Rispian 177006057
Arif Maulana K 177006085
Della Maerlin S 177006019
JURUSAN INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SILIWANGI
TASIKMALAYA
2019
i
KATA PENGANTAR
Segala puji dan syukur penulis panjatkan ke hadirat Alloh Swt. yang telah
melimpahkan segala rahmat-Nya sehingga penulis dapat menyelesaikan laporan
dengan judul Implementasi Load Balancing Menggunakan Nginx Dan Apache Web
Server Serta Replikasi Database MySQL guna memenuhi tugas Mata Kuliah Sistem
Terdistribusi Jurusan Informatika Fakultas Teknik Universitas Siliwangi
Tasikmalaya.
Berhubungan dengan penggunaan Load Balancer yang salah satu
implementasinya untuk mengoptimalkan kinerja dari web server ketika
menggunakan lebih dari satu dan meminimalisir salah satu web server down. Dalam
makalah ini akan dibahas tentang sistem terdistribusi secara umum, dan penerapan
Replikasi Database pada MySQL.
Dalam kesempatan ini penulis mengucapkan terimakasih kepada Dosen Mata
Kuliah Sistem Terdistribusi Pak Alam Rohmatullah, S.T, M.T. yang telah
membimbing penulis.
Makalah ini masih memiliki banyak kekurangan baik isi maupun susunannya.
Semoga makalah ini dapat bermanfaat tidak hanya untuk penulis tapi juga bagi para
pembaca.
Penulis
ii
DAFTAR ISI
A. LATAR BELAKANG
Semakin besarnya kebutuhan masyarakat akan informasi dan kompleknya
informasi yang disajikan, secara tidak langsung menyebabkan perkembangan
teknologi informasi menjadi semakin kompleks dengan berbagai platform dan
sumber daya yang berbeda-beda. Di sisi lain perkembangan teknologi memberikan
kemudahan bagi penyajian dan pengolahan infromasi, namun di satu sisi dengan
segala kecanggihan teknologi informasi, masih memiliki keterbatasan apabila
diintergrasikan dengan aplikasi atau platform yang berbeda. Begitu juga dengan
komunikasi antar sistem yang cenderung rentan dari segi kemamanan, akselerasi,
efektifitas dan efisiensi suatu sistem.
Keinginan untuk menghasilkan aplikasi yang dapat berjalan dalam berbagai
platform, terkadang mengabaikan nilai suatu informasi yang akan disajikan. Tanpa
disadari kerusakan data yang disajikan ternyata dapat mengakibatkan kerugian yang
sangat besar. Informasi yang tidak tersaji dengan baik mengakibatkan kerugian
materi maupun moril bagi sebuah perusahaan. Kebutuhan akan tersedianya data
yang baik setiap saat menjadi permasalahan yang rumit. Hal ini berkaitan dengan
kinerja sistem, jumlah pengakses data, serta lalulintas jaringan data yang setiap saat
bertambah padat. Hal ini memicu munculnya teknologi replikasi data.
Proses replikasi basis data merupakan sebuah proses yang banyak dilakukan
pada sistem basis data terdistribusi. Sistem basis data terdistribusi terdiri dari
kumpulan site-site, masing‐masing site ini dapat ber-partisipasi dalam pemrosesan
transaksi yang mengkases data pada suatu site atau beberapa site. Beberapa alasan
untuk membangun basis data terdistribusi, seperti berbagi informasi (share),
kehandalan (reliability), ketersediaan (availability) dan kecepatan pemrosesan
query. Keuntungan utama dari basis data terdistribusi adalah kemampuan untuk
pemakaian dan pengaksesan data secara bersama dengan cara yang handal dan
efisien.
1
2
Salah satu metode replikasi data adalah dengan menggunakan replikasi multi-
master. Replikasi multi-master merupakan sebuah metode penduplikasi basis data
yang memungkinkan data untuk disimpan di sejumlah site/node dan di update dari
semua site. Pada bentuk multi-master setiap site akan berperan sebagai master bagi
site-site lainnya. Replikasi basis data mengakibatkan akses terhadap informasi yang
disajikan menjadi lebih cepat, karena informasi yang diberikan dapat dilalukan dari
beberapa site. Dengan penggunaan Load Balancer dapat membagikan beban
permintaan dan dapat terus bekerja walaupun terjadi kegagalan pada server load
balancer ataupun kegagalan pada server backend. Selain itu, dalam beberapa
pengujian, penggunaan load balancing terbukti mampu menurunkan waktu respon
dan meningkatkan thoughput pada sistem sehingga mampu meningkatkan performa
keseluruhan sistem.
C. MANFAAT
Manfaat dari implementasi ini kita dapat mengetahui bagaimana cara
konfigurasi replikasi database master-master pada MySQL Apache sebagai
webserver. Selain itu juga memahami cara kerja dari load balancing terhadap
webserver dan client. Mengetahui fungsi dari replikasi database dan implementasi
load balancing juga dapat mengoptimasi kerja dari webserver ketika salah satu
down.
3
BAB II
LANDASAN TEORI
A. Kajian Teoritis
1. Replikasi Database MySQL
Replikasi MySQL adalah suatu proses yang memungkinkan data dari satu
database server MySQL (the master) di copy secara otomatis pada suatu database
MySQL server (the slave). Biasanya digunakan untuk menyebar akses membaca
pada multiple server untuk scalability, meskipun juga dapat digunakan untuk tujuan
lain seperti untuk failover (kegagalan), atau menganalisis data pada slave agar tidak
membebani master (Bojovic, 2016).
Replikasi adalah suatu teknik untuk melakukan copy (salin) dan
pendistribusian data dan objek objek database dari satu database ke database lain
dan melaksanakan sinkronisasi antara database sehingga konsistensi data dapat
terjamin. Dengan menggunakan teknik replikasi ini, data dapat didistribusikan ke
lokasi yang berbeda melalui koneksi jaringan lokal maupun internet. Replikasi juga
memungkinkan untuk mendukung kinerja aplikasi, penyebaran data fisik sesuai
dengan penggunaannya (Silitonga, 2014).
4. Ubuntu WSL
Windows Subsystem untuk Linux atau WSL, adalah fitur opsional Windows
10 yang memungkinkan program Linux berjalan secara native di Windows. WSL
dirancang oleh Microsoft dalam kemitraan dengan Canonical, pencipta Ubuntu.
Bersama-sama, mereka menciptakan lapisan kompatibilitas kernel berbasis
Ubuntu. Lapisan kompatibilitas ini memungkinkan program-program Linux untuk
berjalan dalam versi 10 dari Bash Shell. (Hope, 2018)
5. MySQL
MySQL adalah sebuah perangkat lunak system manajemen basis data SQL
(DBMS) yang multithread, dan multi-user. MySQL adalah implementasi dari
system manajemen basisdata relasional (RDBMS). MySQL dibuah oleh TcX dan
telah dipercaya mengelola system dengan 40 buah database berisi 10.000 tabel dan
500 di antaranya memiliki 7 juta baris. MySQL AB merupakan perusahaan
komersial Swedia yang mensponsori dan yang memiliki MySQL. Pendiri MySQL
AB adalah dua orang Swedia yang bernama David Axmark, Allan Larsson dan satu
orang Finlandia bernama Michael “Monty”. Setiap pengguna MySQL dapat
menggunakannya secara bebas yang didistribusikan gratis dibawah lisensi
GPL(General Public License) namun tidak boleh menjadikan produk turunan yang
bersifat komersial (Yasin, 2019).
7
6. Apache
Apache adalah sebuah perangkat lunak web server yang menghubungkan
antara server dengan user (browser). Jika Anda mengakses sebuah website melalui
URL di browser kemudian muncul tampilan website, bisa jadi itu merupakan hasil
kerja dari Apache. (Yasin, K, 2019) Pada awal kemunculannya, Apache
dikembangkan supaya dapat menjadi sebuah perangkat lunak web server open-
source yang dapat dikembangkan dan dikelola oleh modern sistem operasi, seperti
Unix dan Windows. Tujuan lain dari pengembangan Apache adalah menyediakan
web server yang aman, efisien, dan dapat dikembangkan dengan mudah.
Selain itu, saat ini Apache menjadi web server yang paling banyak digunakan
dari total keseluruhan website yang ada di internet. Jika melihat kondisi sekarang,
saat ini juga banyak penyedia layanan panel kontrol (khususnya cPanel)
menggunakan Apache sebagai web server. Sama halnya dengan berbagai macam
web server saat ini, Apache menjadi salah satu penggerak utama supaya website
dapat terhubung dengan pengunjung (user).
8
BAB III
METODOLOGI
Untuk dapat mendukung penulisan tugas akhir ini, maka dapat menggunakan
metode penulisan sebagai berikut:
1. Studi Literatur
Literatur dalam hal ini baik berupa buku, catatan, jurnal hasil penelitian, dan
sumber-sumber elektronik di internet. Studi literatur ini ditujukan untuk
mendapatkan referensi yang jelas dan tepat mengenai sistem yang dibangun,
terutama mengenai rekomendasi dan standarisasi yang berlaku. (Sadrina, 2018)
2. Pengumpulan data
Pada metode pengumpulan data yang berdasarkan studi lapangan yaitu
metode observasi. Observasi, yaitu dengan melakukan pengamatan terhadap
aktivitas web server yang ada di jurusan Informatika dan beberapa web yang ada di
internet. (Sadrina, 2018)
3. Analisis
Analisis kebutuhan perangkat hardware sebagai media perancangan dan
software penginstalan dan aplikasi pendukung lainnya. (Sadrina, 2018)
5. Menyusun Laporan
Penyusunan laporam dilakukan untuk memberikan penjelasan yang berkaitan
dengan hasil kerja yang telah dibuat dan semua dokumentasi dari laporan. (Sadrina,
2018)
9
BAB IV
PEMBAHASAN
c) Kemudian konfigurasi pada master yakni memberikan hak akses pada slave
untuk dapat melakukan replikasi.
Konfigurasi :
Username server1
Password STServer1
Jalankan perintah :
2. Hasil implementasi
Membuat database pada Laptop 1 yakni sebagai berikut :
Pada Client 2 :
BAB V
SIMPULAN DAN SARAN
A. Simpulan
Replikasi adalah suatu teknik untuk melakukan copy (salin) dan
pendistribusian data dan objek objek database dari satu database ke database lain
dan melaksanakan sinkronisasi antara database sehingga konsistensi data dapat
terjamin. Untuk melakukan konfigurasi replikasi database, disini menggunakan dua
perangkat laptop dengan tools yang digunakan yakni sistem operasi Windows 10,
Apache Web Server dan MySQL. Model yang digunakan yakni Master-Master
sehingga bisa mengimplementasikan replikasi database dikedua server. Selanjutnya
replikasi database ini dapat diimplementasikan dengan Load Balancer dengan
Nginx.
Metodologi yang digunakan yakni dengan melakukan studi literatur,
kemudian pengumpulan data, analisis dan implementasi serta evaluasi, juga
mendokumentasikan dalam bentuk laporan. Implementasi replikasi database dan
load balancing ini menggunakan Nginx sebagai load balancer dalam Ubuntu WSL
dan Apache untuk menjalankan webserver serta MySQL untuk databasenya.
B. Saran
Diharapkan laporan ini dapat menjadi referensi konfigurasi replikasi database
MySQL, dan dapat diimplemetasikan dengan Load Balancer supaya lebih optimal
dalam server. Meskipun laporan ini disusun memiliki beberapa kekurangan, supaya
bisa dimaklumi.
18
DAFTAR PUSTAKA
Vuong, C. (2018, September 15). Install LEMP on Ubuntu WSL on Windows 10.
Retrieved from ChanhVuong: https://www.chanhvuong.com/3389/install-
lemp-on-ubuntu-wsl-on-windows-10/
Yasin. (2019, July 24). Pengertian MySQL, Fungsi, dan Cara Kerjanya.
Retrieved from NiagaHoster: https://www.niagahoster.co.id/blog/mysql-
adalah/
Yasin, K. (2019, Juli 22). Apa Itu Apache? Kelebihan dan Kekurangannya.
Retrieved from NiagaHoster: https://www.niagahoster.co.id/blog/apache-
adalah/
Yasin, K. (2019, Juli 21). Apa Itu Nginx dan Cara Kerjanya. Retrieved from
NiagaHoster: https://www.niagahoster.co.id/blog/nginx-adalah/