设为首页 收藏本站
查看: 1562|回复: 0

[经验分享] Linux RAID5

[复制链接]

尚未签到

发表于 2018-5-22 12:02:56 | 显示全部楼层 |阅读模式
  Linux RAID5项目
  
  (一)  实验任务及思路:
  1) 构建基于4块磁盘的RAID 5磁盘阵列,有效空间为60G;
  2) 在构建好的阵列上构建EXT 4文件系统并挂载到网站文档目录下;
  3) 新建网站,先模拟1块磁盘故障,在Client端访问网站;再模拟2块磁盘故障,继续访问网站,观察两次访问结果,以检测RAID 5的工作性能。
  (二)实验拓扑:
DSC0000.png

  (三)实验要求:
  1)    Web为网站服务器,操作系统为64位的RHEL6.5,主机名为web.benet.com,网卡连接到VMnet1上,IP地址为192.168.1.100/24;
  2)    该虚拟机上除系统盘之外,另外添加4块大小为30G的虚拟磁盘。
  3)    准备好64位的RHEL6.5操作系统ISO镜像文件。
  4)    Client主机为普通用户机,操作系统没有限制,网卡连接到VMnet1上,IP地址为192.168.1.200/24。
  (四) 配置文件:
  1.    Linux  web服务器和win客户机基本配置
  [root@web /]#hostname  //查看主机名
DSC0001.png

  [root@web /]#ifconfig eth0  //查看第一块网卡ip地址
DSC0002.png

  [root@web /]#netstat -anpt | grep 80 //查看web服务器工作状态
DSC0003.png

  [root@web /]#service iptables stop  //关闭防火墙
  [root@web /]#setenforce 0  //关闭安全linux
  查看win客户机ip地址
DSC0004.png

  
  2.      做软raid5阵列并将其挂载到web服务器根目录:
DSC0005.png

  [root@web /]#fdisk -l  //查看磁盘设备情况
  
DSC0006.png

  

  [root@web /]#mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sd[b-e]  //创建raid 5 ,用3块硬盘做raid 5阵列,1块做热备
  [root@web /]# cat/proc/mdstat  //查看所有运行RAID5阵列的状态
DSC0007.png

  [root@web /]#mdadm -D /dev/md0  //查看raid5状态
  
DSC0008.png

DSC0009.png

  由图可看出raid级别为raid5,阵列大小约60G/dev/sdb /dev/sdc  /dev/sdd 正组成raid5阵列,/dev/sde做热备
  [root@web /]#mkfs.ext4 /dev/md0  //格式化RAID5,文件系统为ext4
  [root@web /]# vi/etc/httpd/conf/httpd.conf  //查看web服务器配置文件,找web服务器网站根目录
DSC00010.png

  [root@web /]#mount /dev/md0 /var/www/html/   //RAID 5阵列挂载到根目录
  [root@web /]# df -h  //查看磁盘大小
DSC00011.png

  [root@web /]# ls/var/www/html/  //查看根目录里是空的
  [root@web /]# vi/var/www/html/index.html  //在根目录中新建网页
DSC00012.png

  
DSC00013.png

  [root@web /]#service httpd restart  //重新启动web服务器
DSC00014.png

  
DSC00015.png

  在浏览器中访问web服务器,其是正常工作的
  
  3.      模拟一块硬盘损毁(且有热备盘顶替)时,raid5阵列运行情况:
  
  [root@web /]#mdadm /dev/md0 -f /dev/sdb  //模拟RAID5阵列中/dev/sdb 磁盘损坏
DSC00016.png

  [root@web /]# cat/proc/mdstat   
DSC00017.png

  [root@web /]#mdadm -D /dev/md0
  
DSC00018.png

  由图可看出/dev/sdb 磁盘损坏,/dev/sde顶替sdb加入raid5阵列
  [root@web /]# df-h /dev/md0
DSC00019.png

  Raid5阵列大小还是60G
  
DSC00020.png

  依然可以访问web服务器
  [root@web /]#mdadm /dev/md0 -r /dev/sdb  ///dev/sdb 移除
DSC00021.png

  [root@web/]#mdadm -D  /dev/md0
     DSC00022.png
  [root@web /]#mdadm /dev/md0 -a /dev/sdb   ///dev/sdb加入阵列
DSC00023.png

  [root@web /]#mdadm -D /dev/md0
  
DSC00024.png

  /devsdb 成为热备
  
  
  4.      模拟两块硬盘损毁(或损毁一块硬盘没有热备盘顶替)时,raid5阵列运行情况:
  
  [root@web /]#mdadm /dev/md0 -f /dev/sdc  //模拟第一块硬盘/dev/sdc损坏
DSC00025.png

  [root@web /]# cat/proc/mdstat
DSC00026.png

  [root@web /]#mdadm -D /dev/md0
DSC00027.png

  /dev/sdc 损坏,/dev/sdb 在重建raid5
  [root@web /]# cat/proc/mdstat
  
DSC00028.png

  [root@web /]#mdadm -D /dev/md0
DSC00029.png

  数据恢复后,也就完成重建,/dev/sdb正处于工作状态
  [root@web /]#mdadm /dev/md0 -f /dev/sdd  //模拟第二块硬盘/dev/sdd损坏
DSC00030.png

  [root@web /]# cat/proc/mdstat
DSC00031.png

  [root@web /]#mdadm -D /dev/md0
DSC00032.png

  [root@web /]# df-h /dev/md0
DSC00033.png

  
DSC00034.png

  有上面几幅图可看出,在没有备份硬盘加入时,就不会恢复完整数据,但raid5阵列依旧存在,阵列大小还是60Gweb服务器已经可以访问
  
  [root@web /]# cat/var/www/html/index.html  //查看index.html的内容
DSC00035.png

  [root@web /]#mdadm /dev/md0 -r /dev/sdc  ///dev/dsc移除
DSC00036.png

  [root@web /]#mdadm /dev/md0 -a /dev/sdc  ///dev/sdc加入raid5阵列
DSC00037.png

  [root@web /]# cat/proc/mdstat
DSC00038.png

DSC00039.png

  [root@web /]#mdadm -D /dev/md0
  
DSC00040.png

DSC00041.png

  
  
  5.      模拟三块硬盘损毁(或损毁两块硬盘没有热备盘顶替)时,raid5阵列运行情况:
  [root@web /]#mdadm /dev/md0 -f /dev/sde
DSC00042.png

  [root@web /]# cat/proc/mdstat
DSC00043.png

  [root@web /]#mdadm -D /dev/md0
DSC00044.png

  只有一块硬盘在工作,其他三块硬盘都损坏
  [root@web /]# cat/var/www/html/index.html
DSC00045.png

DSC00046.png

  依然可以读取数据和访问web服务器
  [root@web /]# df-h /dev/md0
DSC00047.png

  磁盘大小依然不变
  [root@web /]# vi/var/www/html/index.html  //编辑index.html
DSC00048.png

  由图看出无法在网页文档中写入数据,raid5阵列中的文件成为只读文件
  [root@web /]# cp-r /var/www/html/index.html /tmp  //index.html复制到/tmp目录
  [root@web /]# ls/tmp
DSC00049.png

  [root@web /]# cat/tmp/index.html
DSC00050.png

  
  [root@web /]#mdadm /dev/md0 -r /dev/sde  
DSC00051.png

  [root@web /]#mdadm /dev/md0 -a /dev/sde
DSC00052.png

  由上可以得出当raid5阵列中只有一块磁盘在工作时,raid5阵列已经不能恢复正常工作,只有重新做阵列,但是可以读取和备份数据
  (五)   结果验证:
  1.      一块硬盘损毁(且有热备盘顶替)时,访问web服务器结果
DSC00053.png

  依然可以访问web服务器
  2.      两块硬盘损毁(或损毁一块硬盘没有热备盘顶替)时,访问web服务器结果
DSC00054.png

  依然可以访问web服务器
  3.      三块硬盘损毁(或损毁两块硬盘没有热备盘顶替)时,访问web服务器结果
DSC00055.png

  依然可以读取数据和访问web服务器
  
  通过实验结果我们可以得出:不论raid5阵列损毁几块硬盘,只要raid5阵列还在,就不影响数据的读取,web服务器依旧可以访问。
  
  (六)  问题及分析:
  根据raid5数据分布原理:当raid5阵列有一块硬盘损毁后,可利用剩下的数据和相应的校验码信息可以算出损毁硬盘中的数据,进而恢复完整数据,所以raid5之允许有一块硬盘损毁。可是通过实验,我们发现不论损毁几块硬盘,只有raid5阵列还存在,依然可以读取数据,这是不正常的,这种情况可能是linux系统做出的保护措施。
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-479087-1-1.html 上篇帖子: Linux 条件测试语句 下篇帖子: linux curl命令学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表