文档章节

enhanceio的安装与使用

加油2018
 加油2018
发布于 2014/11/20 09:41
字数 408
阅读 1168
收藏 1

enhanceio是在flashcache的基础上stec-inc推出的改进版。昨天试用了一下,配置简单,易于操作,可以在硬盘挂载的情况下动态添加和删除enhanceio设备,一旦创建就是persistent的。其性能也非常出众。可惜被收购后,此项目已停止了更新和维护。

1. 安装

git clone https://github.com/STEC-inc/EnhanceIO
cd EnhanceIO
sudo cp CLI/eio_cli /sbin/
chmod 700 CLI/eio_cli
sudo cp ./CLI/eio_cli.8 /usr/share/man/man8/
cd Driver/enhanceio/
sudo apt-get install build-essential dkms
make 
sudo make install

cd Driver
sudo cp -r enhanceio /usr/src
sudo mv /usr/src/enhanceio /usr/src/enhanceio-0.1
cd /usr/src/enhanceio-0.1

sudo vim dkms.conf
PACKAGE_VERSION="0.1"

sudo dkms add -m enhanceio -v 0.1
sudo dkms build -m enhanceio -v 0.1
sudo dkms install -m enhanceio -v 0.1
2. 创建
sudo eio_cli create -d /dev/sdb -s /dev/sdc4 -m wb -c enhanceio_test
                           │           │        │            └cache name
                           │           │        └cache style(wb=writeback, wt=writethrough, ro=readonly)
                           │           └Caching Device (SSD)
                           └Source Device (HDD)
$ cat /proc/enhanceio/my_first_enhanceio/stats
然后利用eio_cli info就可以查看创建的缓存设备了。

3. 删除

先设置为只读,然后进行删除

# eio_cli edit -c my_first_enhanceio -m ro
$ grep nr_dirty /proc/enhanceio/enchanceio_test/stats
# eio_cli delete -c my_first_enhanceio

4. 参数设置    

可以利用sysctl -w或者编辑/etc/sysctl.conf进行配置

dev.enhanceio.ecache.autoclean_threshold = 1
dev.enhanceio.ecache.control = 0
dev.enhanceio.ecache.dirty_high_threshold = 100
dev.enhanceio.ecache.dirty_low_threshold = 90
dev.enhanceio.ecache.dirty_set_high_threshold = 100
dev.enhanceio.ecache.dirty_set_low_threshold = 90
dev.enhanceio.ecache.do_clean = 0
dev.enhanceio.ecache.mem_limit_pct = 90
dev.enhanceio.ecache.time_based_clean_interval = 1
dev.enhanceio.ecache.zero_stats = 0

可以根据需要进行调整。

5. 测试结果

经过初步测试,enhanceio的wb模式在极端情况下会出现丢失数据的情况。而flashcache的wb模式则不会。所以如果是读多写少的话,采用enhanceio的wt模式效果很好。写多的情况最好还是用flashcache的wb模式。

参考:

http://www.thomas-krenn.com/de/wiki/EnhanceIO

https://wiki.archlinux.org/index.php/EnhanceIO

© 著作权归作者所有

共有 人打赏支持
加油2018
粉丝 150
博文 276
码字总数 243077
作品 0
海淀
架构师
私信 提问
加载中

评论(3)

写出好代码er
写出好代码er

引用来自“BookShu”的评论

enhanceio的wb模式在极端情况下会出现丢失数据的情况。请问,这个极端模式详细指什么?
同问这个问题,楼主的测试方法是什么
BookShu
BookShu
enhanceio的wb模式在极端情况下会出现丢失数据的情况。请问,这个极端模式详细指什么?
BookShu
BookShu
enhanceio的wb模式在极端情况下会出现丢失数据的情况。请问,这个极端模式详细指什么?
使用 LVM 新的缓存特性

如果你有一台带有慢速硬盘和快速SSD的电脑,你想使用SSD作为快速持久缓存用来提升访问硬盘的速度。然而直到最近,你有三个选择:bcache和dm-cache都upstream,或者Flashcache/EnhanceIO。Fla...

oschina
2014/05/24
3.3K
0
flashcache的实现与用法

工作需要,看了些flashcache的内容,记录如下: 实现 flashcache,是facebook技术团队开发的新开源项目,主要目的是用SSD硬盘来缓存数据以加速MySQL的一个内核模块。可以看到,它最初是用来做...

加油2018
2014/08/18
0
1
VS Code 安装与使用,Python 顶级 IDE 编程指南!

介绍 Visual Studio Code (简称 VS Code / VSC) 是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比...

Python新世界
07/14
0
0
四、npm 包管理工具

原文来自:https://dkvirus.gitbooks.io/-npm/content/di-si-zhang-npm-bao-guan-li-gong-ju.html 4.1 分清全局安装与本地安装 刚学习 npm 的时候,官方教程在介绍 -g 参数时是这么描述的:“...

嘘别吵_4d1c
2017/12/09
0
0
如何在 Ubuntu 上安装 pip

是一个命令行工具,允许你安装 Python 编写的软件包。 学习如何在 Ubuntu 上安装 以及如何使用它来安装 Python 应用程序。 有许多方法可以在 Ubuntu 上安装软件。 你可以从软件中心安装应用程...

作者: Abhishek Prakash
10/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Sping之项目中pofile的应用

工程中,我们必须要面对的一件事就是, 开发环境中使用的数据库连接地址等与生产上的不同, 如果上线, 那么我们是否还要手动修改这些地址么, 这样做有很多弊端, 不方便, 这时我们就可以使用spr...

克虏伯
3分钟前
0
0
Linux中安装MySQL

Linux中安装MySQL 一、准备工作 此处准备的操作系统位CentOS 7。 MySQL安装包: MySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm MySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm 将准备......

星汉
8分钟前
0
0
深入理解Hadoop之HDFS架构

Hadoop分布式文件系统(HDFS)是一种分布式文件系统。它与现有的分布式文件系统有许多相似之处。但是,与其他分布式文件系统的差异是值得我们注意的: HDFS具有高度容错能力,旨在部署在低成...

架构师springboot
12分钟前
0
0
MaxCompute表设计最佳实践

MaxCompute表设计最佳实践 产生大量小文件的操作 MaxCompute表的小文件会影响存储和计算性能,因此我们先介绍下什么样的操作会产生大量小文件,从 而在做表设计的时候考虑避开此类操作。 使用...

阿里云官方博客
13分钟前
0
0
云上领跑,快人一步:华为云抢先发布Redis5.0

12月17日,华为云在DCS2.0的基础上,快人一步,抢先推出了新的Redis 5.0产品,这是一个崭新的突破。目前国内在缓存领域的发展普遍停留在Redis4.0阶段,华为云率先发布了Redis5.0,全面展现了...

中间件小哥
13分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部