在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
猜你喜欢
- 启用Windows防火墙报错0x80070422,解决方法为:方法一 开启Windows Defender服务,方法二 运行Fix it,方
- Excel表格使我们日常办公中最常用到的工具了,功能十分的强大,很多小伙伴会问为什么我在Excel的添加了批注可是就是不显示呢?Excel表
- Word技巧1、档里面的空行如何才能快速将Word里面的空行删除呢?只需将要按住快捷键Ctrl+H打开查询与替换,在查询里面添加两个段落标记
- WPS office 2013个人正式版发布,经过全新的交互设计和界面优化,从2013版本开始将以全新的界面风格面向用户。新界面采用全新的
- 很多小伙伴打开电脑的时候,发现电脑右键没有新建的选项,想建一个文档都不可以。这个是因为注册表里面文件丢失了,今天小编教大家两种解决方法,打开
- Win10比较常用的系统,其中有很多非常智能的功能可以帮助用户更加方便的操作电脑,键盘输入打字是操作电脑的时候经常需要用到的,在win10系
- 微软将在Windows 10系统上正式带来DirectX 12(以下简称DX12),而且DX12只会支持Wndows 10,看来微软为了Wi
- 近期有部分用户反映自己的电脑进入睡眠模式后出现了无法唤醒的情况,这是怎么回事呢?对于这种情况应该如何解决呢?造成这类问题的原因可能是驱动的兼
- Excel表格中怎么查找缺考的学生信息?学校的学生很多,考试成绩都在excel表格中,想知道有多少个学生缺考,该怎么查询呢?下面我们就来看看
- Win8.1系统提示“以太网没有有效的ip配置”怎么办?本文将提供Win8.1系统提示“以太网没有有效的ip配置”的解决方法供大家了解,希望
- 有用户在反映使用浏览器观看视频时,发现没有声音,而使用音乐软件播放音乐却有声音,这是怎么回事呢?其实这除了可能是网络声音是单声道的也可能是因
- Word技巧:Word文档格式怎么更新举例来说,下面的这篇文章中标题1和标题2都使用了“标题2”系统内置格式,采用三号、等线体、黑色字体。如
- win10时间不准怎么办?win10时间不准怎么调整?win10电脑时间不如何解决?有小伙伴反馈win10电脑时间不准,但是又不知道应该如何
- Mac 上设置奇偶页的方法和 Windows 上类似,但略有不同,所谓奇偶页,就是页码在页面上左右交替,而不是清一色地“站在一边”。今天,小
- 继微软在Ignite大会展示Build 10105和Build 10107之后,外媒Neowin已经获得了Build 10108版本的Win
- 有的小伙伴对于使用虚拟机安装Win10镜像系统很感兴趣,但是不清楚如何进行操作?没关系,接下来小编就给大家带来关于使用虚拟机安装Win10系
- Lightning 接口的 iPad 也可以支持 USB 外设虽然 Apple 并没有明确说明支持 USB 外设的 iPad 的型号,但经过
- edge右键菜单太大怎么办?最近有用户反映自己电脑的edge浏览器就是因为它的右键菜单太大,可能会挡住我们的正文内容,看不清楚,那么edge
- 如果通过执行自定义安装来安装 Windows 7,而没有在安装过程中格式化分区,则以前版本的 Windows 中使用的文件存储在 Windo
- 如何在excel表格中快速求差,下面小编为了简答。第一步:打开Excel表格,单击第一排,第三个“单元格”,也就是C1,在C1中输入“=A1