Sie sind auf Seite 1von 10

PRAKTIKUM BASIS DATA TERDISTRIBUSI

MODUL VI
FAILOVER CLUSTER

LABORATORIUM REKAYASA PERANGKAT LUNAK


PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG

Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

I.

TUJUAN PRAKTIKUM
1. Mahasiswa mengetahui tentang Failover Cluster pada DBMS.
2. Mahasiswa mampu mempersiapkan kebutuhan untuk Failover Cluster. (Mengacu
pada modul sebelumnya dan percobaan praktikum pada modul ini)
3. Mahasiswa mampu menerapkan teknologi Failover Cluster.

II.

III.

ALAT DAN BAHAN


1.

Komputer Set (memory>=1GB, CPU>=PIV)

2.

Web Sever Apache (Xampp / Wamp Server )

3.

Mysql Cluster

4.

Mysql Server

DASAR TEORI
1. Database Clustering
Database clustering adalah kumpulan dari beberapa server yang berdiri
sendiri yang kemudian bekerjasama sebagai suatu sistem tunggal (Hodges, 2007).
Saat ini aplikasi database semakin berkembang, baik dalam hal kegunaan, ukuran,
maupun kompleksitas. Hal ini secara langsung berdampakpada server database
sebagai penyedia layanan terhadap akses database, konsekuensi dari semua itu adalah
beban database server akan semakin bertambah berat dan mengakibatkan kurang
optimalnya kinerja dari server tersebut.
Oleh karena itu diperlukan perancangan yang tepat dan handal dalam
membangun database server. Database pada masa sekarang ini dituntut agar dapat
berjalan dengan cepat, mempunyai kehandalan dan keseterdiaan yang tinggi, dengan
clustering database yang disimpan dapat terbagi kebeberapa mesin dan pada saat

Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

aplikasi berjalan, semuamesin yang menyimpan data tersebut dianggap sebagai satu
kesatuan.
Metode clustering seperti ini sangat baik untuk load-balancing dan
penanganan system failure karena kemampuan tiap mesin akan digunakan dan jika
ada salah satu mesin yang mengalami failure maka system tidak akan langsung
terganggu karena mesin lain akan tetap berfungsi. Kemampuan clustering
memungkinkan sebuah database tetap hidup dalam waktu yang lama. Berikut adalah
contoh arsitektur dari database cluster itu sendiri.
a.

Shared Disk Clusters


Arsitektur shared disk clusters menggunakan server-server independent dan
berbagi sebuah system penyimpanan tunggal. Setiap server mempunyai prosesor
dan memori sendiri, tetapi berbagi disk resources. Implementasi utama dari
shared-disk clustering adalah bukan untuk scalability. Shared-disk clustering ini
diimplementasikan untuk availability dan menambah node cadangan sebagai
failover node.

b.

Shared Nothing Cluster


Dalam arsitetur shared nothing cluster, tiapserver dalam cluster menangani
prosesor, memori, storage, record locks dan transaksi yang terpisah dan
melakukan koordinasi dengan server lain melalui jaringan dengan menggunakan
high speed low-latency interconnect technology. Dalam proses permintaan data
suatu node harus mengirimkan pesan ke node yang lain yang memiliki data yang
diakses. Hal ini juga dilakukan saat koordinasi data yang dilakukan pada node
yang lain seperti insert, select, update dan delete. Berbeda dengan shared disk,
sharednothing didisain untuk high availability dan scalability.

2. MySQL Cluster
MySQL Cluster merupakan sebuah tipe basis data (database) yang dapat
beroperasi dalam ukuran data yang besar. MySQL Cluster adalah sebuah teknologi
baru untuk memungkinkan clustering di dalam memory database dalam sebuah
Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

sistem share-nothing. Arsitektur share-nothing mengijinkan system dapat bekerja


dengan hardware/perangkat keras yang sangat murah, dan tidak membutuhkan
perangkat keras dan lunak dengan spesifikasi khusus. Arsitektur tersebut juga handal
karena masing-masing komponen mempunyai memory dan disk tersendiri.
MySQL Cluster menggabungkan MySQL Server biasa dengan sebuah
mesin penyimpanan in-memory tercluster yang dinamakan NDB. NDB berarti bagian
dari suatu rangkaian yang dikhususkan sebagai mesin penyimpanan, sedangkan
MySQL Cluster diartikan sebagai kombinasi atau gabungan dari MySQL dan mesin
penyimpanan yang baru tersebut. Sebuah MySQL Cluster terdiri dari sekumpulan
komputer,

masing-masing menjalankan sejumlah

MySQL server,

proses mencakup beberapa

node-node penyimpanan untuk cluster NDB,

server-server

manajemendan program-program pengakses data yang khusus. Semua programprogram tersebut bekerja bersama-sama untuk membentuk MySQL Cluster. Ketika
data

disimpan di

dalam mesin penyimpan media

NDB cluster, tabel-tabel

disimpan di dalam node-node penyimpanan pada NDB Cluster. Tabel-tabel seperti


itu dapat diakses secara langsung dari semua MySQL server yang lain di dalam
cluster tersebut. Data yang disimpan di dalam node-node penyimpanan pada
MySQL Cluster dapat di mirror (dicerminkan), cluster tersebut dapat menangani
kegagalan dari node-node penyimpanan individual dengan tidak ada dampak lain
dari sejumlah transaksi dihentikan karena kegagalan proses transaksi.
Di dalam konfigurasi mysql cluster itu sendiri terdapat tiga node cluster,
ketiga node clusterituadalah:
a. Management node(ndb_mgmd process)
b. Data node(ndbd process)
c. SQL node (mysqld process)

3. Pengaturan Node
Sepertireplikasi

yang

ada

di

MySQL, clustering menawarkan banyak

fleksibilitas. MySQL cluster sendiri menyertakan beberapa contoh pengaturan untuk


memberi anda beberapa ide tentang bagaimana cara untuk mengatur node.
Pengaturan

node yang

akan dilakukan itu sendiri berdasarkan dari adanya

Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

ketersedian data, danapa hardware yang diperlukan untuk memenuhi kebutuhan


system anda. Ketika kita telah memutuskan bahwa MySQL Cluster dapat memenuhi
keinginan kita, kita perlu menentukan berapa banyak mesin yang dibutuhkan untuk
memenuhi kebutuhan dari sistem yang akan kita rancang dan memberikan jumlah
yang tepat untuk redundansi.
Berikut adalah contoh dari beberapa pengaturan node.
a. Simple Arrangement
b. Robust Arrangement
c. Minimalist Arrangement

4. Arsitektur MySQL Cluster


MySQL

Cluster merupakan sebuah

database yang

menggunakan

arsitektur shared-nothing dan antar muka SQL yang telah umum digunakan. Sistem
database ini terdiri dari beberapa

node yang dapat didistribusikan ke beberapa

perangkat keras dan ke beberapa wilayah/zona yang berbeda sekaligus untuk tetap
menjaga ketersediaan

data

meskipun jaringan ataupun salah satu node sedang

mengalami kegagalan (failure).

Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

IV.

V.

PROSEDUR PRAKTIKUM
1.

Mahasiswa mengerjakan percobaan praktikum dan tugas praktikum.

2.

Mahasiswa mendemonstrasikan hasil praktikum pada dosen dan asisten.

3.

Mahasiswa membuat laporan praktikum.

PERCOBAAN PRAKTIKUM
1. Pastikan percobaan-percobaan anda pada modul sebelumnya telah berhasil !
2. Apa yang anda ketahui tentang Failover Cluster?
3. Apa saja yang dibutuhkan untuk menerapkan suatu skema Failover Cluster ? Jelaskan
juga masing-masing fungsinya !
4. Buat rancangan skema Failover Clustering yang akan anda terapkan ! Beri penjelasan
apa saja yang terdapat dalam skema tersebut dan mengapa anda memilih skema
tersebut !

VI.

LANGKAH-LANGKAH PRAKTIKUM
Download

terlebih

dahulu

MySQL

Cluster

untuk

linux

http://dev.mysql.com/downloads/cluster/

Rancangan Sistem
Database Node 1
Management Node
192.168.244.128

192.168.244.129
Database Node 2
192.168.244.130

Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

di

Management Node
1. Buat direktori di /usr/src dan pindah ke direktori tersebut

2. Copy hasil download ke /usr/src/mysql-mgm dan ekstrak file tersebut

3. Setelah diekstrak masuk ke direktori tersebut dan copy ke bin

4. Ganti hak akses folder dan hapus folder hasil download (opsional)

5. Buat file konfigurasi untuk cluster

Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

6. Start management node dengan menuliskan perintah berikut

7. Masukkan ndb_mgmd ke init.d dengan perintah berikut

Database Node
1. Prosesnya hampir sama dengan management node, pertama buat grup mysql dan
tambahkan user ke grup tersebut

2. Arahkan ke /usr/local dan copy mysql cluster ke folder tersebut, jika sudah ekstrak
file tersebut

3. Buat symbolic link yang mengarah ke folder hasil ekstrak, setelah itu install
database

4. Ganti kepemilikan grup mysql

5. Masukkan database engine ke init.d

6. Copy file bin ke /usr/bin dan buat symbolic link

7. Buat file konfigurasi untuk MySQL di /etc/ dan beri nama my.cnf
Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

8. Buat data folder untuk MySQL dan jalankan ndbd, ndbd --initial hanya dijalankan
untuk pertama kali dan jika config.ini mengalami perubahan

9. Seperti biasa, masukkan ke init.d dengan sintaks

Tes dan Verifikasi


1. Pada management node ketikkan perintah ndb_mgm
2. Setelah masuk menu Management Client ketikkan show

3. Pada database node 1 masuk ke mysql, buat database baru dan buat table dengan
engine ndbcluster

4. Isikan data dengan sintaks

Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

5. Tampilkan data pada table

6. Cek pada database node 2

7. Masukkan data lagi pada tabeltes

8. Cek pada database node 1, data di node 2 akan tereplikasi otomatis ke node 1

VII.
VIII.

TUGAS PRAKTIKUM
KESIMPULAN

Dokumen Laboratorium Teknik Informatika UMM @ 2014 Modul Praktikum

By. Team Informatika UMM

Basis Data Terdistribusi (BDT)

Das könnte Ihnen auch gefallen