开发者社区> 我爱的人玲> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

RAID和LVM的组合

简介: 因为RAID实际使用是使用RAID卡来控制RAID设备的构建。但是RAID设备一旦空间构建完毕,那么其分区空间无法扩展,所以我们raid一定要做足够的空间,然后通过LVM来把block空间变为PE空间,动态的去使用RAID设备的空间给不同的挂载点。
+关注继续查看

因为RAID实际使用是使用RAID卡来控制RAID设备的构建。
但是RAID设备一旦空间构建完毕,那么其分区空间无法扩展,所以我们raid一定要做足够的空间,然后通过LVM来把block空间变为PE空间,动态的去使用RAID设备的空间给不同的挂载点。
比如假设24块2T的硬盘,4个做成一个raid5.
然后在将这四个raid5设备假设是
/dev/md0-5,分别打上pv的标签。然后进行vg的构建,然后给lv分配PE空间。
然后为/根文件系统指定一个可扩展的LV空间。给/boot。一个LV可扩展的LV空间。然后是给/home 一个可扩展的LV空间。

这里是先RAID ,然后把空间分成PE给LV使用。
那么如果是先把磁盘打上pv。分成PE,建立lv,然后对lv做raid,那么raid的空间就是可变的了。raid5就是至少4块,3块做数据其中1块的空间做校验,实际可用2块lv空间,然后1块或多块lv空间做spare使用。这样会是什么样子呢。

假设这个raid5设备为/dev/mdx,然后对齐做格式化文件系统。放置/跟文件系统。
/dev/mdx下面是4个lv空间如果/根文件系统不够用的话,扩展所有LV的空间。也是不停机动态增加空间。这个时候存在的问题是如果一个磁盘损坏
,可能的是影响多个LV。因为LV的PE是从pv这里划分的。但是LV坏了,相当raid坏了啊,你去其他的lv先找,spare lv恢复,(这里是我们假设对lv做raid,但是如果是不做raid的话,一旦下面的PV算话,数据一样是会都丢失。)然后你把硬盘换上就行。这个就不智能了,不想raid有spare盘直接加。

而如果是先raid,再lv的话,如果一个磁盘坏了。lv存放的PE,存放的数据,下面raid能够计算出来。然后spare盘会补进去,影响不会太大。lv找PE ,你先去其他2个盘找,等我rebuild完了,你再来找。

所以就目前而言,RAID+LVM是比较好的以这种硬件冗余
再加分布式文件系统,多个数据冗余那就是天作之合了。这里说的是普通数据,像数据库数据都是有数据库内容的备份机制和专业存储设备做结合使用。
当然,我们就需要定时监控系统硬盘使用空间,inode使用空间,和磁盘损坏的状况。是否能查询到设备信息了。自动化运维工具有人开发,我们使用即可,当然一些小的script脚本就是自己编写了。像网络现在也在做自动化维护。但是基本的东西还是需要我们这些攻城狮去搞定的,上面都是程序猿的天下。所以从哪里混都是小兵,旗手还是程序猿,将军还是boss,指哪打哪啊。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Hive创建索引
Hive创建索引
2427 0
Java提高篇(一):区分引用变量与对象
我们有代码: New A=new New(); 下面是这个New的类: 1 class New 2 { 3 public New() 4 { 5 System.
661 0
java对象的强引用,软引用,弱引用和虚引用
1,杂谈 在Java中,虽然不需要程序员手动去管理对象的生命周期,但是如果希望某些对象具备一定的生命周期的话(比如内存不足时JVM就会自动回收某些对象从而避免OutOfMemory的错误)就需要用到软引用和弱引用了。
1019 0
手撕Java之Rpc调用
参照《分布式服务框架原理与实践-李林锋》的书, 代码调出功能来了。 向更高的服务架构技能进发! 颤抖吧,老IT!
2250 0
+关注
我爱的人玲
不知说什么
53
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载