開筆
背景(廢話)
做接口服務(wù)端摧茴,基本上都會(huì)使用負(fù)載均衡來(lái)保證后臺(tái)的可用性绵载,做負(fù)載均衡有很多方法,有硬負(fù)載苛白,也有軟負(fù)載娃豹,但負(fù)載均衡的后面,就是我們的應(yīng)用服務(wù)购裙,一般都是幾臺(tái)硬件配置相似的懂版,應(yīng)用服務(wù)完全相同的機(jī)器。當(dāng)我們要為這幾臺(tái)機(jī)器部署完全相同的應(yīng)用服務(wù)躏率,并維護(hù)和更新這幾臺(tái)機(jī)器上的應(yīng)用服務(wù)躯畴,自然就遇到最直接的數(shù)據(jù)(包括服務(wù))同步的問(wèn)題,筆者就是遇到這個(gè)問(wèn)題薇芝,才想辦法蓬抄,研究怎么優(yōu)雅的解決這個(gè)問(wèn)題。
當(dāng)然恩掷,數(shù)據(jù)同步的場(chǎng)景包含筆者所描述的倡鲸,但不僅限于此供嚎。
概述
rsync 是一款快速并多樣的異地文件拷貝工具黄娘。具備通過(guò)遠(yuǎn)程腳本或者遠(yuǎn)程rsync進(jìn)程來(lái)實(shí)現(xiàn)本地和遠(yuǎn)程主機(jī)間拷貝的能力。提供豐富的控制選項(xiàng)和靈活多樣拷貝的權(quán)限控制,因增量拷貝聞名克滴,廣泛地用于 備份和鏡像逼争,以及作為升級(jí)版本的拷貝命令使用。rsync 一個(gè)命令行工具劝赔,若要用它誓焦,首先得對(duì)命令行有一定的了解。
總而言之:rsync 是一款 高效的着帽、通用的拷貝杂伟、備份、同步數(shù)據(jù)(文件或者文件夾)工具仍翰,可以是本地的赫粥、遠(yuǎn)程的,夸目錄予借、夸磁盤亦或是夸機(jī)器越平,他的高效來(lái)自于能夠做到增量同步频蛔。
安裝
在部分 Linux 發(fā)行版本中,rsync 是默認(rèn)已經(jīng)安裝的秦叛,為確認(rèn)是否已經(jīng)安裝晦溪,可以查看機(jī)器中是否已經(jīng)安裝這幾個(gè)軟件:
- rsync
- xinetd
- ssh
沒(méi)有的話請(qǐng)自行安裝(yum 或者 apt-get 等等).
使用
基本語(yǔ)法
rsync options source destination
具體有那些選項(xiàng)的話,我們不妨執(zhí)行man rsync
看看挣跋。
本地拷貝
rsync -z ~/test.txt /Data/backup/
遠(yuǎn)程拷貝
rsync -zvz route root@jiafan.net:/backup/
使用ssh
其他高級(jí)選項(xiàng)
優(yōu)勢(shì)和特點(diǎn)(可看可不看)
- 高效的遠(yuǎn)程拷貝和同步文件的工具
- 支持 拷貝鏈接三圆、設(shè)備、所有權(quán)浆劲、所屬組和權(quán)限
- 比scp更快:基于 遠(yuǎn)程更新協(xié)議(remote-update protocol),從而具備增量拷貝技能
- 低帶寬消耗:傳輸前壓縮嫌术,傳輸后解壓