最近公司服務器到期,准備遷移服務器,那么問題來了,數據太多,搬遷過程中舊服務器還在繼續跑數據,怎么破??
眼前擺在我眼前的就兩條路,
1、最簡單的辦法,半夜遷移數據,這就表明我要倒時差了
2、想辦法搞他!讓我晚上能好好睡上一波,畢竟還年輕罒ω罒,要注重保養
話不多說,就是要選擇第2種,不要問為什么,頭鐵!
重點來了,Rsync+crontab才最配
公司服務器用的是centos的寶塔環境,查了一下,寶塔竟然要收費!!!
\
一個月4塊8.。我像是有錢的人嗎??
直接查資料,手動搞!
下面是流程
a、b兩台服務器,a為舊服務器,b 為新服務器,rsync也可以對服務器的負載均衡也會起到關鍵作用,后面必然會用到,后續再來填坑吧
首先往a服務器上配置
●Rsync 一般linux都會帶上
a服務器記得開放873端口
沒有的話,SSH連上,執行以下代碼
yum -y install rsync
●安裝完后,用寶塔進入/etc/rsyncd.conf
[aa] path=/www/wwwroot/aa/ use chroot=no max connections=10 read only=yes write only=no list=no uid=root gid=root auth users=root secrets file=/etc/rsync_server.pas strict modes=yes hosts allow=* #hosts deny=1.1.1.1 ignore errors=yes timeout=120 #秒
參數說明:
[aa] :模塊名,自己定義,可以在下方添加其它模塊。須與客戶端執行命令中的模塊名一致。
path:要備份的服務端文件夾路徑。
hosts allow:允許的客戶端連接IP。
secrets file:服務端密碼文件,內容格式為,用戶名:密碼。
auth users:有權限的用戶名,與密碼文件的中用戶名一致。
要手動在/etc目錄創建一下下密碼文件 rsync_server.pas 加入用戶名與密碼,內容格式為:用戶名:密碼。 如 root:123456
創建完切記設置文件權限為600,所有者要跟密碼文件中的用戶名一致
接下去啟動rsync服務
# 啟動rsync /usr/bin/rsync --daemon --config=/etc/rsyncd.conf
順便說一下停止Rsync
# 停止rsync ps -ef | grep rsync kill -9 進程號 rm -rf /var/rsync/rsync.pid
接下去 b服務器配置
同樣,rsync要是沒裝,就安裝a服務所說的安裝上
裝完后,在/etc下創建密碼文件rsync_client.pas,注意內容只有密碼,且與a服務器密碼文件中的密碼相同。如123456
更改密碼文件權限為600。這個非常重要,否則會無法同步
在b服務器添加定時任務crontab
直接編輯/etc/crontab文件,添加以下定時代碼,保存
00 02 * * * root rsync -aqzrtopg --delete rsync://root@192.168.1.1/aa /home/aa_backup --password-file=/etc/rsync_client.pas
參數說明
192.168.1.1 假設為a服務器ip
aa為服務端/etc/rsyncd.conf 文件中的[aa]模塊
/home/aa_backup 是b服務器文件夾路徑
/etc/rsync_client.pas為當前服務器的密碼文件
完事,安心睡覺,定時2點(夜間執行備份操作比較穩妥,不會影響到白天服務器正常運行)會把代碼同步到b服務器上