RAID कैसे Configure करे Linux Server में part 1

हेल्लो दोस्तों आज हम जानते है की RAID क्या होता है RAID storage management method का एक part होता है जिसमे Data को store को manage करने के लिए यूज किया जाता है इसको RAID Arra नाम से भी जाता जाता है   RAID कही तरह के होते है RAID 1 ,RAID 0 RAID 5 , RAID 6 ,RAID1+0 ,RAID 0+1 आदि इन सभी RAID devices के बारे में हम विस्तार से जानेंगे और यह भी जानेगे की इसको Linux Server में कैसे Configure किया जाता है ,दोस्तों सामन्यत हम देखते है की Google Facebook ,Microsoft या कोई भी बड़ी IT company  या Organization अपने data को आखीर किस प्रकार से manage करती है की हमारा Data  इनके पास से कभी loss नही होता है तो इन सब के पीछे RAID Programs /Devices का ही कमाल होता है ये Company अपने Server  में Raid program को configure करके रखती है जिससे इनके डाटा की copy Automatic होती रहती है और जहा जहा इनके Data ware house होते है वहाँ इनके डाटा स्टोर होते रहते है और फिर अगर भविष्य में इनकी कोई Heard disk या Server room Crash भी हो जाता है तो भी डाटा कभी loss नही होता है क्यों की इनके डाटा की कॉपी दूसरे Data Ware house में Automatic Copy हो जाती  है और Google और Facebook जेसी  बड़ी Company का  Same data base कही जगह अलग अलग Country में होता है तो इसका डाटा loss होने का chances बहुद कम होते है  raid

यह तो जानकारी  है बड़ी IT Company  और IT group की पर इसको हम छोटे स्तर पर अपने Company या Organization के लिए भी अपने Server में RAID configure कर सकते है  जिससे हमारा Data कभी loss नही हो और automatic अपने Data का Backup बनता रहे और कोई Heard drive cress हो तो automatic उसकी जगह दूसरा Heard driver Work करने लग जाये

1. RAID0 क्या है  और यह  केसे work करता है 

RAID0 Data की Copy provide नही करता है पर server पर store data को receive speed बड़ा देता है और Server को Fast कर देता है इसका use वहाँ किया जाता है जहा Company या organization को old data की ज्यादा जरूरत नही पड़ती है और और जो Data उनके पास Store है उनको Speed से access करना होता है इस तरह का RAID Configure सामान्यत News channel में किया जाता है जहा Data को Speed से Access करने की आवश्यकता होती है

1  RAID 0 में दो Heard drive होते हे जो data को 50 – 50 divide करते हे Heard driver में ये डाटा Recovery का Redundancy का option नही देता हे इसको हम निम्न diagram से समझ सकते हेRAID 0

2 .यहाँ हम देखते हे की हमारे पास 500 – 500 GB के दो Heard Drive /dev /sdb और /dev /sdc  है उनके ऊपर /dev /md0 group  है जिसपर RAID 0 Configure है इस Heard drive में 1,2,3,4,5,6,7,8 को insert करवाया जाता है तो ये 50 – 50 डिवाइड होता है  

RAID 0 का Configuration

Linux Server में Raid को निम्न प्रकार से Configure किया जाता है

1 . यहाँ  में ने अपने Server से दो Heard disk को connect किया है /dev/sdb और /dev/sdc हमारे Server में कितनी Heard disk connect है हम निम्न Commands से देख सकते है 

[root@localhost ~]# fdisk -l
Disk /dev/sda: 43.9 GB, 43965677568 bytes
255 heads, 63 sectors/track, 5345 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        3187    25599546   83  Linux
/dev/sda2            3188        4462    10241437+  82  Linux swap /
/dev/sda4            4463        5345     7092697+   5  Extended
Disk /dev/sdb: 53.3 GB, 53325299712 bytes
255 heads, 63 sectors/track, 6483 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc: 53.3 GB, 53325299712 bytes

2. सबसे पहले हर एक Hard drive में जाकर एक Hard Drive की Full Size का Extended Partition Create करना होगा और उस Extended Partition में एक Extended Partition की Same Size का Logical Partition Create करना होगा

[root@localhost ~]# 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.
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.

(Note-ठीक इसी तरह आप को /dev/sdc Hard Disk के लिए ये Process Follow करना है यहाँ  सभी Hard Drive का Process Show करने का कोई मतलब नही है क्यों की सभी के लिए ये Process Same है तो में /dev/sdc  Herd Disk के Process को Skip करते हु ये आगे बढ़ता हु अगर आप को इस Process में कोई भी Error आती है तो आप Comments करे में  आप की  Problem को solve करुगा )

3.यहाँ में मान के चलता हु की आप /dev/sdc  को 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

3. अब हम इनके ऊपर निम्न Commands से Raid 0 configure कर सकते है

[root@localhost ~]# mdadm --create /dev/md0 --level=0 --raid-devices=2
 /dev/sdb /dev/sdc
mdadm: /dev/sdb appears to contain an ext2fs file system
    size=52075488K  mtime=Wed Dec 31 19:00:00 1969
mdadm: /dev/sdc appears to contain an ext2fs file system
    size=52075488K  mtime=Wed Dec 31 19:00:00 1969
Continue creating array?
Continue creating array? (y/n) y
mdadm: array /dev/md0 started.

4.यहाँ हम निम्न Commands से RAID0को Formate करेगें

[root@localhost ~]# mkfs.ext3 /dev/mdo

5.RAID को Format करने के पश्च्यात हमे उसको किसी Folder में Mount करना होता है यहाँ में एक Data1 Name का Folder बना रहा हु जिसको हम निम्न Commands से Mount करेंगे

[root@localhost ~]# mkdir data1
[root@localhost `]# mount /dev/mdo data1

6.इसको 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/md0              /root/data1        ext3    defailts        0 0
RAID 0 को Remove कैसे करे

RAID 0 को रिमूव करने से पहले उसको Stop करना होता है निम्न Commands से हम Raid 0 को Stop करते है

[root@localhost ~]# mdadm --stop /dev/md0

RAID 0 को निम्न Commands से Remove कर सकते है

[root@localhost ~]# mdadm --remove /dev/md0
2. RAID 1 क्या है  और यह  केसे work करता है 

RAID 1 data की Redundancy provide करवाता है इसमे  Data Secure रहता है क्यों  की इसमे हर data दो Herd drive में Copy होता है Same data का backup होता है अगर कोई एक Herd drive crash भी होती है फिर भी data Secure रहता है   raid 1

RAID1 का Configuration

RAID 1 का Configuration भी RAID के समान ही होता है इसके लिए भी Partition समान रूप से बनाने होते है ! हर एक Herd drive में जाकर एक Herd Drive की Full Size का Extended Partition Create करना होगा और उस Extended Partition में एक Extended Partition की Same Size का Logical Partition Create करना होगा यहाँ में मान के चलता हु की आप ने सभी 2 Herd Disk को Logical partition में Convert कर उनका Type RAID करदिया है इसके बाद हम आगे बढ़ते है

RAID 1 को निम्न कमांड्स के द्वरा Configure किया जाता है

[root@localhost ~]# mdadm --create /dev/md1 --level=1 --raid-devices=2
/dev/sdb5 /dev/sdc5
mdadm: /dev/sdb appears to contain an ext2fs file system
    size=52075488K  mtime=Wed Dec 31 19:00:00 1969
mdadm: /dev/sdb appears to be part of a raid array:
    level=raid0 devices=2 ctime=Wed Feb  8 03:42:44 2017
mdadm: /dev/sdc appears to contain an ext2fs file system
    size=52075488K  mtime=Wed Dec 31 19:00:00 1969
mdadm: /dev/sdc appears to be part of a raid array:
    level=raid0 devices=2 ctime=Wed Feb  8 03:42:44 2017
Continue creating array? y
mdadm: array /dev/md0 started.

4.यहाँ हम निम्न Commands से RAID0को Formate करेगें

[root@localhost ~]# mkfs.ext3 /dev/mdo

5.RAID को Format करने के पश्च्यात हमे उसको किसी Folder में Mount करना होता है यहाँ में एक Data1 Name का Folder बना रहा हु जिसको हम निम्न Commands से Mount करेंगे

[root@localhost ~]# mkdir data1
[root@localhost `]# mount /dev/mdo data1

6.इसको Permanently Mount करने के लीये vim /etc/fstab में जाकर निम्न प्रकार की entry करनी होती है

[root@localhost ~]# vim /etc/fstab
proc                    /proc             proc    defaults        0 0
LABEL=SWAP-sda2         swap              swap    defaults        0 0
/dev/md1              /root/data1        ext3    defailts        0 0
RAID 1 को Remove कैसे करे

RAID 1 को रिमूव करने से पहले उसको Stop करना होता है निम्न Commands से हम Raid 1 को Stop करते है

[root@localhost ~]# mdadm --stop /dev/md1

RAID 1 को निम्न Commands से Remove कर सकते है

[root@localhost ~]# mdadm --remove /dev/md1

दोस्तों अगर आप को इस Process में कोई Problem आती है तो आप Comments  करे में आप की Problem solve करुगा Next part में आप देखेंगे की RAID 0+1,raid1+0 के से Configure किया जाता है

 

2 thoughts on “RAID कैसे Configure करे Linux Server में part 1”

  1. very nice explanation sir thanku so much…. me hindi medium se hi pdi hu or esme bohot simple language me smjhaya he apne to es se mujhe kafi help mili thanks..

Leave a Reply

Your email address will not be published.