位置: 编程技术 - 正文

Linux系统设置RAID 10,确保高性能和容错的磁盘输入/输出的图文教程(linux系统设置网络)

编辑:rootadmin

推荐整理分享Linux系统设置RAID 10,确保高性能和容错的磁盘输入/输出的图文教程(linux系统设置网络),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux系统设置中文,linux系统设置环境变量,linux系统设置不休眠,linux系统设置双屏,linux系统设置网络,linux系统设置固定ip,linux系统设置免密登录,linux系统设置环境变量,内容如对您有帮助,希望把文章链接给更多的朋友!

RAID (又叫RAID 1+0或镜像条带)阵列结合了RAID 0和RAID 1两者的功能特性,从而提供了高性能、容错的磁盘输入/输出操作。在RAID 0中,读取/写入操作跨多个驱动器并路执行;在RAID 1中,一模一样的数据写入到两个或多个驱动器上。

在本教程中,我将介绍如何使用5只相同的8 GiB磁盘,构建一个软件RAID 阵列。虽然用来构建RAID 阵列的最大磁盘数量是4只(比如一组条带化的两个镜像),但我们将增添一只额外的备用驱动器,以防其中一个主驱动器出现故障。我们还将介绍一些工具,你以后可以用来分析RAID阵列的性能。

请注意:全面深入地介绍RAID 及其他分区方案(以及不同尺寸的驱动器和文件系统)的所有优缺点不在本文的探讨范围之内。

RAID 阵列是如何工作的?

如果你需要实施一种支持输入/输出密集型操作(比如数据库、电子邮件和网站服务器)的存储解决方案,RAID 是正确的选择。下面会介绍其中原委。不妨先看一看下图。

镜像1和镜像2的条带

设想一下某个文件由上图中的数据块A、B、C、D和E组成。每个RAID 1镜像集(比如镜像1或镜像2)将数据块复制到两个设备中的每一个。由于这种配置,写入性能有所下降,因为每个数据块都要写入两次,每只磁盘各写入一次,而相比从单只读盘读取数据,读取性能依然没有变化。优点在于,这种方案提供了冗余性,因为除非每个镜像中的多只磁盘出现故障,否则可以维持正常的磁盘输入/输出操作。

RAID 0条带的工作原理是,把数据划分成多个数据块,并将数据块A写入到镜像1,同时将数据块B写入到镜像2,依次类推,因而提高了总体的读取和写入性能。另一方面,没有一个镜像含有向主集提交的任何一部分数据的完整信息。这意味着,如果其中一个镜像出现故障,整个RAID 0组件(以及因而RAID 集)就无法操作,数据出现无法恢复的丢失。

构建RAID 阵列

RAID 阵列有两种可能的构建方案:复杂方案(只要一步就能构建),或嵌套方案(构建方法是,先构建两个或多个RAID 1阵列,然后把它们用作RAID 0中的组件设备)。在本教程中,我们将介绍构建复杂的RAID 阵列,原因在于这种阵列让我们可以使用数量为奇数或偶数的磁盘,并且可以作为单一RAID设备来加以管理,而不是介绍嵌套方案(只允许数量为偶数的驱动器,必须作为嵌套设备来加以管理, RAID 1和RAID 0分开来处理)。

假设你已安装了mdadm,该后台程序在你的系统上运行。想了解详细内容,请参阅这篇教程: -l /dev | grep sd[bcdef]的输出应该是这样:

接下来使用下面这个命令,构建一个RAID 阵列:

# mdadm --create --verbose /dev/md0 --level= --raid-devices=4 /dev/sd[bcde]1 --spare-devices=1 /dev/sdf1

该阵列构建完毕后(构建过程应该用不了几分钟),# mdadm --detail /dev/md0的输出应该是这样:

在我们继续下一步之前有几点需要予以说明。

1. Used Dev Space表明了阵列所使用的每个成员设备的容量。

2. Array Size是指阵列的总大小。就RAID 阵列而言,这相当于(N*C)/M,其中N是指活动设备的数量,C是指活动设备的容量,M则指每个镜像中的设备数量。所以在这里,(N*C)/M相当于(4*8GiB)/2 = GiB。

3. Layout指数据布局的具体细节。可能的布局值如下所示。

•n(默认选项):意味着 near拷贝。一个数据块的多个拷贝在不同的设备中处于相似的偏移(offset)。这种布局提供的读取和写入性能与RAID 0阵列的性能相似。

•o表明offset拷贝。不是数据段在条带里面复制,而是整个条带被复制,但由一个设备轮转,那样重复数据块分布在不同的设备上。因而,随后的数据块拷贝在下一个驱动器中,下移一个数据段。想让你的RAID 阵列使用这种布局,将--layout=o2添加到用来构建阵列的命令。

•f 表明far拷贝(偏移全然不同的多个拷贝)。这种布局提供了较好的读取性能,却提供了较差的写入性能。因而,这种方案最适合需要支持的读取操作比写入操作多得多的系统。想让你的RAID 阵列使用这种布局,将--layout=f2添加到用来构建阵列的命令。

--layout选项中n、f和o后面所跟的数字表明了所需的每个数据块的副本数量。默认值是2,但它可以是磁盘中设备数量的2倍数。通过提供数量足够的副本,你就能尽量减少单个驱动器的输入/输出影响。

Linux系统设置RAID 10,确保高性能和容错的磁盘输入/输出的图文教程(linux系统设置网络)

4. Chunk Size,按照Linux RAID维基,数据段大小(chunk size)指写入到设备的最小单位的数据。最优化的数据段大小取决于输入/输出操作的速度以及相关文件的大小。如果写入大文件,只要确保数据段相当大,有望看到较低的开销,而主要存储小文件的阵列有望更加得益于较小的数据段。想为你的RAID 阵列指定某个数据段大小,将--chunk=desired_chunk_size添加到用来构建阵列的命令。

遗憾的是,没有一应俱全的方法可以提升性能。下面是值得考虑的几个指导准则。

•文件系统:总的来说,XFS据说是最好的文件系统,而EXT4仍然是个不错的选择。

•最佳化布局:far布局提升了读取性能,但降低了写入性能。

•副本数量:更多的副本尽量减小了输入/输出影响,但需要更多的磁盘时也增加了成本。

•硬件:固态硬盘比传统的旋转磁盘更有可能显示性能提升的优点(在同一环境下)。

使用DD测试RAID性能

下列基准测试可以用来核查我们的RAID 阵列(/dev/md0)的性能。

1. 写入操作

MB大小的单个文件被写入到设备上:

# dd if=/dev/zero of=/dev/md0 bs=M count=1 oflag=dsync

字节被写入次:

# dd if=/dev/zero of=/dev/md0 bs= count= oflag=dsync

由于dsync标记,dd绕过系统文件缓存,执行同步写入到RAID阵列的操作。这个选项用来消除RAID性能测试期间的缓存效应。

2. 读取操作

KiB*(3.9 GB)从阵列拷贝到/dev/null:

# dd if=/dev/md0 of=/dev/null bs=K count=

使用Iozone测试RAID性能

Iozone( Calc文件。

将Iozone安装到CentOS/RHEL 7上

启用Repoforge软件库,然后执行下列命令:

# yum install iozone

将Iozone安装到Debian 7上

# aptitude install iozone3

下面这个iozone命令将在RAID-阵列中执行所有测试:

# iozone -Ra /dev/md0 -b /tmp/md0.xls

•-R:生成与Excel兼容的报告,并发送到标准输出设备。

•-a:在全自动模式下运行iozone,涵盖所有测试和可能的记录/文件大小。记录大小:4k至M,文件大小:k至M。

•-b /tmp/md0.xls:将测试结果存储在某个指定的文件。

但愿本文有所帮助。如果您对于提升RAID 的性能方面有何想法或高招,欢迎交流。谢谢阅读,希望能帮到大家,请继续关注积木网,我们会努力分享更多优秀的文章。

英文:

Linux系统下使用HAProxy配置HTTP负载均衡系统的方法 如今对基于互联网的应用和服务的要求越来越大,这给广大的IT管理员施加了越来越大的压力。面对突如其来的流量猛增、自生的流量增加或者是内部挑

Linux系统命令中exit与exit的区别 注:exit()就是退出,传入的参数是程序退出时的状态码,0表示正常退出,其他表示非正常退出,一般都用-1或者1,标准C里有EXIT_SUCCESS和EXIT_FAILURE两个宏

Linux系统下 连接器ld链接顺序的总结 原来ld对于链接一系列的库的顺序是很敏感的,不然会报undefinedreferenced的函数符号错误,意思就是未找到函数定义。实际上库是能正确打开的。如果库li

标签: linux系统设置网络

本文链接地址:https://www.jiuchutong.com/biancheng/366961.html 转载请保留说明!

上一篇:Linux系统中如何从命令行嗅探HTTP流量(Linux系统中如何复制虚拟机)

下一篇:Linux系统下使用HAProxy配置HTTP负载均衡系统的方法(linux怎么使用)

  • 评估入账几种情况
  • 小规模纳税人自动升为一般纳税人条件
  • 税款已缴未入库是怎么回事
  • 手工发票可以抵增值税吗
  • 出口未报关收到外汇怎样处理
  • 通用机打发票如何验旧
  • 个人所得税附加扣除中住房贷款利息扣除
  • 自然人税收管理扣缴端申报实训心得
  • 企业为个人购房贷款政策
  • 购买方丢失未认证发票 怎么办
  • 办理外汇账户开户手续
  • 发票报销的条件是什么?
  • 小规模发票跨月冲红怎么做账
  • 高危职业人身意外险
  • 房产契税新政策消息2023
  • 对债务人取得债权是什么意思
  • 固定资产领用原材料要考虑增值税吗?
  • 个人借款无法收回确认坏账账务处理
  • 营改增后如何纳税
  • 收地方工会的专用发票
  • 冲减留抵税额
  • 地税收的其他政府基金计入科目及收益
  • 固定资产进项发票怎么开
  • 处置的固定资产
  • 小规模纳税人别人开了专票怎样处理
  • 买免税产品
  • 返聘人员如何缴纳个人所得税
  • 计提工资时个税是计提上月的吗
  • 会计折算是什么意思
  • 处理废料会计分录大全
  • laravel数据迁移
  • 公司美团提现到个人银行账户会有什么风险吗
  • 企业所得税的税率是多少
  • 小规模企业购入固定资产怎么做账务处理
  • 其他债权投资减值可以转回吗
  • 以前年度损益调整在利润表中怎么填
  • 出口发票的开具时间问题
  • 图像深度算法
  • php多进程处理大数据
  • 不得从销项税额中抵扣的是
  • 企业转让专利权属于什么收入
  • etc充值卡发票可以入账吗
  • vue大型项目架构设计
  • 公司注销退还股票流程
  • python中默认值参数
  • mysql查询表里数据
  • mysql的字符串
  • 短期借款属于经营活动还是筹资活动
  • 其他综合收益影响所得税费用吗
  • 对公账户办理的早晚,对公司有没有影响
  • 吊车租赁有限公司
  • 垃圾处理费如何做账
  • 计量差错引起的原材料盘亏
  • 企业购买国债逆回购怎么操作
  • 费用科目入错了
  • 房地产开发企业会计制度
  • 农业公司土地租赁
  • 弥补以前年度亏损后缴纳所得税
  • 税金及附加没有设置二级科目,有啥影响吗
  • 其他应付款转实收资本走什么程序
  • 固定资产改变用途折旧处理
  • mysql数据库数据迁移
  • windowsxp教程
  • 苹果电脑如何查看WiFi密码
  • mac和iphone互动
  • linux禁止ping的命令
  • Win7笔记本突然wifi功能没了
  • Win7打印机安装
  • win10桌面图标显示错误
  • win8电脑设置
  • node web 框架
  • android PercentRelativeLayout 支持百分比来设置控件的宽高
  • cocos2dx-3.2+lua 常用代码
  • three.js碰撞检测
  • unity shooter
  • sudo提权漏洞
  • 2、BluetoothChat之扫描设备DeviceListActivity.java
  • 广东 电子税局 app
  • 领完发票后 怎么读取
  • 专用发票收款人可以盖私章吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设