文档章节

浅谈linux性能调优之五:调优软raid

我爱吃葱花
 我爱吃葱花
发布于 2014/08/11 15:26
字数 806
阅读 44
收藏 1
点赞 0
评论 0

    存储中的一个重要角色,RAID独立冗余磁盘阵列,从分类上将有两种:基于raid卡的硬raid(硬件实现,速度高,适用于大型应用),基于系统的软raid(一般包含于内核之中,性能不如硬raid,但是可优化,小型服务器)
    特点:数据完整性,防止故障,容量突破,性能提升
    不了解raid相关知识的可以看看这个:http://blog.163.com/sjt_linux/blog/static/199310319201251863948525/
    下面我快速的介绍一下:

RAID 0:
  没校验,数据分段写入磁盘,吞吐量增大,不容错,100%使用,至少2块
  test : mdadm --create /dev/md0 --level=0 --raid-devices=2 --chunk=64 /dev/sd{a,b}1
         mke2fs -j -b 4096 -E stribe=16 /dev/md0
  notice: --chunk 是在创建时指定,stribe是在格式时指定,stribe = chunk / stribe

RAID 1:
  镜像,容错,读性能,至少2块,2的倍数,利用率(100/n)%
  test : mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda4,5

RAID 5:
  分布式奇偶校验条带化,容错,性能,若一个磁盘损坏,再插入一个新磁盘时,会降级(需要重新计算校验值)
  至少3块,支持热备盘,利用率100*(1-1/n)%
  test : mdadm --create /dev/md0 --level=5 --raid-device=3 /dev/sd{a,b,c}2
 

浅谈linux性能调优之五:调优软raid - 了了 - 了了的博客

 
  RAID5中数据经常更新时,开销较大

RAID 6:
  两份校验,可以同时坏两块盘,至少4块,利用率100*(1-2/n)
  test : mdadm --create /dev/md0 --level=6 --raid-device=4 /dev/sd{a,b,c,d}1

RAID 10:
  先作raid1,再作raid0
  至少4块
  mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/sd{a,b,c,d}1
  mdadm -C /dev/md0 -l10 -n4 /dev/sdb{5,6,7,8}

邮件工作:
  /etc/mdadm.conf
    MAILADDR root@example.com
    MAILFROM root@node1.example.com
    PROGRAM /usr/bin/myscripts
  测试:mdadm -Fslt

    总结:从各自的特点可以看出:
            raid0容量大,读写性能高,但是安全性不好。
            raid1安全性好,利用率低
            raid5分布式奇偶校验,安全性好,读写性能较好,但是若数据修改频繁,建议不使用,可以看看上面的图
            raid6与raid5类似,支持同时坏两块盘
            raid10集成raid1,raid0。比起raid5,6修改数据时开销小
        你若使用raid,raid级别的选择便是很重要的!


    优化建议:
        1.若你使用两个或两个以上raid,建议配置“软raid的热迁移”,首先节省了冗余盘的成本,再者结合邮件通知机制做好数据保护
        2.对于raid0,5,6 存在两个特别重要的概念:(chunk size),(Stripe size)
            chunk size:
                  RAID中每个成员盘一次写入的数据量,大于chunk size才到下一个盘读写
            Stripe size = (chunk size)/(filesystem blocksize)
                  表示:在一个盘中一次性写入量
            chunk size = page size(4K) * N
            chunk size = avgrq-sz * 512 / 1024 / disks(iostat -x /dev/sda)
            Stripe size = (chunk size)/(filesystem blocksize)
                注意:chunk size   创建时使用   --chunk = 8
                      stripe size  格式化时使用 -E stripe = 2
        3.写位图:只针对RAID1
              在操作失败时,可以在失败的基础上基础操作,而并非从头开始(例如我们复制一个大文件)
                  --write-bebind 优先读
                  --write-mostly 优先写
        4.具体还可以在/sys/block/mdX/md中调节


本文转载自:http://my.oschina.net/sharelinux/blog/144125

共有 人打赏支持
我爱吃葱花
粉丝 28
博文 125
码字总数 34663
作品 0
海淀
数据库管理员
浅谈linux性能调优之五:调优软raid

存储中的一个重要角色,RAID独立冗余磁盘阵列,从分类上将有两种:基于raid卡的硬raid(硬件实现,速度高,适用于大型应用),基于系统的软raid(一般包含于内核之中,性能不如硬raid,但是可优化...

OscerSong
2013/07/11
0
6
浅谈linux性能调优-------初识

今天在网上看到了Oscersong对于linux性能调优,颇有感触。 以前总知道/O调有,看完他的博客之后有这么多的方法,对于linux进行调优。 Oscersong是我的大神,也是我追有的目标 所以,便将有了...

我爱吃葱花
2014/08/11
0
0
浅谈linux性能调优之一:磁盘分区策略

对于服务器而言,不管是windows系统,linux系统,分区情况影响系统性能.磁盘分区之后再格式化成某一格式的系统文件,最后在存储用户或系统数据,数据所在分区容易读到数据则响应速度越快.当然也...

OscerSong
2013/07/07
0
2
性能调优概述

大纲: 一、概述 二、什么是性能调优?(what) 三、为什么需要性能调优?(why) 四、什么时候需要性能调优?(when) 五、什么地方需要性能调优?(where) 六、什么人来进行性能调优?(who) 七、怎...

陈明乾
2014/07/14
0
0
浅谈linux性能调优之十二:红帽优化策略Tuned

红帽推出的一个动态调优方案,用户可以在不同的时间段内采用不同的调优方案。由于以服务进程形式存在,就可以很方便的和crontab结合!Tuned 是监控并收集各个系统组件用量数据的守护进程,并...

OscerSong
2013/07/19
0
0
系统运维工程师面试题及参考答案

1. raid0 raid1 raid5 原理与区别 raid0至少2块硬盘。吞吐量大 性能好 同时读写,但损坏一个就完蛋 raid1至少2块硬盘。相当于 一个镜像,一个存储。安全性比较高。但是性能比0弱 raid5至少3...

xinsz08
2017/04/18
0
0
HDNL性能调优(4)故障点分析与工具准备

为深入调查系统运行状况,我们从CPU、内存、磁盘I/O等方面对各服务器的运行情况进行了指标收集和分析,具体情况如下: 为保证调优结果必须体现在迭代测试的过程中,我们对故障点的诊断采用了...

晨曦之光
2012/03/09
0
0
linux系统调优-存储(内存、硬盘)

首先一个基本概念: 存储系统存储速度的快->慢: 内存->闪存->磁盘 因为内存的价格限制以及操作系统支持的限制,我们只能从磁盘这块来看,可见磁盘正是存储系统的最大瓶颈所在。 **下面具体提...

月黑风高杀人夜
2015/08/21
0
0
盘点linux系统中的12条性能调优命令。

导读 性能调优一直是运维工程师最重要的工作之一,如果您所在的生产环境中遇到了系统响应速度慢,硬盘IO吞吐量异常,数据处理速度低于预期值的情况,又或者如CPU、内存、硬盘、网络等系统资源...

linuxprobe16
2016/12/17
4
0
linux+Oracle集群课程全面升级

作为国内最早从事开源架构师级课程研发的公司,从2006年10月开始,荣新稳步提升,将互联网运维作为主导就业方向,并将Linux集群架构课程发展成为国内最顶级、覆盖技术最全面的Linux课程,作为...

张琦
06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

gRPC学习笔记

gRPC编程流程 1. proto文件定义 proto文件用于定义需要通过gRPC生成的接口,可以理解为接口定义文档 2. 通过构建工具生成服务基类代码-Maven或Gradle 3. 服务端开发 服务端实现类须实现通过构...

OSC_fly
20分钟前
0
0
Docker Mac (三) Dockerfile 及命令

Dockerfile 最近学习docker的时候,遇到一件怪事,关于docker镜像可能会被破坏,还不知道它会有此措施 所以需要了解构建Dockerfile的正确方法 Dockerfile是由一系列命令和参数构成的脚本,这些命...

___大侠
47分钟前
0
0
NetCat Tutorials

Hacking with Netcat part 1: The Basics Hacking with Netcat part 2: Bind and reverse shells Hacking with Netcat part 3: Advanced Techniques 10 Introduction to Netcat - pdf NetCat......

zungyiu
47分钟前
0
0
Android Studio+NDK+Cmake 移植FFmpeg-4.0.2命令行工具

一、编译 参考大神的帖子,亲测一次编译成功:https://blog.csdn.net/bobcat_kay/article/details/80889398 鉴于以前查文档的经验,这里附上编写例子的时间:2018年7月22日 我用的是ubantu,...

她叫我小渝
47分钟前
0
0
mysql创建数据库

登录MYSQL mysql -u root -p 脚本创建数据库WeChat,并制定默认的字符集是utf8mb4。 CREATE DATABASE Wechat DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci; 授权 grant all......

niithub
今天
0
0
svn: Unable to connect to a repository URL 的解决方案

错误图示: 解决办法:清除本地保存的授权信息; 1:右键点击本地文件夹,选择设置; TortoiseSVN -> Settings 2:在弹出的对话框中选择 Saved Data, 右侧选择:授权地方清理所有。 然后点确...

宁哥实战课堂
今天
1
0
sleep与wait的区别

Thread.sleep(XXX)方法消耗CPU吗? 这个知识点是我之前认识一直有错误的一个知识点,在我以前的认识里面,我一直认为Thread.sleep(1000)的这一秒钟的时间内,线程的休眠是一直占用着CPU的时间...

码代码的小司机
今天
1
0
20位活跃在Github上的国内技术大牛 leij 何小鹏 亚信

本文列举了20位在Github上非常活跃的国内大牛,看看其中是不是很多熟悉的面孔? 1. lifesinger(玉伯) Github主页: https://github.com/lifesinger 微博:@ 玉伯也叫射雕 玉伯(王保平),...

海博1600
今天
1
0
Mybatis收集配置

一、Mybatis取Clob数据 1、Mapper.xml配置 <resultMap type="com.test.User" id="user"> <result column="id" property="id"/> <result column="json_data" property="jsonData" ......

星痕2018
今天
1
0
centos7设置以多用户模式启动

1、旧版本linux系统修改inittab文件,在新版本执行vi /etc/inittab 会有以下提示 # inittab is no longer used when using systemd. # # ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON......

haha360
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部