Rabu, 02 Juni 2021

LSYNC-reltime antar server OK

 

Backup Data Menggunakan lsync dengan Ubuntu 18.04

Pada tutorial saya sebelumnya backup data secara real time menggunakan lsync dimana OS yang digunakan adalah CentOS untuk tutorialnya disini. Pada kesempatan kali ini masih dengan tema yang sama hanya saja menggunakan OS yang berbeda yaitu Ubuntu 18.04. Dengan rincian sebagai berikut:

Server Master

OS = Ubuntu 18.04 LTS

IP = 35.247.163.181

Directory data = /data

Server Slave

OS = Ubuntu 18.04 LTS

IP = 35.240.252.217

Directory Backup = /backup

Nb : Pastikan kedua server sudah terinstall rsync dan konfigurasi ssh-copy-id.

Setelah semua disiapkan baik server master sebagai server utama dan server slave sebagai server backup. Berikut konfigurasi untuk menggunakan lsync untuk backup nya. Untuk konfigurasi sendiri hanya ada disisi server master.

ssh server master lalu install aplikasi lsync nya.

apt -y install lsyncd

Buat directory konfigurasi lsync.

mkdir /etc/lsyncd

Buat file konfigurasi lsync

vi /etc/lsyncd/lsyncd.conf.lua

Isi konfigurasi sesuai dengan kebutuhan anda. Atau bisa menggunakan konfigurasi saya.

settings {
    logfile = "/var/log/lsyncd.log",
    statusFile = "/var/log/lsyncd.stat",
    statusInterval = 1,
}

sync {
    default.rsync,
    source="/data",
    target="35.240.252.217:/backup",
}

Restart lsync.

systemctl restart lsyncd

Cek di sisi server slave apakah file sudah sync.


------------------------------------------------------------------------------------------

Auto-Sync Folder pada Linux CentOS dengan LSYNC

 

LSYNC merupakan command UNIX yang bisa digunakan untuk sinkronisasi data secara realtime. Jadi setiap ada perubahan data pada folder asal, akan berubah pula data pada folder tujuan. Berikut step2 instalasinya:

1. Pertama pastikan source server dapat SSH langsung tanpa password ke server tujuan. Caranya bisa anda cek di tutorial kami sebelumnya: SSH Tanpa Password dengan RSA Key Authentication

2. Kemudian install DAG repo agar package lsyncd tersedia

wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm (ganti i386 menjadi x86_64 jika anda menggunakan 64bit)

wget http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

yum install lsyncd

3. Setelah proses instalasi selesai, sekarang kita konfigurasi folder yang ingin di-sync

4. Pertama, kopi file config ke folder etc

cp/usr/share/doc/lsyncd/lrsync.lua /etc/lsyncd.conf

5. Kemudian edit file config

nano /etc/lsyncd.conf

6. Berikut settingan yang terdapat pada file config lsyncd.conf

settings = {
statusFile = “/tmp/lsyncd.stat”,
logfile = “/tmp/lsyncd.log”,
statusInterval = 1,
}

sync{
default.rsync,
source=”/var/www/html/”,
target=”xxx.xxx.xxx.xxx:/var/www/html/”,
rsyncOps=”-az”, #  -> rsync option pilihan bisa anda cek dengan menggunakan command rsync -h
excludeFrom=”/etc/rsync_exclude.lst”,   # -> isi rsync_exclude.lst dengan folder2 yg tdk ingin di-sync
}

sync{
default.rsync,
source=”/var/lib/mysql/”,
target=”xx.xxx.xxx.xxx:/var/lib/mysql/”,
rsyncOps=”-az”,
excludeFrom=”/etc/rsync_exclude.lst”,
}

7. Setelah setting selesai, jalankan lsyncd

/etc/init.d/lsyncd start

8. Lalu atur agar lsyncd autostart setelah reboot

chkconfig lsyncd on

9. LSYNC sekarang sudah selesai. Anda bisa cek dengan membuat file baru pada folder source. Lalu periksa di folder target apakah keduanya sudah berhasil ter-sync dengan benar. Selamat mencoba  ;-)

---------------------------------------------------------------------

jika error parameter https://unix.stackexchange.com/questions/155257/lsyncd-and-additional-parameters-for-rsync

Information based on documentation for version 2.1.x. Based on this your sync section should look like this:

sync{
    default.rsync,
    source="/home/user/data/source_data/",
    target="/home/user/data/synced_data/",
    delete=false,
    rsync={
        checksum = true,
        _extra = { "--remove-source-files", "--delay-updates" }
        }
    }

rsyncOpts is not a valid directive.

Should be something like:-

rsync     = {
                links = true,
                archive  = true,
                delete = false,
                compress = true,
                verbose = true,
                _extra   = {"--omit-dir-times","-e ssh -i /root/lsync/source_rsa","--progress"}
            }

Tidak ada komentar:

Posting Komentar