最近因为工作的原因接触到bcache缓存技术的一些皮毛,做个笔记备忘。

bcache是自3.10开始集成到Linux Kernel中去,后面更新了几个版本增加了一些功能。

另一个备用技术选项为facebook开创的flashcache。但是作者在github表示,基本不敢用。

This project is not actively maintained. Proceed at your own risk!

除了在Linux 3.10内核中提供支持以外,还有一个bcache-tools工具,用户可以定义缓存及需加速的设备。一旦BCache设备被格式化后准备使用了,该工具就会通过Sysfs文件向内核注册。不同于平时接触的工具有命令操作,bcache的操作都是往/sys/fs/文件传入配置

安装

Debian wheezy升到最新版,确认是3.16的内核,安装bcache-tools后,updateramfs后重启系统。此时如果还没有bcache设备,lsmod是查看不到bcache加载的,但是模块已能正常使用

#apt-get install initramfs-tools
#dpkg -i bcache-tools_1.0.8-2_amd64.deb
#update-initramfs -u

两种创建方法

  1. backing 和 cache device一起

    #make-bcache -B /dev/sdb /dev/sdc -C /dev/sda3
  2. 分别初始化(register)backing device和cache device(如果当前没有cache设备,但是后续又想添加的话建议使用这种方式)。创建了backing device之后就可以格式化、挂载使用了

    #make-bcache -B /dev/sdb
    #make-bcache -C /dev/sda3

    使用这种方法的话,在后续需要添加手动将backing device attach到cache device才能最终使用到缓存。不然backing device就相当于运行于passthrough mode

我们可以通过/sys/fs或者/sys/block来管理bcache设备

/sys/block/bcache<N>/bcache
/sys/fs//bcache/<cset-uuid>/

初始化完两种设备后,需要attch才能真正启用bcache缓存

echo <CSET-UUID> > /sys/block/bcache0/bcache/attach

即使cache设备掉盘,可设置强制运行后端设备(注意使用writeback模式可能导致data loss):

echo 1 > /sys/block/sdb/bcache/running

转载于:https://blog.51cto.com/hzc989/1909833

关于bcache的一些事情相关推荐

  1. [转]Linux块设备加速缓存bcache和dm-cache:使用SSD来加速服务器

    dm-cache 与 bcache 在 LSFMM 2013 峰会上,Mike Snitzer, Kent Overstreet, Alasdair Kergon, 和 Darrick Wong 共同 ...

  2. dm-cache 与 bcache

    在 LSFMM 2013 峰会上,Mike Snitzer, Kent Overstreet, Alasdair Kergon, 和 Darrick Wong 共同主持了一个讨论,内容是关于两个彼此独 ...

  3. linux控制cache使用值e,[轉]Linux塊設備加速緩存bcache和dm-cache:使用SSD來加速服務器...

    在 LSFMM 2013 峰會上,Mike Snitzer, Kent Overstreet, Alasdair Kergon, 和 Darrick Wong 共同主持了一個討論,內容是關於兩個彼此獨 ...

  4. 转 Linux块设备加速缓存bcache和dm-cache 使用SSD来加速服务器

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! dm-c ...

  5. 人要懂得放下已经发生,却又无法改变的事情

    在生活中,有些事情如果注定是无法改变的,那么就尽可能快的释怀,要坦然接受,坚强的走出来.毕竟很多事情,不会因为你的悲伤,结果就会改变. 不如,果断看开放下,然后收拾心情重新开展好的事情发展.未来的路还 ...

  6. 搞事情 -- python之线程

    简介 操作系统线程理论 线程概念的引入背景 线程的特点 进程和线程的关系 使用线程的实际场景 用户级线程和内核级线程(了解) 线程和python 理论知识 线程的创建Threading.Thread类 ...

  7. 30+程序员,平时都忙些什么事情?平时都想些什么?以后有啥计划?

    很多人都说,30岁以后了,写程序还有前途嘛?我有时候也迷茫,但是迷茫过后,总会给自己寻找方向,每个人都需要有个信念.没有信念,活着就没意思,无聊,觉得没奔头了. 废话少说,我来说说,我平时工作都忙些什 ...

  8. python获取登录按钮_python爬虫24 | 搞事情了,用 Appium 爬取你的微信朋友圈。

    昨天小帅b看到一些事情不顺眼 有人偷换概念 忍不住就写了一篇反讽 996 的 看不下去了,我支持996,年轻人就该996! 没想到有些人看不懂 这就算了 还来骂我 早些时候关注我的小伙伴应该知道我第一 ...

  9. bcache状态和配置文件详细介绍(翻译自官网)

    参考文献 http://www.cnblogs.com/zimufeng/p/6640439.html 有参考价值 https://www.kernel.org/doc/Documentation/b ...

最新文章

  1. mysql数据库比对视频教程_MySQL数据库全学习实战视频教程(27讲 )
  2. cnblogs不愧为cnblogs
  3. html 猫链接怎么写,html超链接下划线应该加入吗?
  4. php数组保存txt,php将数组存储为文本文件方法汇总,_PHP教程
  5. NHibernate介绍
  6. linux-x86_64 error,ORA-09817/Linux-x86_64 Error: 28: No space left on device/ORA-01075
  7. Java开发必会Git分布式版本控制系统实战篇
  8. 使用jquery.cookie操作Cookie实例
  9. 卷积定理及常见傅里叶变换表
  10. 反向传播(Backpropagation)算法详解
  11. python绘制折线图显示点数据_Python_散点图与折线图绘制
  12. 攻防世界-misc高手进阶篇-2017_Dating_in_Singapore
  13. 身份证号码正则表达式及校验方法
  14. pathrewrite不生效_Vue使用Proxy代理后仍无法生效的解决
  15. 试用期没过,因在公司上了 1024 网站...
  16. 首都师范 博弈论 6 5 3无限次重复博弈中达成合作的条件
  17. 记录机器学习练习中不懂的函数
  18. SpringMVC拦截器
  19. java 静态区在jvm哪里,JDKJREJVM这三者的联系与区别///java跨平台///堆栈常量区静态区...
  20. 计算机应用的多级列表是什么,Word2019中应用多级列表并更改级别的方法

热门文章

  1. Authentication 方案优化探索(JWT, Session, Refresh Token, etc.)
  2. windows下常查看端口占用方法总结
  3. 查找点链表中倒数第k个数
  4. DPM2012恢复单个Exchange2010用户邮箱
  5. 对 makefile 中 .PRECIOUS 的学习
  6. EVEREST Corporate Edition 使用SQL保存数据的简易方法
  7. NetDevOps — PyEZ
  8. SmartNIC/DPU — TSO、GSO、LRO、GRO 卸载技术
  9. 互联网协议 — IPv4 互联网协议第 4 版
  10. git报错:Pull is not possible because you have unmerged files解决方法