Sync Data menggunakan Glusterfs

Assalamualaikum Warrahmatullahi Wabarakatuh

Halo gan, pada postingan kali ini saya ingin membahas mengenai cara melakukan sync data antar server menggunakan GlusterFS.

Disk Synchronization adalah sebuah metode dimana data-data pada server yang satu akan sama dengan yang lainnya. Ketika ada perubahan data pada salah satu server, maka data tersebut akan otomatis ter-sync ke server lain. Sehingga konten data pada server satu dan yang lainnya akan sama.

Sinkronisasi disk ini amat berguna terutama ketika kita menggunakan sistem Cluster Server. Baik itu dalam hal Failover maupun Loadbalancer. Dalam sebuah cluster server, data-data antara server satu dengan yang lainnya harus dalam kondisi sama dan tersinkronisasi.

Misalnya ketika user mengupload data di server A, maka data tersebut otomatis akan tersinkron dengan server B. Jadi sewaktu-waktu server A down, maka server B siap menggantikan lengkap dengan data-data yang dimiliki oleh server A. Begitupun juga sebaliknya.

Pada postingan kali ini saya menggunakan skema seperti dibawah ini:

Dari skema diatas server sinka.sabto.com dan yuvia.sabto.com memiliki servis yang sama yaitu FTP. Data-data dari FTP akan diletakkan pada harddisk tersendiri (SDB). Harddisk tersebut nantinya akan di-sync antar server. Sehingga data pada server sinka akan sama dengan server yuvia, begitupun sebaliknya. Oke langsung saja kita ke prakteknya.

1. Set Hostname pada kedua server.
# nano /etc/hosts
———————————–
10.10.10.1  sinka.sabto.com
10.10.10.2  yuvia.sabto.com
———————————–

2. Install GlusterFS dari Repo khusus untuk Glusterfs
# nano /etc/yum.repos.d/glusterfs.repo
—————————————————————————————
[glusterfs]
name=glusterfs-repo
baseurl=http://buildlogs.centos.org/centos/7/storage/x86_64/gluster-3.11/
enabled=1
gpgcheck=0
—————————————————————————————
# yum install glusterfs glusterfs-fuse glusterfs-server
# systemctl start glusterd

3. Buat disk dan partisi sdb pada masing-masing server
# fdisk /dev/sdb
n > p > w
# mkfs.ext4 /dev/sdb1

4. Buat folder sementara untuk menampung mount point dari partisi /dev/sdb1. Yang mana nantinya disk ini akan kita sync.
# mkdir -p /data-gluster
# mount /dev/sdb1 /data-gluster

5. Lakukan Peer pada masing-masing server.
root@sinka # gluster peer probe yuvia.sabto.com
root@yuvia # gluster peer probe sinka.sabto.com

6. Manage Gluster dan buat New Volume. Lakukan ini hanya pada server sinka.sabto.com.
root@sinka # gluster
gluster> pool list
gluster> volume status
gluster> volume create dataftp rep 2 transport tcp sinka.sabto.com:/data-gluster/ yuvia.sabto.com:/data-gluster force
gluster> volume start dataftp

7. Terakhir lakukan mount pada disk tersebut ke home directory tempat FTP data diletakkan.
root@sinka # mount -t glusterfs sinka.sabto.com:/dataftp /home/ftp/
root@yuvia # mount -t glusterfs yuvia.sabto.com:/dataftp /home/ftp/

Setelah itu, ketika user melakukan FTP dan mengupload data ke server mana pun, maka data tersebut otomatis akan tersinkron kesemua server.

Terimakasih telah mengunjungi blog saya dan semoga bermanfaat 🙂 .

Wassalamualaikum Warrahmatullahi Wabarakatuh

Leave a Reply

Your email address will not be published. Required fields are marked *