玩转OurBMC第十三期:服务器磁盘阵列配置方法
【栏目介绍:“玩转OurBMC”是OurBMC社区开创的知识分享类栏目,主要聚焦于社区和BMC全栈技术相关基础知识的分享,全方位涵盖了从理论原理到实践操作的知识传递。OurBMC社区将通过“玩转OurBMC”栏目,帮助开发者们深入了解到社区文化、理念及特色,增进开发者对BMC全栈技术的理解。
欢迎各位关注“玩转OurBMC”栏目,共同探索OurBMC社区的精彩世界。同时,我们诚挚地邀请各位开发者向“玩转OurBMC”栏目投稿,共同学习进步,将栏目打造成为汇聚智慧、激发创意的知识园地。】
在BMC对服务器的监控与管理过程中,为了实现对服务器的更优化管理,往往需要与其它工具紧密协同工作,以增强监控的全面性、提高管理的灵活性,并促进问题的快速解决。本期内容,我们将对服务器磁盘阵列配置方法进行介绍。通过对RAID概念结构、配置管理方法等内容的介绍,帮助读者全面理解服务器磁盘阵列(RAID)的配置方法,并能够在实际工作中灵活应用RAID技术,以提升服务器的存储性能和数据安全性。
RAID介绍
冗余磁盘阵列(RAID)技术由加州大学伯克利分校提出,最初的研制目的是为了组合小的廉价磁盘来代替大的昂贵磁盘,以降低大批量数据存储的费用,同时也希望采用冗余信息的方式,使得磁盘失效时不会使对数据的访问受损失,从而开发出一定水平的数据保护技术。
RAID的基本结构特征就是组合,捆绑2个以上的物理磁盘成组,形成一个单独的逻辑盘。在利用多个磁盘驱动器时,组合能够提供比单个物理磁盘驱动器更好的性能。
磁盘阵列卡用于配置管理 RAID。配置RAID卡的命令有很多,包括MegaCli、MegaCli64、storcli、storcli64、sas2ircu、sas3ircu、hpssacli、hpacucli。其中storcli命令最常用,已经基本代替了Megacli,因此本文以storcli64命令为例,描述配置RAID卡的操作方法。
Storcli64安装与使用
Storcli64是一款用于管理和配置LSI/Avago/Broadcom RAID控制器的命令行工具。可通过http://www.avagotech.com/support/download-search搜索下载对应系统的Storcli64安装包。下载完成之后上传至服务器任意目录安装,如下图所示:
安装完成后,可以使用./storcli64 -v指令查看版本信息,如下所示:
StorCLI64提供了丰富的命令选项来管理和配置RAID控制器。以下是一些常用命令及其详解:
1. 查看控制器信息:
- ./storcli64 show:显示所有控制器的信息。
- ./storcli64 /c{x} show:显示指定控制器(如控制器0)的详细信息。如下图所示,我们可以看到有4个物理设备,以及enclosure id号为252。值得注意的是,这些硬盘大多是附在enclosure内部,而不是直接连接到controller(控制器)上。这种设计允许硬盘通过enclosure与控制器进行通信和数据传输。
2. 查看虚拟磁盘(VD)信息:
./storcli64 /c{x} /vall show:显示指定控制器下的所有虚拟磁盘的详细信息。
3. 查看逻辑驱动器(LD)信息:
./storcli64 /c{x} /v{y} /dall show:显示指定控制器和虚拟磁盘下的所有逻辑驱动器的信息。
4. 查看物理硬盘信息:
./storcli64 /c{x} /eall /sall show:显示指定控制器下的所有物理硬盘的详细信息。
5. 创建虚拟磁盘(VD):
./storcli64 /c{x} add vd type=raid{y} size= drives=:在指定控制器上创建一个新的虚拟磁盘,并指定RAID级别、大小和物理硬盘列表。
6. 删除虚拟磁盘(VD):
./storcli64 /c{x} /v{y} delete:删除指定控制器和虚拟磁盘。
7. 修改虚拟磁盘(VD)属性:
./storcli64 /c{x} /v{y} modify =:修改指定控制器和虚拟磁盘的属性。
8. 查看RAID控制器版本信息:
./storcli64 /c{x} show ctrlversion:显示指定控制器的版本信息。
9. 查看RAID控制器电池信息:
./storcli64 /c{x} show battery:显示指定控制器上电池的状态和健康状况。
10. 设置启动项:
./storcli64 /c{x} /v{y} set bootdrive=on:设置指定控制器和虚拟磁盘为启动项。
11. 查看控制器事件日志:
./storcli64 /c{x} show events:显示指定控制器的事件日志。
12. 导出控制器配置到文件:
./storcli64 /c{x} /call export filename=:将指定控制器的所有配置信息导出到指定文件中。
RAID组配置
RAID组配置涉及将多个物理硬盘组合成一个逻辑单元,以提高数据存储的性能、可靠性和容错能力。命令格式如下图:
参数解释如下表所示:
1. 配置RAID0
RAID0称为条带化存储,将数据分段存储在各个磁盘中,读写均可以并行处理,因此读写速率为单个磁盘的N倍,没有冗余功能,任何一个磁盘损坏就会导致数据不可用。结构如下图所示:
- RAID0配置方法
storcli64 /c0 add vd r0 size=1000 name=test drives=252:4-7
执行效果如下:
配置成功后,可以在dev/目录下看到配置好的虚拟磁盘:
2. 配置RAID1
RADI1是镜像存储,没有数据校验,数据被同等的写入到2个或者多个磁盘中,写入速度相对慢,但是读取速度比较快。结构如下图:
- RAID1配置方法
storcli64 /c0 add vd r1 size=1000 name=test1 drives=252:5-6
执行效果如下图:
3. 配置RAID5
至少需要三块硬盘组成,将数据分割成多个条带,并附加一个校验数据。既具有数据并行存储的能力,也具有防止某块硬盘坏掉数据丢失的能力,因此,RAID 5在实际应用中比较常用,并且大多数硬盘都支持这一RAID级别。其结构示意图如下:
一般C1、C2这些为C1=1异或2得到的,无论那块硬盘丢失,我们都可以还原数据。举个例子,如果1号硬盘坏掉了,我们仍然可以通过对2号硬盘和校验数据C1进行异或运算来还原1号硬盘上的数据(因为数据异或两次会还原到原始值)。
- RAID5配置方法
storcli64 /c0 add vd r5 size=1000 name=test2 drives=252:4-6
执行效果如下图:
4. 配置RAID10
RAID10其实就是RAID1和RAID0的组合,该种磁盘阵列至少需要4块硬盘。结构如下图:
- RAID10配置方法
storcli64 /c0 add vd type=raid10 size=2gb,3gb,4gb names=tmp1,tmp2,tmp3 drives=252:4-5,6,7 pdperarray=2
在第一个控制器上创建RAID10,3个VD,大小分别为2、3、4GB,名字为tmp1、tmp2、tmp3,VD使用磁盘驱动器ID为252的enclosure中4-5,6,7槽位的磁盘,每个array有2个物理磁盘。
执行效果如下图:
正确的RAID配置对于提升服务器存储性能、确保数据安全性以及实现高效的数据管理至关重要。通过精心选择适合的RAID级别、合理搭配硬盘资源、精确配置RAID参数,并严格遵循配置流程,我们可以构建出既稳定又高效的存储系统。同时,定期的数据备份和RAID配置的持续监控也是维护存储系统健康、预防潜在风险不可或缺的一环。随着技术的不断进步,RAID技术也在不断演进,为用户提供了更多样化、更灵活的配置选择。因此,我们期待在未来能够继续探索RAID技术的更多可能性,以更好地满足不断增长的存储需求和数据保护挑战。
欢迎大家关注OurBMC社区,了解更多BMC技术干货。
OurBMC社区官方网站:
https://www.ourbmc.cn/

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
GreatSQL内存消耗异常排查攻略:从系统到应用层面的深入分析
GreatSQL内存消耗异常排查攻略:从系统到应用层面的深入分析 当 GreatSQL 数据库处于高并发高负载时,可能会发现 mysqld 进程的内存消耗远远超出设置的 innodb_buffer_pool_size 时,有时候甚至会高达甚至超过系统内存的90%,遇到这种问题时,心里经常会发慌,担心下一秒内存就会爆了发生 OOM,或者数据库hang死不响应。 本文和大家试着使用 GreatSQL 中的 sys schema 和 performance_schema 进行深入分析,找出内存消耗大户的源头,并尽可能解决问题。 下面是详细的排查方法和步骤。 1. 确认实际内存消耗 1.1 操作系统层面分析 先检查确认 mysqld 进程的内存具体消耗占用情况,做到心里有数,避免真的下一秒就发生 OOM 的问题: $ free -ht free -ht total used free shared buff/cache available Mem: 30Gi 28Gi 240Mi 33Mi 2.0Gi 1.7Gi Swap: 0B 0B 0B Total: 30Gi 28Gi 240Mi $ ...
- 下一篇
从零打造基础HTTP服务器:揭秘背后的技术魔法-MiniTomcat
🔥《从零打造基础HTTP服务器:揭秘背后的技术魔法-MiniTomcat》🚀 嘿,各位技术发烧友们!今天咱们要一起踏上一段超级刺激的技术之旅,去揭开从零实现一个基础HTTP服务器的神秘面纱。这就像是在数字世界里亲手搭建一座桥梁,连接起客户端和服务器端,让信息能够畅通无阻地流淌。准备好跟我一起深入探索,看看这里面都藏着哪些酷炫的技术魔法吧!💥 一、HTTP服务器:网络世界的"信息驿站"🎯 (一)HTTP服务器是啥? 想象一下,互联网就是一个超级庞大的城市,而HTTP服务器呢,就像是这个城市里的一个个"信息驿站"。它静静地待在那里,时刻准备着接收来自世界各地客户端(就好比是城市里的行人)发送过来的请求,然后根据这些请求的内容,找到对应的信息或者执行相应的操作,再把结果返回给客户端。简单来说,它就是负责处理HTTP协议相关的请求和响应,是网络通信中至关重要的一环呀!😎 (二)为啥要自己实现一个? 你可能会问,市面上已经有那么多成熟的HTTP服务器了,为啥还要费劲自己去实现一个呢?这就好比是,虽然外面有很多现成的美食可以买着吃,但自己动手做一顿美食,不仅能更深入地了解烹饪的过程和技巧...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6