মাল্টি মাস্টার মোডে একাধিক সার্ভারের মধ্যে রিয়েলটাইম ফাইল সিঙ্ক্রোনাইজেশন
lsyncdরিয়েল টাইম ভিত্তিতে একাধিক সার্ভারের মধ্যে ফাইল সিঙ্ক করার জন্য একটি ভাল সরঞ্জাম রয়েছে। এখানে আমি দুটি সার্ভার দিয়ে চেষ্টা করেছি।
হোস্টস: সার্ভার 1 এবং সার্ভার 2
ওএস ব্যবহৃত: CentOS 7
উভয় সার্ভারে প্যাকেজগুলির নীচে ইনস্টল করুন।
# yum install -y epel-release
# yum -y install lua lua-devel pkgconfig gcc asciidoc lsyncd
উভয় সার্ভারে ssh-key উত্পন্ন করুন এবং authorized_keysফাইলটিতে যুক্ত করুন। [সার্ভার 1 এর authorized_keysসার্বজনিক কী এবং সার্ভার 1 এর authorized_keysফাইলে সার্ভার 2 এর সর্বজনীন কী যুক্ত করুন]
সার্ভার 1 কনফিগারেশন
লাইনের শুরুতে /etc/lsyncd.confডিফল্ট কনফিগারেশনটি খুলুন এবং মন্তব্য --করুন এবং ফাইলটিতে নীচে কনফিগারেশন যুক্ত করুন।
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প্যারামিটারে লক্ষ্য আইপি পরিবর্তন করুন ।
delayআপনার প্রয়োজনীয়তা অনুযায়ী আপনি প্যারামিটারটি পরিবর্তন করতে পারেন । এখানে এটি সেট 1 সেকেন্ড।
এখন লগ ডিরেক্টরিটি তৈরি করুন।
# mkdir -p /var/log/lsyncd
lsyncdপরিষেবাটি স্বয়ংক্রিয়ভাবে শুরু করতে সক্ষম করুন ।
# systemctl enable lsyncd.service
পরিষেবাটি শুরু করুন।
# systemctl start lsyncd.service
সার্ভার 2 কনফিগারেশন
সার্ভার 1 হিসাবে একই কনফিগারেশন অনুসরণ করুন এবং targetআইপি পরিবর্তন করুন ।
এখন সিঙ্ক্রোনাইজেশন সেট করা আছে।
আপনি ক্রিয়াকলাপটি চেক করতে পারেন tailf /var/log/lsyncd/lsyncd.log
তার পরামর্শের জন্য মেলবার্সলানকে ধন্যবাদ।