在Linux系统中将SSD当块设备缓存的方法
发布时间:2023-01-30 01:02:14
这篇文章主要介绍了在Linux系统中将SSD当块设备缓存的方法,主要是将SSD作为内存和HDD中间的过度缓存设备,需要的朋友可以参考下
原理
写操作先缓存到ssd硬盘上,然后通过一定策略写到普通硬盘上;
读操作热点数据可以缓存到ssd硬盘上,提高读取数据的速度。
软件 ssd 缓存开源软件主要有bcache ,flashcache
bcache 需要编译最新的内核,要求比较高,配置比较复杂,目前主要用于测试环境;
flashcache 是facebook内部使用的ssd cache软件,开源出来供大家使用,目前有人编译出rhel6的rpm包,在centos6上可以直接安装使用。
本次初步测试了flashcache
测试环境
sdc为 ssd 硬盘 160G*4 raid 10 用fio测试 4k 写iops为 5433
sdb为 普通sas硬盘 146G*2 raid 1 用fio测试 4k 写iops为 447
初步简单测试结果:
4k 随机写可以达到 5014
4k随机读可以达到45874
flashcache 安装配置方法
安装
复制代码代码如下:
rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
yum install flashcache-utils kmod-flashcache
配置:
用sdc 做sdb的缓存
复制代码代码如下:
flashcache_create -p back cachedev /dev/sdc /dev/sdb
cachedev cachedev, ssd_devname /dev/sdc, disk_devname /dev/sdb cache mode WRITE_BACK
block_size 8, md_block_size 8, cache_size 0
Flashcache metadata will use 1192MB of your 24016MB main memory
可以用3种方式:
复制代码代码如下:
Writethrough - safest, all writes are cached to ssd but also written to disk
immediately. If your ssd has slower write performance than your disk (likely
for early generation SSDs purchased in 2008-2010), this may limit your system
write performance. All disk reads are cached (tunable).
数据同时写到ssd和普通硬盘
复制代码代码如下:
Writearound - again, very safe, writes are not written to ssd but directly to
disk. Disk blocks will only be cached after they are read. All disk reads
are cached (tunable).
数据同时绕过ssd,直接写到普通硬盘
复制代码代码如下:
Writeback - fastest but less safe. Writes only go to the ssd initially, and
based on various policies are written to disk later. All disk reads are
cached (tunable).
数据先写到ssd,随后写到普通硬盘
查看
flashstat
======================================================================================================
Flashstat: a tool for flashcache status per second
Author : NinGoo(seaman.ning@gmail.com)
Version : 0.3
======================================================================================================
SSD Device: /dev/sdc Disk Device: /dev/sdb Cache Mode: WRITE_BACK
Capacity: 303998M Block Size: 4K Meta Block Size: 4096b
Total Blocks: 77823488 Cached Blocks: 9 Cached Percent: 0
Set Numbers: 512 Dirty Blocks: 0 Dirty Percent: 0
cache_all: 1 reclaim_policy: FIFO dirty_thresh_pct: 20
max_clean_ios_set: 2 max_clean_ios_total: 4 skip_seq_thresh: 0K
======================================================================================================
time read/s write/s diskr/s diskw/s ssdr/s ssdw/s uread/s uwrit/s metaw/s clean/s repl/s wrepl/s hit% whit% dwhit%
03-13 14:51:20 0 0 0 0 0 0 0 0 0 0 0 0 0|10 0|0 0|0
复制代码代码如下:
fdisk -l /dev/mapper/cachedev 可以看到一个设备
Disk /dev/mapper/cachedev: 146.8 GB, 146778685440 bytes
255 heads, 63 sectors/track, 17844 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0002da0a
Device Boot Start End Blocks Id System
使用:
可以当一个块设备来使用,划分vg lv
复制代码代码如下:
pvcreate /dev/mapper/cachedev
Physical volume "/dev/mapper/cachedev" successfully created
vgcreate ssdcachetest /dev/mapper/cachedev
Volume group "ssdcachetest" successfully created
lvcreate -L 100G -n ssdcache_test_lv1 ssdcachetest
Logical volume "ssdcache_test_lv1" created
删除
复制代码代码如下:
dmsetup remove cachedev
flashcache_destroy /dev/sdc


猜你喜欢
- Microsoft Word是微软公司的一个文字处理器应用程序。它最初是由Richard Brodie为了运行DOS的IBM计算机而在198
- 近年来,以PPT 为媒介的教学方式得到广泛应用,并在教学过程中发挥着举足轻重的作用。然而这种教学方式的出现也带来了一些问题,这些问题直接影响
- 还在为寻找好用的剪切板工具而发愁吗?小编给大家带来了5个超棒的剪切板工具,使用方便。有需要的可以来了解一下哦!1.Oka Paste for
- 今日,苹果除了发布 iOS 14.1 和 iPadOS 14.1 正式版外,还向开发者推送了 iOS 14.2 和 iPadOS 14.2
- Win10电脑配置更新100不动了?近期有部分用户在更新电脑系统时,出现配置更新到100%就不动了的情况,对于这种情况我们应该如何解决呢?如
- word标尺大家可能不怎么常用,但是在编辑文档时肯定被标尺骚扰过,为了文字对齐,使劲儿地按空格,但总是事与愿违。对,就是标尺在作祟,怎么玩转
- 现在市面上有多款重装工具,用户不需要专业的重装知识,就能自己装好系统。有用户使用石大师重装系统工具装完系统之后一直显示请稍等,这是怎么回事?
- Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件。很多小伙伴不知道其实
- 说到装系统,大家首先想到就是用U盘重装系统,U盘重装系统方便、简单,安装时的也比光盘省时多了,是大家的首选。但是,还是有不少的朋友在使用硬盘
- 电脑设置密码后有没有发现电脑一旦待机后再次打开它同样会提示输入密码,这就有些麻烦了,而出现这样的问题我们能不能快速解决掉呢。今天我们就一起看
- WORD文档中为了使文档更加的有布局性,需要对文档的页边距以及首行缩进之类的进行编辑,那么在word中标尺功能怎么使用?下面小编就为大家介绍
- 这篇文章主要介绍了Win7安装软件“无法访问Windows Installer服务”问题解决方法,本文讲解了两种解决方法,需要的朋友可以参考
- 许多用户将自己的系统更新到OS X Yosemite之后,发现无法登录,这是怎么一回事,该如何解决呢?今天小编给大家带来了OS X Yose
- 近期有部分使用win11系统的小伙伴遇到了找不到gpedit.msc文件的情况,这该如何解决呢?gpedit.msc是介于控制面板和注册表之
- 提醒事项是 iOS 自带的一款实用 App,用户可以通过此应用来创建事项以便提醒自己完成,您还可以将提醒事项分享给其它联系人,让联系人也参与
- Ubuntu怎么重置桌面?Ubuntu18.04如何把桌面恢复到初始状态?下面就给大家分享Ubuntu18.04系统重置电脑桌面的方法。操作
- 如果你有两块同型号(品牌、容量相同)的硬盘,那么把它们组建成带区卷(类似于RAID 0),将会把它们的容量叠加在一块合并成一个分区,并且读写
- 工具栏对我们编辑wps文档是很重要的,如果我们想将其隐藏,应该如何设置呢?下面就让小编告诉你wps工具栏怎样隐藏 的方法。wps工具栏隐藏的
- 我们都知道,现在的电脑一般都带有摄像头,那如果我们要使用电脑的摄像头进行录像该怎么操作呢?其实很简单,有嗨格式录屏大师这样一款录屏软件就可以
- 不少更新了Win10 20H2的用户在更新后发现电脑频繁死机且无响应,遇到这种问题该怎么解决?我们可以通过进入BIOS设置界面来进行设置,接