Apakah ada alat yang tersedia untuk menyinkronkan file antara dua atau lebih server linux segera setelah menulis file di disk? The rsync
perintah tidak sesuai dengan saya tentang hal ini, karena jika saya set rsync
di cron, waktu minimum saya bisa mengatur adalah 1 menit, tapi saya membutuhkannya secara real-time.
linux
files
synchronization
Sourav
sumber
sumber
Jawaban:
Belum pernah menggunakannya sendiri tetapi membacanya baru-baru ini. Ada daemon yang dipanggil
lsyncd
, yang saya duga melakukan apa yang Anda butuhkan.Baca lebih lanjut di SINI
sumber
lsyncd
menggunakaninotify
& harus menjadi yang tercepat di level fs. Lebih banyak di github.com/axkibe/lsyncd . Dari halaman itu: Lsyncd menyaksikan antarmuka pemantau acara direktori pohon lokal (inotify atau fsevents). Ini mengumpulkan dan menggabungkan acara selama beberapa detik dan kemudian memunculkan satu (atau lebih) proses untuk menyinkronkan perubahan. Secara default ini adalah rsync. Dengan demikian, Lsyncd adalah solusi cermin langsung berbobot ringan yang relatif mudah dipasang tanpa memerlukan sistem file baru atau memblokir perangkat dan tidak menghambat kinerja sistem file lokal.Inotify-tools
Menyediakan antarmuka untuk
inotify
, terdiri dari:inotifywait
Perintah ini hanya memblokir untuk acara inotify, membuatnya sesuai untuk digunakan dalam skrip shell. Itu dapat menonton set file dan direktori, dan dapat secara rekursif menonton seluruh pohon direktori.
inotifywatch
Perintah ini mengumpulkan statistik penggunaan sistem file dan jumlah keluaran dari setiap peristiwa tidak sah.
sumber
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.
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 keauthorized_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.Ubah IP target menjadi
target
parameter .Anda dapat mengubah
delay
parameter sesuai kebutuhan Anda. Ini sudah diatur 1 detik.Sekarang buat direktori log.
Aktifkan
lsyncd
layanan untuk memulai secara otomatis.Mulai layanan.
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.
sumber
Sinkronisasi mungkin menjadi opsi. Ini sangat cepat, transfer dienkripsi dan ada klien untuk berbagai platform. Ini menggunakan "inotify" untuk menyinkronkan file yang diubah secara instan.
sumber
Anda perlu melakukan pendekatan dengan solusi tipe sistem file yang dikelompokkan - sinkronisasi sederhana antara kedua mesin tidak akan memberikan respons waktu nyata.
sumber
"SIOS Protection Suite untuk Linux" dapat menawarkan ini, pada AWS.
http://www.linuxclustering.net/2016/03/21/step-by-step-how-to-configure-a-linux-failover-cluster-in-amazon-ec2-without- shared-storage-amazon- aws-sanless-cluster / # InstallConfigureCluster
sumber