IT技术博客大学习 共学习 共进步

Ubuntu工作机使用FlashCache技术加速

MySQL支持 2012-12-23 23:31:47 浏览 6,002 次

   Flashcache是facebook的一个开源项目,用于数据库加速中.大致结构,在传统磁盘前面放置一个ssd装置,充当缓存,把热的数据保持在缓存中,写的过程也是在先写ssd然后由ssd同步到传统磁盘.真正的数据最终还是保持在传统磁盘中.这样ssd杯掉也不用担心数据丢失.同时又可以有大容量,高性能的体验.

   现在ssd也挺便宜的,新一点的笔记本里都有ssd磁盘.那么这里简介绍一下,怎么用ssd加速home及其它分区,引导这块不涉及.缺点: ssd只是用来做cache不能存入实质的东西.

   前提:

   ssd有空余的分区或是有个ssd盘不使用.操作系统是ubuntu或是其它linux

   大致步骤:

   1. 安装git

$sudo apt-get install git-core

   2. 下载flashcache源码:

#git clone https://github.com/facebook/flashcache.git

   3. 进入目录编辑

#make
#make install

   //如果失败看提示,一般是内核源码没安装的原因

   4. 加载flashcache模块

#modprobe flashcache

   确定加载完成:

#dmesg |tail
......flashcache: flashcache-1.0 initialized

   表示成功

   另外还可以:

lsmod |grep flashcache

   看到相应的信息即成功.

   为了开机能加载这个模块,需要这个模块名写入/etc/modules中

#echo "flashcache" >> /etc/modules

   好这里完成了基本环境的安装.下面以/home分区加速设制为,其它一样.

   我的ssd分了/dev/sda1 用于/ , /dev/sda2用于了swap 还有/dev/sda3 ,/dev/sda4分区出没使用.我在传统磁盘里划出来100G /dev/sdb1用于/home目前还没挂载.

   5. 格式化/dev/sdb1 如果原来/home节点已经划分有分区, 只用umount掉即可,然后在fstab去掉自动挂载(flashcache目前不能自动挂载)

   #mkfs.ext4 /dev/sdb1

   把原来/home的数据复制或是移到动/dev/sdb1上.

   #mount /dev/sdb1 /mnt

   #cp -r /home/* /mnt

   #umount /mnt

   需在注意cp过去后权限是不是和原来的一样.

   6. 初始化flashcache

   #ls -la /dev/disk/by-uuid/

   找到/dev/sdb1 对应的uuid

#flashcache_create -v -p back home_flashcache /dev/sda3 /dev/disk/by-uuid/4b75b04e-5930-4042-89b8-40894067dac6

   这样即创建完毕.

   7. 挂载那个flash设备

#mount /dev/mapper/home_flashcache /home

   即可以体验flashcache加载的东西了.

   8. 收尾工作,开机自动挂载flashcache加速的设备,利用rc.local完成

   在rc.local里添加:

flashcache_load /dev/sda3
mount /dev/mapper/home_flashcache /home

   这样即可开始挂载/home节点了.

   如果不想使用flashcache技术,可以通过如下命令删除该功能:

   umount /home

   dmsetup remove cachedev

   flashcache_destory

   mount 相应的节点即可

   说明: 以# 开头的操作表示以root权限进行的操作,以$开头的表始以普通用做的操作.

建议继续学习

  1. php缓存与加速分析与汇总 (阅读 7,720)
  2. [调优] Squid 不同版本的性能对比 (阅读 5,461)
  3. 加速WEB访问:使用DNSmasq与squid代理并过滤广告 (阅读 4,421)
  4. 加速PHP的ECHO (阅读 3,800)
  5. 使用fastcgi_cache加速你的Nginx网站 (阅读 3,760)
  6. 深入浅出Flashcache(一) (阅读 3,201)
  7. 深入浅出Flashcache(三) (阅读 2,880)
  8. 深入浅出Flashcache(五) (阅读 2,840)
  9. 深入浅出Flashcache(二) (阅读 2,740)
  10. 深入浅出Flashcache(四) (阅读 2,600)