Sinkronisasi file secara realtime antara beberapa server dalam mode multi-master
Ada alat yang baik yang dipanggil lsyncd
untuk menyinkronkan file antara beberapa server secara real time. Di sini saya sudah mencoba dengan dua server.
Host: Server1 dan Server2
OS yang Digunakan: CentOS 7
Instal paket di bawah ini di kedua server.
# yum install -y epel-release
# yum -y install lua lua-devel pkgconfig gcc asciidoc lsyncd
buat ssh-key di kedua server dan tambahkan ke authorized_keys
file. [tambahkan kunci publik dari server1 ke server2'sauthorized_keys
dan kunci publik server2 ke authorized_keys
file server1 ]
Konfigurasi server1
Buka /etc/lsyncd.conf
dan beri komentar konfigurasi default menggunakan --
di awal baris dan tambahkan konfigurasi di bawah ini ke file.
settings {
logfile = "/var/log/lsyncd/lsyncd.log",
delay = 1
}
sync {
default.rsync,
source="/home/test/public_html/",
target="server2:/home/test/public_html/",
rsync = {
compress = true,
acls = true,
verbose = true,
owner = true,
group = true,
perms = true,
rsh = "/usr/bin/ssh -p 22 -o StrictHostKeyChecking=no"
}
}
Ubah IP target menjadi target
parameter .
Anda dapat mengubah delay
parameter sesuai kebutuhan Anda. Ini sudah diatur 1 detik.
Sekarang buat direktori log.
# mkdir -p /var/log/lsyncd
Aktifkan lsyncd
layanan untuk memulai secara otomatis.
# systemctl enable lsyncd.service
Mulai layanan.
# systemctl start lsyncd.service
Konfigurasi Server2
Ikuti konfigurasi yang sama dengan Server1 dan ubah target
IP.
Sekarang sinkronisasi diatur.
Anda dapat memeriksa aktivitas dari tailf /var/log/lsyncd/lsyncd.log
Terima kasih kepada MelBurslan untuk sarannya.