備份服務概念介紹
1.對網站服務器數據進行備份存儲(恢復數據,誤改數據)
2.對網站服務器數據進行對比分析
3.對網站服務器進行統一管理
備份服務器應有幾臺合適
1.同一機房要有多個備份服務器
2.不同機房要有多個備份服務器
3.不同地理位置要有多個備份服務器
備份服務器備份的內容是什么
1.內部人員產生的數據,(腳本、代碼、配置文件、數據庫、日志)使用定時任務備份
2.外部人員(用戶)產生的數據,(圖片、附件、視頻)使用實時數據備份
rsync軟件:快速多功能遠程(本地)文件備份工具
全量備份:將所有數據進行完整備份,傳輸效率低
增量備份:將變化數據進行備份,傳輸效率高
守護進程模式
增量備份數據原理
1.比較數據屬性信息:默認rsync增量傳輸數據利用屬性信息做比較
2.比較數據指紋信息:使用rsync -c 基于指紋信息判斷文件的變化
軟件rsync的使用方法
利用rsync遠程備份
傳輸目錄后面有根號/oldboy/,表示只傳輸目錄下面的內容
傳輸數據后面沒有根號/oldboy,表示傳輸目錄及目錄下面的內容
守護進程方式部署
服務端部署過程
第一個里程:確認軟件是否安裝
yum install -y rsync
第二個里程:編寫配置文件
[root@backup ~]# vim /etc/rsyncd.conf
uid = rsync 管理目錄的屬主信息
gid = rsync 管理目錄的屬組信息
port = 873 指定守護進程端口信息默認873
fake super = yes 讓指定用戶偽裝成管理員用戶
use chroot = no 和遠程傳輸安全有關參數
max connections = 200 最大連接數
timeout = 300 連接超時時間
pid file = /var/run/rsyncd.pid 記錄記錄服務進程號碼文件
lock file = /var/run/rsync.lock 當max connection達到上限,利用鎖文件阻止新的連接建立
log file = /var/log/rsyncd.log 程序日志文件
ignore errors 忽略錯誤信息,提高數據傳輸效率
read only = false 設置備份目錄權限為可讀可寫
list = false 顯示用戶列表
hosts allow = 172.16.1.0/24 白名單
hosts deny = 0.0.0.0/32 黑名單
auth users = rsync_backup 認證用戶信息
secrets file = /etc/rsync.password認證用戶密碼文件
[backup] 模塊信息
comment = "backup dir by oldboy" 模塊注釋說明
path = /backup
第三個里程:創建rsync服務虛擬用戶
第四個里程:創建密碼文件,修改文件權限
第五個里程:創建備份目錄,修改目錄屬主屬組信息
mkdir /backup
chown rsync.rsync /backup
第六個里程:啟動或重啟服務
systemctl start rsyncd
systemctl restart rsyncd
systemctl enable rsyncd
客戶端部署
測試服務端部署過程
rsync守護進程模式備份數據原理 (用戶身份轉換過程)
第一步: 客戶端 --> 服務端 發送請求傳輸數據信息 執行命令 有認證用戶信息 傳輸數據信息
第二部: 服務端 --> 客戶端 接收到傳輸數據信息 審核認證用戶
發送回復信息 需要認證密碼
第三步: 客戶端 --> 服務端 發送請求傳輸數據信息 發送認證密碼信息
第四步: 服務端 --> 客戶端 發送確認信息
第五步: 客戶端 --> 服務端 用戶攜帶數據通過網絡進行傳輸 需要對用戶身份進行轉換 --> rsync (配置文件指定)
第六部: 服務端 --> 客戶端 發送數據存儲完畢確認信息 將數據保存到備份目錄中 備份目錄權限屬主為rsync
修改備份數據屬主和屬組信息 rsync用戶身份修改文件權限
rsync命令參數
-a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)
歸檔模式參數; 等價于 -rlptgoD
-r, --recursive recurse into directorie
遞歸傳輸目錄
-l, --links copy symlinks as symlinks
備份傳輸軟鏈接文件保持屬性不變
-L, --copy-links transform symlink into referent file/dir
備份傳輸軟連接文件時,會將源文件內容信息進行傳輸備份
-p, --perms preserve permissions
保持權限信息不變 644 755
-t, --times preserve modification times
保持文件修改時間不變
-o, --owner preserve owner (super-user only)
保持文件屬主信息不變
-g, --group preserve group
保持文件屬組信息不變
-D same as --devices --specials
保持設備文件屬性信息不變 c b s
-v, --verbose increase verbosity
傳輸備份數據詳細過程信息
-P same as --partial --progress
傳輸進度信息
--exclude=PATTERN exclude files matching PATTERN
根據指定數據信息進行排除
--exclude-from=FILE read exclude patterns from FILE
根據指定文件進行批量排除數據信息
--delete delete extraneous files from destination dirs
進行無差異同步傳輸數據
同步目錄數據信息時, 保證目錄中數據信息一模一樣
-z, --compress compress file data during the transfer
在傳輸數據時,對文件進行壓縮傳輸
--bwlimit=RATE limit socket I/O bandwidth
限制傳輸速率
--password-file 實現免交互傳輸數據信息
客戶端部署免交互過程
rsync守護進程備份服務企業應用
守護進程模式:
推: 客戶端 -- 數據備份 -- 備份服務器
拉: 客戶端 -- 數據恢復 -- 備份服務器
服務端 -- 數據備份 -- 客戶端