दोस्तों मेंरे पिछले Tutorial में आपने देखा की RAID क्या होता हे और Linux Server में Raid को कैसे Configure किया जाता हे इस tutorial में हम जानेंगे की Linux Server में RAID0+1 और RAID1+0को कैसे Configure किया जाता है
RAID 0+1 Configuration
RAID0+1 का structureनिम्न प्रकार होता है ! Raid को configure करने के लिए हमे 4 herd drive की आवश्यकता होती है सबसे निचे Raid 0 Configure किया जाता है उसके ऊपर Raid 1 Configure किया जाता है हमारे पास /dev/sdb, /dev/sdc, /dev/sdd, /dev/sde, नाम की 4 Hard Drive है
1. इसका Configuration Linux Server में निम्न प्रकार से किया जाता है
सबसे पहले हर एक Hard drive में जाकर एक Hard Drive की Full Size का Extended Partition Create करना होगा और उस Extended Partition में एक Extended Partition की Same Size का Logical Partition Create करना होगा
[root@localhost ~]# 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. The number of cylinders for this disk is set to 2627. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) Command (m for help): n (note-यह n Press करने पर दो Option आते है Extended Partition और Primary Partition हमे Extended Partition Select करने के लिए e press करना है ) Command action e extended p primary partition (1-4) e Partition number (1-4): 4 (यहाँ New बनने वाला Extended Partition का Number Select करना है ) First cylinder (1-2627, default 1):(और दो बार Enter Press करना है जिससे Extended Partition Herd disk की Full Size Default Calculate कर ले ) Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-2627, default 2627): Using default value 2627 Command (m for help): n (अब यहाँ पुनः n Press करने पर दो Option आते है Logical partition और Primary partition तो हमे L Press कर दो बार Enter Press कर के Logical Partition को Default Value Provide करवानी है) Command action l logical (5 or over) p primary partition (1-4) l First cylinder (1-2627, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-2627, default 2627): Using default value 2627 Command (m for help): p (अब यहाँ हम p Press कर के देख सकते है की हमारी Herd Disk /dev /sdc में एक Extended Partition और एक Logical Partition Create हो चुके है ) Disk /dev/sdc: 21.6 GB, 21613379584 bytes 255 heads, 63 sectors/track, 2627 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sdc4 1 2627 21101346 5 Extended /dev/sdc5 1 2627 21101314+ 83 Linux Command (m for help): t Partition number (1-5): 5 (Hard Disk का Partition Type Change करने की आवश्यकता तो Type change करने के लिए t press करते है और जिस Logical Partition का हमे Type Change करना होता है उसका Number Press करते है जैसे हमारी Hard Disk का Logical Partition Number 5 है) Hex code (type L to list codes): l (अब हमे Partition का Code Press करना होता है इसके लिए हम L Press करCode Table में से Code देख सकते है जैसे RAID में बदलने का Code fd है ) 0 Empty 80 Old Minix bf Solaris 1 FAT12 81 Minix / old Lin c1 DRDOS/sec (FAT- 2 XENIX root 82 Linux swap / So c4 DRDOS/sec (FAT- 3 XENIX usr 83 Linux c6 DRDOS/sec (FAT- 4 FAT16 <32M 84 OS/2 hidden C: c7 Syrinx 5 Extended 85 Linux extended da Non-FS data 6 FAT16 86 NTFS volume set db CP/M / CTOS / . 7 HPFS/NTFS 87 NTFS volume set de Dell Utility 8 AIX 88 Linux plaintext df BootIt 9 AIX bootable 8e Linux LVM e1 DOS access a OS/2 Boot Mana 93 Amoeba e3 DOS R/O b W95 FAT32 94 Amoeba BBT e4 SpeedStor c W95 FAT32 (LBA) 9f BSD/OS eb BeOS fs e W95 FAT16 (LBA) a0 IBM Thinkpad hi ee EFI GPT f W95 Ext'd (LBA) a5 FreeBSD ef EFI (FAT-12/16/ 10 OPUS a6 OpenBSD f0 Linux/PA-RISC b 11 Hidden FAT12 a7 NeXTSTEP f1 SpeedStor 12 Compaq diagnost a8 Darwin UFS f4 SpeedStor 14 Hidden FAT16 <3 a9 NetBSD f2 DOS secondary 16 Hidden FAT16 ab Darwin boot fb VMware VMFS 17 Hidden HPFS/NTF b7 BSDI fs fc VMware VMKCORE 18 AST SmartSleep b8 BSDI swap fd Linux raid auto 1b Hidden W95 FAT3 bb Boot Wizard hid fe LANstep 1c Hidden W95 F be Solaris boot ff BBT Hex code (type L to list codes): fd Changed system type of partition 5 to fd (Linux raid autodetect) Command (m for help): w (और अब हम ने Partition टेबल में जो Change किया है उसको W Press करके Save कर देना है) The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
hard Disk /dev/sdd के लिए
[root@localhost ~]# fdisk /dev/sdd 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. The number of cylinders for this disk is set to 2627. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) 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) e Partition number (1-4): 4 First cylinder (1-2627, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-2627, default 2627): Using default value 2627 Command (m for help): n Command action l logical (5 or over) p primary partition (1-4) l First cylinder (1-2627, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-2627, default 2627): Using default value 2627 Command (m for help): t Partition number (1-5): 5 Hex code (type L to list codes): fd Changed system type of partition 5 to fd (Linux raid autodetect) Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
hard Disk /dev/sde के लिए
[root@localhost ~]# fdisk /dev/sde 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. The number of cylinders for this disk is set to 2627. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) 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) e Partition number (1-4): 4 First cylinder (1-2627, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-2627, default 2627): Using default value 2627 Command (m for help): n Command action l logical (5 or over) p primary partition (1-4) l First cylinder (1-2627, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-2627, default 2627): Using default value 2627 Command (m for help): t Partition number (1-5): 5 Hex code (type L to list codes): fd Changed system type of partition 5 to fd (Linux raid autodetect) Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
(Note-ठीक इसी तरह आप को सभी Hard Disk के लिए ये Process Follow करना है यहाँ सभी Hard Drive का Process Show करने का कोई मतलब नही है क्यों की सभी के लिए ये Process Same है तो में बाकि सभी Hard Disk के Process को Skip करते हु ये आगे बढ़ता हु अगर आप को इस Process में कोई भी Error आती है तो आप Comments करे में आप की Problem को solve करुगा )
2.यहाँ में मान के चलता हु की आप ने सभी 4 Hard Disk को Logical partition में Convert कर उनका Type RAID करदिया है इसके बाद हम आगे बढ़ते है !दोस्तों आप ने ध्यान दिया हो तो Linux Server हमे Warning देता है की Currents में कर्नल (kernl) Hard Disk की Old partition Tables को ही read कर रहा है अगर आप चाहते है की अभी जो आप ने New partition Table बनाई है उसको read करे तो आप को System को Reboot करना हो गा परन्तु हम Real Server में Server को Reboot नही कर सकते है क्योकि अगर हमने ऐसा किया तो बहुध सारा Work Disturb हो जायेगा तो इस समस्या के निधान के लिए हमे हर एक Hard Disk के लिए Partprobe Commands का यूज़ करना होगा निम्न प्रकार से
[root@localhost ~]# partprobe /dev/sdb
[root@localhost ~]# partprobe /dev/sdc
[root@localhost ~]# partprobe /dev/sdd
[root@localhost ~]# partprobe /dev/sde
3. dev/sdb , /dev/sdc Hard drive पर/dev/md11 Configure किया गया है जो की RAID 0 है
[root@localhost ~]# mdadm --create /dev/md11 --level=0 --raid-device=2 /dev/sdb5 /dev/sdc5 mdadm: array /dev/md11 started.
4. dev/sdd , /dev/sde Hard drive पर/dev/md12 Configure किया गया है जो की RAID 0 है
[root@localhost ~]# mdadm --create /dev/md12 --level=0 --raid-device=2 /dev/sdd5 /dev/sde5 mdadm: array /dev/md12 started.
5. अब हमे यहाँ दो RAID को मर्ज (merge) करके एक New /dev/md21बनाएंगे जो RAID 0 1 होगा
[root@localhost ~]# mdadm --create /dev/md21 --level=1 --raid-device=2 /dev/md11 /dev/md12 mdadm: array /dev/md21 started.
6.यहाँ हम निम्न Commands से RAID0+1को Formate करेगें
[root@localhost ~]# mkfs.ext3 /dev/md21
RAID को Format करने के पश्च्यात हमे उसको किसी Folder में Mount करना होता है यहाँ में एक Data1 Name का Folder बना रहा हु जिसको हम निम्न Commands से Mount करेंगे
[root@localhost ~]# mkdir data1
[root@localhost `]# mount /dev/md31 data1
इसको Permanently Mount करने के लीये vim /etc/fstab में जाकर निम्न प्रकार की entry करनी होती है
[root@localhost ~]# vim /etc/fstab
LABEL=/ / ext3 defaults 1 1 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 LABEL=SWAP-sda2 swap swap defaults 0 0 /dev/md31 /root/data1 ext3 defailts 0 0 ~ ~ :wq
तो इस प्रकार से RAID 1 +0 का Configuration पूरा होता हे अब हम यदि RAID ०+1 को देखना चाहते हे तो निम्न Commands का यूज़ कर देख सकते है
[root@localhost ~]#cat /proc/mdstat
RAID 1+0 Configuration
RAID 1+0 का Configuration भी RAID 0 + 1 के समान ही होता है इसके लिए भी Partition समान रूप से बनाने होते है ! हर एक Hard drive में जाकर एक Herd Drive की Full Size का Extended Partition Create करना होगा और उस Extended Partition में एक Extended Partition की Same Size का Logical Partition Create करना होगा यहाँ में मान के चलता हु की आप ने सभी 4 Hard Disk को Logical partition में Convert कर उनका Type RAID करदिया है इसके बाद हम आगे बढ़ते है
3. dev/sdf , /dev/sdg Hard drive पर/dev/md13 Configure किया गया है जो की RAID 1 है
[root@localhost ~]# mdadm --create /dev/md13 --level=1 --raid-device=2 /dev/sdf5 /dev/sdg5 mdadm: array /dev/md13 started.
4. dev/sdh , /dev/sdi Hard drive पर/dev/md14 Configure किया गया है जो की RAID 0 है
[root@localhost ~]# mdadm --create /dev/md14 --level=0 --raid-device=2 /dev/sdh5 /dev/sdi5 mdadm: array /dev/md14 started.
5. अब हमे यहाँ दो RAID को मर्ज (merge) करके एक New /dev/md22बनाएंगे जो RAID1+0 होगा
[root@localhost ~]# mdadm --create /dev/md22 --level=0 --raid-device=2 /dev/md13 /dev/md14 mdadm: array /dev/md22 started.
हम निम्न Commands से RAID1+0को Formate करेगें
[root@localhost ~]# mkfs.ext3 /dev/md22
RAID को Format करने के पश्च्यात हमे उसको किसी Folder में Mount करना होता है यहाँ में एक Data1 Name का Folder बना रहा हु जिसको हम निम्न Commands से Mount करेंगे
[root@localhost ~]# mkdir data1
[root@localhost `]# mount /dev/md22 data1
इसको Permanently Mount करने के लीये vim /etc/fstab में जाकर निम्न प्रकार की entry करनी होती है
[root@localhost ~]# vim /etc/fstab
LABEL=/ / ext3 defaults 1 1 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 LABEL=SWAP-sda2 swap swap defaults 0 0 /dev/md22 /root/data1 ext3 defailts 0 0
RAID को Remove कैसे करे
RAID को रिमूव करने से पहले उसको Stop करना होता है निम्न Commands से हम Raid 0 को Stop करते है
[root@localhost ~]# mdadm --stop /dev/md22
RAID को निम्न Commands से Remove कर सकते है
[root@localhost ~]# mdadm --remove /dev/md22
दोस्तों अगर आप को इस Process में कोई Problem आती है तो आप Comments करे में आप की Problem solve करुगा Next part में आप देखेंगे की और कितने तरह के RAID का Configure किया जाता है
धन्यवाद
by Vishnu Sharma