4 Bước để đồng bộ file dữ liệu với Rsync trên VPS Linux



Đồng bộ file dữ liệu là nhu cầu tất yếu trong những hệ thống load balacing hay replicate hiện nay. Có rất nhiều tool để làm việc này nhưng Rsync là một tool kinh điển được nhiều system admin dùng từ rất lâu nay. Mình giới thiệu cách sử dụng Rsync để đồng bộ file giữa 2 server hay 2 VPS Linux, thậm chí là VPS Linux với VPS Windows (đã cài Rsync với Cygwin) thông qua giao thức SSH để nâng cao tính bảo mật của dòng dữ liệu!

Bước 1: Trên server BACKUP tạo:
useradd -d /backup/my-rsync -m -s /bin/bash my-rsync
Bước 2: Trên server gốc tạo các khóa
ssh-keygen -t dsa -b 1024 -f /rsync/my-rsync-key
Bước 3: Quay lại server Backup, chuyển sang user my-rsync và:
cd ~/.sshtouch authorized_keyschmod 600 authorized_keyscat my-rsync-key.pub >> authorized_keys
Bước 4: Trở lại server gốc tạo 1 scripts rsync.sh như sau:
#!/bin/shrsync -avz /home/my-folder/* -e "ssh -i /rsync/my-rsync-key" my-rsync@server-Backup:/backup/my-rsync/my-folder-backup
và đưa nó vào crontab để đồng bộ lúc 1h10′ sáng hàng ngày:

10 1 * * * (sh /my-scripts/rsync.sh)

Như vậy với 4 bước trên, ta đã có thể đồng bộ dữ liệu giữa 2 server bất kỳ với nhau, tất nhiên là mới chỉ 1 chiều, còn đồng bộ 2 chiều hay còn gọi là bidirection sync