Çoklu ana modda birden çok sunucu arasında gerçek zamanlı dosya senkronizasyonu
lsyncd
Dosyaları gerçek zamanlı olarak birden çok sunucu arasında senkronize etmek için iyi bir araç vardır . Burada iki sunucu ile denedim.
Ana makineler: Sunucu1 ve Sunucu2
Kullanılan İşletim Sistemi: CentOS 7
Her iki sunucuya da aşağıdaki paketleri yükleyin.
# yum install -y epel-release
# yum -y install lua lua-devel pkgconfig gcc asciidoc lsyncd
her iki sunucuda ssh-key oluşturun ve authorized_keys
dosyaya ekleyin . [sunucu1'in ortak anahtarını sunucu2'lere ve sunucu2'nin authorized_keys
ortak anahtarını sunucu1'in authorized_keys
dosyasına ekleyin ]
Sunucu1 yapılandırması
Satırın başında /etc/lsyncd.conf
kullanarak varsayılan yapılandırmayı açın ve yorum yapın --
ve aşağıdaki yapılandırmayı dosyaya ekleyin.
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"
}
}
target
Parametredeki hedef IP'yi değiştirin .
Değişebilirsin delay
şartının gibi parametreyi. Burada 1 saniye ayarlanır.
Şimdi günlük dizinini oluşturun.
# mkdir -p /var/log/lsyncd
lsyncd
Hizmeti otomatik olarak başlatacak şekilde etkinleştirin .
# systemctl enable lsyncd.service
Hizmeti başlatın.
# systemctl start lsyncd.service
Server2 Yapılandırması
Sunucu1 ile aynı yapılandırmayı izleyin ve target
IP'yi değiştirin .
Şimdi senkronizasyon ayarlandı.
Etkinliği şuradan kontrol edebilirsiniz: tailf /var/log/lsyncd/lsyncd.log
MelBurslan'a önerisi için teşekkürler.