Bcache簡(jiǎn)介
Bcache是Linux內(nèi)核塊設(shè)備層cache庄涡,支持多塊HDD使用同一塊SSD作為緩存盤。它讓SSD作為HDD的緩存成為了可能搬设。由于SSD價(jià)格昂貴啼染,存儲(chǔ)空間小,而HDD價(jià)格低廉焕梅,存儲(chǔ)空間大迹鹅,因此采用SSD作為緩存,HDD作為數(shù)據(jù)存儲(chǔ)盤贞言,既解決了SSD容量太小斜棚,又解決了HDD運(yùn)行速度太慢的問題。
檢查
是否存在于內(nèi)核中:檢查/sys/fs/bcache目錄是否存在该窗,沒有說明內(nèi)核中沒有bcache
是否以內(nèi)核模塊方式存在:檢查/lib/modules/<$version>/kernel/drivers/md/bcache目錄是否存弟蚀,不存在則說明沒有bcache內(nèi)核模塊
以上兩步檢查完如果都沒有,則說明內(nèi)核中沒有配置編譯bcache酗失,需要自己配置編譯新的內(nèi)核(下載內(nèi)核時(shí)需要注意版本义钉,Bcache是從Linux-3.10開始正式并入內(nèi)核主線的,因此规肴,要使用Bcache捶闸,需要將內(nèi)核升級(jí)到3.10及以上版本才行夜畴。)
Bcache緩存策略
Bcache支持三種緩存策略,分別是:writeback删壮、writethrough贪绘、writearoud,默認(rèn)使用writethrough央碟,緩存策略可動(dòng)態(tài)修改税灌。
writeback 回寫策略:回寫策略默認(rèn)是關(guān)閉的,如果開啟此策略亿虽,則所有的數(shù)據(jù)將先寫入緩存盤菱涤,然后等待系統(tǒng)將數(shù)據(jù)回寫入后端數(shù)據(jù)盤中。
writethrough 寫通策略:默認(rèn)的就是寫通策略洛勉,此模式下狸窘,數(shù)據(jù)將會(huì)同時(shí)寫入緩存盤和后端數(shù)據(jù)盤。
writearoud:選擇此策略坯认,數(shù)據(jù)將直接寫入后端磁盤。
一般情況下氓涣,writeback寫性能要由于后兩者牛哺,為了提高寫的性能,需要修改緩存模式為寫回
echo writeback > /sys/block/bcache0/bcache/cache_mode
bcache-tools的安裝與使用
bcache-tools的安裝
要使用Bcache劳吠,必須安裝bcache-tools工具包引润,由于CentOS 7的源中沒有bcache-tools,因此痒玩,需要手動(dòng)下載源碼包進(jìn)行編譯淳附。源碼在這:bcache-tools,下載之后蠢古,需要安裝libblkid-devel依賴包方可進(jìn)行編譯奴曙,通過以下命令即可安裝:
yum install libblkid-devel
編譯安裝
獲取bcache-tools工具(以下兩個(gè)網(wǎng)址任選其一)
git clone http://evilpiepirate.org/git/bcache-tools.git
git clone https://github.com/g2p/bcache-tools.git
安裝前需要兩個(gè)依賴包pkg-config和libblkid-dev
yum -y install pkg-config libblkid-dev
編譯安裝bcache-tools
make
makeinstall