为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Linux磁盘阵列

2013-08-17 6页 doc 44KB 185阅读

用户头像

is_302005

暂无简介

举报
Linux磁盘阵列这篇文章就简单介绍如何用软件实现raid技术(以raid0为例)。 有两个可以实现软raid的工具:raidtools, mdadm。 本文也以mdadm为例讲述。 一、查看当前硬盘情况 [root@primary /]# fdisk -l Disk /dev/sda: 10.7 GB, 10737418240 bytes 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boo...
Linux磁盘阵列
这篇文章就简单介绍如何用软件实现raid技术(以raid0为例)。 有两个可以实现软raid的工具:raidtools, mdadm。 本文也以mdadm为例讲述。 一、查看当前硬盘情况 [root@primary /]# fdisk -l Disk /dev/sda: 10.7 GB, 10737418240 bytes 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 1114 8843782+ 83 Linux /dev/sda3 1115 1305 1534207+ 82 Linux swap Disk /dev/sdb: 107 MB, 107374080 bytes 64 heads, 32 sectors/track, 102 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Disk /dev/sdb doesn't contain a valid partition table Disk /dev/sdc: 107 MB, 107374080 bytes 64 heads, 32 sectors/track, 102 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Disk /dev/sdc doesn't contain a valid partition table 二、为硬盘分区 raid一般多个硬盘来组成,你也可以用同一个硬盘的多个分区组成raid,但这样是没有意义的。 [root@primary /]# fdisk /dev/sdb Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-102, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-102, default 102): Using default value 102 Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. [root@primary /]# fdisk /dev/sdc Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-102, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-102, default 102): Using default value 102 Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. 此时硬盘的分区情况: [root@primary /]# fdisk -l Disk /dev/sda: 10.7 GB, 10737418240 bytes 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 1114 8843782+ 83 Linux /dev/sda3 1115 1305 1534207+ 82 Linux swap Disk /dev/sdb: 107 MB, 107374080 bytes 64 heads, 32 sectors/track, 102 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Device Boot Start End Blocks Id System /dev/sdb1 1 102 104432 83 Linux Disk /dev/sdc: 107 MB, 107374080 bytes 64 heads, 32 sectors/track, 102 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Device Boot Start End Blocks Id System /dev/sdc1 1 102 104432 83 Linux 三、创建raid0 [root@primary /]# mdadm --create /dev/md0 --level=raid0 --chunk=8 --raid-devices=2 /dev/sdb1 /dev/sdc1 四、格式化raid mdadm: array /dev/md0 started. [root@primary /]# mkfs.ext3 /dev/md0 mke2fs 1.35 (28-Feb-2004) max_blocks 213647360, rsv_groups = 26080, rsv_gdb = 256 Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 52208 inodes, 208640 blocks 10432 blocks (5.00%) reserved for the super user First data block=1 Maximum filesystem blocks=67371008 26 block groups 8192 blocks per group, 8192 fragments per group 2008 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801 Writing inode tables: done inode.i_blocks = 3586, i_size = 67383296 Creating journal (4096 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 26 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. 五、挂载raid分区 [root@primary /]# mount /dev/md0 /opt [root@primary /]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 8.4G 5.7G 2.3G 73% / /dev/sda1 99M 8.4M 86M 9% /boot none 252M 0 252M 0% /dev/shm /dev/hdc 161M 161M 0 100% /media/cdrom /dev/md0 198M 5.8M 182M 4% /opt 六、查看raid的信息 [root@primary opt]# mdadm --detail /dev/md0 /dev/md0: Version : 00.90.01 Creation Time : Sun Jul 8 22:54:28 2007 Raid Level : raid0 Array Size : 208640 (203.75 MiB 213.65 MB) Raid Devices : 2 Total Devices : 2 Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Sun Jul 8 22:54:29 2007 State : clean Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 Chunk Size : 8K Number Major Minor RaidDevice State 0 8 17 0 active sync /dev/sdb1 1 8 33 1 active sync /dev/sdc1 UUID : a86f0502:df5715c0:fd871bbc:9f75e0ad Events : 0.1 七、生成mdadm配置文件 mdadm的缺省配置文件为/etc/mdadm.conf,它主要是为了方便阵列的日常管理而设置的,对于阵列而言不是必须的,但是为了减少日后管理中不必要的麻烦,还是应该坚持把这一步做完。 在mdadm.conf文件中要包含两种类型的行:一种是以DEVICE开头的行,它指明在阵列中的设备列;另一种是以ARRAY开头的行,它详细地说明了阵列的名称、模式、阵列中活动设备的数目以及设备的UUID号。 我们可以用mdadm -Ds来得到mdadm.conf文件需要的信息: [root@primary ~]# mdadm -Ds ARRAY /dev/md0 level=raid0 num-devices=2 UUID=63f24968:d367038d:f207e458:9a803df9 devices=/dev/sdb1,/dev/sdc1 根据上面的信息编辑/etc/mdadm.conf,如下: [root@primary ~]# more /etc/mdadm.conf ARRAY /dev/md0 level=raid0 num-devices=2 UUID=63f24968:d367038d:f207e458:9a803df9 device /dev/sdb1 /dev/sdc1 如果不配置这个文件,在重启后尝试mount raid设备的时候会报错: [root@primary ~]# mount /dev/md0 /opt /dev/md0: Invalid argument mount: /dev/md0: can't read superblock 八、设置开机自动挂载 为了让系统开机后能自动挂载raid设备,需要在/etc/fstab添加如下行: vi /etc/fstab /dev/md0 /opt ext3 defaults 0 0 至此,一个raid0就算配置完毕了。其他级别的raid也可以用类似的方法配置,具体可以看帮助。 用mdadm创建raid10 raid0 + raid1的也称raid10,它提供了足够的数据安全和性能,是一般企业最常用的raid级别。 今天我们讨论如何用mdadm创建软raid10. 本次实验的测试环境是: vmware + linux as4 1、首先在vmware添加四个虚拟SCSI硬盘,作为实验所用硬盘 略过。 2、为四个虚拟硬盘分区 略过 3、创建raid 创建raid10的顺序是:先创建2个raid0,再把2个raid0配置成一个raid1. --创建第一个raid0 [root@primary ~]# mdadm --create /dev/md0 --level=raid0 --chunk=8 --raid-devices=2 /dev/sdb1 /dev/sdc1 mdadm: array /dev/md0 started. --创建第二个raid0 [root@primary ~]# mdadm --create /dev/md1 --level=raid0 --chunk=8 --raid-devices=2 /dev/sdd1 /dev/sde1 mdadm: array /dev/md1 started. --利用上面的两个raid0创建raid1 [root@primary ~]# mdadm --create /dev/md2 --level=raid1 --chunk=8 --raid-devices=2 /dev/md0 /dev/md1 mdadm: array /dev/md2 started. 4、格式话raid设备 注意:对于raid设备,只需要格式化最顶层的设备,不管该raid包含了多少层。 在本例中,md2是最顶层的设备,因此我们要把它格式化了就可以了。 [root@primary ~]# mkfs.ext3 /dev/md2 mke2fs 1.35 (28-Feb-2004) max_blocks 213581824, rsv_groups = 26072, rsv_gdb = 256 Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 52208 inodes, 208576 blocks 10428 blocks (5.00%) reserved for the super user First data block=1 Maximum filesystem blocks=67371008 26 block groups 8192 blocks per group, 8192 fragments per group 2008 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801 Writing inode tables: done inode.i_blocks = 3586, i_size = 67383296 Creating journal (4096 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 21 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. 5、查看当前raid信息 [root@primary opt]# cat /proc/mdstat Personalities : [raid0] [raid1] md2 : active raid1 md1[1] md0[0] 208576 blocks [2/2] [UU] md1 : active raid0 sde1[1] sdd1[0] 208640 blocks 8k chunks md0 : active raid0 sdc1[1] sdb1[0] 208640 blocks 8k chunks unused devices: 6、挂载raid设备 [root@primary ~]# mount /dev/md2 /opt [root@primary ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 8.4G 5.8G 2.2G 73% / /dev/sda1 99M 8.4M 86M 9% /boot none 252M 0 252M 0% /dev/shm /dev/md2 198M 5.8M 182M 4% /opt 7、配置/etc/mdadm.conf 首先得出raid的信息: [root@primary opt]# mdadm -Ds ARRAY /dev/md2 level=raid1 num-devices=2 UUID=97e0cb8d:3613c0eb:6d2b2a87:be1c8030 devices=/dev/md0,/dev/md1 ARRAY /dev/md1 level=raid0 num-devices=2 UUID=634ab4f9:92d40a05:3b6d00ca:d28a2683 devices=/dev/sdd1,/dev/sde1 ARRAY /dev/md0 level=raid0 num-devices=2 UUID=fe4f0d31:32580633:45d6f507:d0b7d41a devices=/dev/sdb1,/dev/sdc1 然后编辑/etc/mdadm.conf,添加如下内容: [root@primary opt]# vi /etc/mdadm.conf ARRAY /dev/md2 level=raid1 num-devices=2 UUID=97e0cb8d:3613c0eb:6d2b2a87:be1c8030 device /dev/md0 /dev/md1 ARRAY /dev/md1 level=raid0 num-devices=2 UUID=634ab4f9:92d40a05:3b6d00ca:d28a2683 device /dev/sdd1 /dev/sde1 ARRAY /dev/md0 level=raid0 num-devices=2 UUID=fe4f0d31:32580633:45d6f507:d0b7d41a device /dev/sdb1 /dev/sdc1 8、设置开机自动挂载 为了让系统开机后能自动挂载raid设备,需要在/etc/fstab添加如下行: vi /etc/fstab /dev/md2 /opt ext3 defaults 0 0 至此,raid10配置完毕。 好难得整哦!各位慢慢看……
/
本文档为【Linux磁盘阵列】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索