| Red Hat Enterprise Linux 4: IBM® S/390® IBM® eServer™ zSeries® ਢਾਂਚੇ ਲਈ ਇੰਸਟਾਲੇਸ਼ਨ ਗਾਇਡ | ||
|---|---|---|
| ਪਿੱਛੇ | ਅੰਤਿਕਾ F. S/390 ਅਤੇ zSeries ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਵਧੇਰੇ ਜਾਣਕਾਰੀ | ਅੱਗੇ |
raidtools ਪੈਕੇਜ ਸਮੂਹ ਵਰਗੇ ਹੋਰ ਸੰਦ ਵਾਂਗ, mdadm ਕਮਾਂਡ ਬਹੁ-ਜੰਤਰ ਸਮੂਹ ਪ੍ਰਬੰਧਨ ਨਾਲ ਸੰਬੰਧਿਤ ਲੋੜੀਦੇ ਸਭ ਕਾਰਜ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਦੀ ਹੈ। ਇਸ ਭਾਗ ਵਿੱਚ ਵੇਖਾਇਆ ਗਿਆ ਹੈ ਕਿ ਕਿਵੇਂ mdadm ਕੰਮ ਕਰਦੀ ਹੈ:
ਇੱਕ ਰੇਡ (RAID) ਜੰਤਰ ਬਣਾਉਣਾ
ਬਹੁ-ਮਾਰਗ ਜੰਤਰ ਬਣਾਉਣਾ
ਇੱਕ ਰੇਡ (RAID) ਜੰਤਰ ਬਣਾਉਣ ਲਈ, /etc/mdadm.conf ਫਾਇਲ ਨੂੰ ਲੋੜੀਦੇ DEVICE ਅਤੇ ARRAY ਮੁੱਲਾਂ ਨਾਲ ਤਬਦੀਲ ਕਰੋ:
DEVICE /dev/sd[abcd]1 ARRAY /dev/md0 devices=/dev/sda1,/dev/sdb1,/dev/sdc1,/dev/sdd1 |
ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ, DEVICE ਸਤਰ ਪ੍ਰਚਲਿਤ ਫਾਇਲ ਨਾਂ, ਜੋ ਕਿ ਹੇਠ ਲਿਖੇ SCSI ਜੰਤਰਾਂ ਨੂੰ ਪ੍ਰਭਾਸ਼ਿਤ ਕਰਨ ਲਈ ਇਸਤੇਮਾਲ ਕੀਤੀ ਜਾਦੀ ਹੈ (ਵਧੇਰੇ ਜਾਣਕਾਰੀ ਲਈ glob(7) man ਸਫਾ ਵੇਖੋ):
/dev/sda1
/dev/sdb1
/dev/sdc1
/dev/sdd1
ARRAY ਸਤਰ ਇੱਕ ਰੇਡ (RAID) ਜੰਤਰ (/dev/md0) ਪ੍ਰਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ, ਜੋ ਕਿ DEVICE ਸਤਰ ਰਾਹੀਂ ਪ੍ਰਭਾਸ਼ਿਤ SCSI ਜੰਤਰਾਂ ਵਿੱਚ ਸ਼ਾਮਿਲ ਕਰਦੀ ਹੈ।
ਕਿਸੇ ਰੇਡ (RAID) ਜੰਤਰਾਂ ਨੂੰ ਇਸਤੇਮਾਲ ਕਰਨ ਜਾਂ ਬਣਾਉਣ ਤੋਂ ਪਹਿਲਾਂ, /proc/mdstat ਫਾਇਲ ਕੋਈ ਸਰਗਰਮ ਰੇਡ (RAID) ਜੰਤਰ ਨਹੀਂ ਵੇਖਾਏਗੀ:
Personalities : read_ahead not set Event: 0 unused devices: <none> |
ਅੱਗੇ, ਉੱਪਰਲੀ ਸੰਰਚਨਾ ਦਾ ਇਸਤੇਮਾਲ ਕਰੋ ਅਤੇ mdadm ਨੂੰ ਇੱਕ RAID 0 ਲੜੀ ਬਣਾਉਣ ਲਈ ਇਸਤੇਮਾਲ ਕਰੋ:
mdadm -C /dev/md0 --level=raid0 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 \ /dev/sdd1 Continue creating array? yes mdadm: array /dev/md0 started. |
ਇੱਕ ਵਾਰ ਬਣਾਉਣ ਤੇ, ਰੇਡ (RAID) ਜੰਤਰ ਨੂੰ ਕਿਸੇ ਸਮੇਂ ਵੀ ਸਥਿਤੀ ਜਾਣਕਾਰੀ ਉਪਲੱਬਧ ਕਰਵਾਉਣ ਲਈ ਇਸਤੇਮਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਹੇਠ ਦਿੱਤੀ ਉਦਾਹਰਨ ਕਮਾਂਡmdadm --detail /dev/md0 ਦੀ ਆਉਟਪੁੱਟ ਵੇਖਾ ਰਹੀ ਹੈ:
/dev/md0: Version : 00.90.00 Creation Time : Mon Mar 1 13:49:10 2004 Raid Level : raid0 Array Size : 15621632 (14.90 GiB 15.100 GB) Raid Devices : 4 Total Devices : 4 Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Mon Mar 1 13:49:10 2004 State : dirty, no-errors Active Devices : 4 Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Chunk Size : 64K Number Major Minor RaidDevice State 0 8 1 0 active sync /dev/sda1 1 8 17 1 active sync /dev/sdb1 2 8 33 2 active sync /dev/sdc1 3 8 49 3 active sync /dev/sdd1 UUID : 25c0f2a1:e882dfc0:c0fe135e:6940d932 Events : 0.1 |
ਰੇਡ(RAID) ਲੜੀ ਬਣਾਉਣ ਤੋਂ ਇਲਾਵਾ, mdadm ਨੂੰ ਵੱਖ ਵੱਖ SCSI LUN (ਡਿਸਕ ਡਰਾਇਵ) ਲਈ ਇੱਕ ਤੋਂ ਵਧੇਰੇ I/O ਮਾਰਗ ਨੂੰ ਜੰਤਰ ਸਹਿਯੋਗ ਦੀ ਸਹੂਲਤ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਇਸਤੇਮਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਬਹੁ-ਮਾਰਗੀ ਸਟੋਰੇਜ਼ ਦਾ ਮਕਸਦ ਜੰਤਰ ਅਸਫਲਤਾ ਜਾਂ ਵੱਖ-ਵੱਖ ਥਾਵਾਂ ਹੋਣ ਦੀ ਸਥਿਤੀ ਹੋਣ ਦੀ ਹਾਲਾਤ ਵਿੱਚ ਡਾਟਾ ਉਪਲੱਬਧ ਹੋਣ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣਾ ਹੈ। ਕਿਉਕਿ ਇਹ ਸੰਰਚਨਾ ਸਾਂਝੀ SCSI LUN (ਡਿਸਕ ਡਰਾਇਵ) ਵਰਤਣ ਲਈ ਬਹੁ-ਮਾਰਗ (ਹਰ ਇੱਕ ਵੱਖਰੇ ਕੰਟਰੋਲਰ ਵਾਂਗ ਕੰਮ ਕਰਦਾ ਹੈ), ਲੀਨਕਸ (Linux) ਕਰਨਲ ਹਰ ਸਾਂਝੀ ਡਰਾਇਵ ਨੂੰ ਇੱਕ ਵਾਰ ਹਰ ਮਾਰਗ "ਰਾਹੀਂ" ਇਸਤੇਮਾਲ ਕਰਦਾ ਹੈ। ਹੋਰ ਸ਼ਬਦਾਂ ਵਿੱਚ, SCSI LUN (ਡਿਸਕ ਡਰਾਇਵ), ਜਿਸ ਨੂੰ /dev/sda ਦੇ ਤੌਰ ਤੇ ਜਾਣਿਆ ਜਾਦਾ ਹੈ, ਨੂੰ /dev/sdb, /dev/sdc ਅਤੇ ਹੋਰ ਢੰਗਾਂ ਰਾਹੀਂ ਖਾਸ ਸੰਰਚਨਾ ਦੇ ਆਧਾਰ ਤੇ ਇਸਤੇਮਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਇੱਕ ਇੱਕਲਾ ਜੰਤਰ ਉਪਲੱਬਧ ਕਰਵਾਉਣ ਲਈ, ਜੋ ਕਿ ਇੱਕ I/O ਮਾਰਗ ਦੇ ਅਸਫਲ ਜਾਂ ਸੰਤ੍ਰਿਪਤ ਹੋਣ ਉਪਰੰਤ ਵੀ ਇਸਤੇਮਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, mdadm ਵਿੱਚ ਇੱਕ ਵਾਧੂ ਮੁੱਲ ਇਸ ਦੀ ––level ਚੋਣ ਵਿੱਚ ਸ਼ਾਮਿਲ ਕੀਤਾ ਜਾਦਾ ਹੈ। ਇਹ ਮੁੱਲ — multipath — Linux ਕਰਨਲ ਵਿੱਚ md ਪਰਤ ਨੂੰ ਮੁੜ-ਮਾਰਗ I/O ਬੇਨਤੀਆਂ ਨੂੰ ਇੱਕ ਮਾਰਗ ਤੋਂ ਹੋਰ ਮਾਰਗ ਤੇ ਭੇਜ ਦਿੰਦਾ ਹੈ, ਜਦੋਂ ਕਿ ਇੱਕ I/O ਮਾਰਗ ਅਸਫਲ ਹੋ ਜਾਦਾ ਹੈ।
ਇੱਕ ਬਹੁ-ਮਾਰਗ ਜੰਤਰ ਬਣਾਉਣ ਲਈ, /etc/mdadm.conf ਫਾਇਲ ਵਿੱਚ ਆਪਣੀ ਜੰਤਰ ਸੰਰਚਨਾ ਵੇਖਾਉਣ ਲਈ DEVICE ਅਤੇ ARRAYਦੇ ਮੁੱਲ ਪ੍ਰਭਾਸ਼ਿਤ ਕਰੋ।
![]() | ਸੂਚਨਾ |
|---|---|
ਪਿਛਲੀ ਰੇਡ (RAID) ਉਦਾਹਰਨ (ਜਿੱਥੇ ਕਿ ਹਰ ਨਿਰਧਾਰਿਤ ਜੰਤਰ /etc/mdadm.conf ਵੱਖਰੀ ਭੌਤਿਕ ਡਿਸਕ ਜੰਤਰ ਵੇਖਾਉਣਾ ਚਾਹੀਦਾ ਹੈ) ਦੇ ਉਲਟ, ਇਸ ਫਾਇਲ ਵਿੱਚ ਹਰ ਜੰਤਰ ਇੱਕੋ ਸਾਂਝੀ ਡਿਸਕ ਡਰਾਇਵ ਵੇਖਾਉਦਾ ਹੈ। |
ਕਮਾਂਡ ਨੂੰ ਇੱਕ ਰੇਡ (RAID) ਜੰਤਰ ਵਾਂਗ ਇੱਕ ਬਹੁ-ਮਾਰਗ ਜੰਤਰ ਬਣਾਉਣ ਲਈ ਇਸਤੇਮਾਲ ਕੀਤੀ ਜਾਦੀ ਹੈ, ਫ਼ਰਕ ਸਿਰਫ ਇੱਕ ਰੇਡ (RAID) ਪੱਧਰ ਮੁੱਲ ਨੂੰ multipath ਮੁੱਲ ਨਾਲ ਤਬਦੀਲ ਕਰਨ ਦਾ ਹੈ:
mdadm -C /dev/md0 --level=multipath --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1 Continue creating array? yes mdadm: array /dev/md0 started. |
mdadm ਕਮਾਂਡ ਦੀ ਲੰਬਾਈ ਕਰਕੇ, ਇਸ ਨੂੰ ਦੋ ਸਤਰਾਂ ਵਿੱਚ ਵੰਡਿਆ ਗਿਆ ਹੈ।
ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ, ਇੱਕ SCSI LUN ਦੀ ਜੰਤਰ ਚਾਰ ਵੱਖਰੇ SCSI ਜੰਤਰ ਰੱਖਦਾ ਹੈ, ਹਰ ਇੱਕ ਸਟੋਰੇਜ਼ ਨੂੰ ਇੱਕ ਵੱਖਰੇ ਮਾਰਗ ਰਾਹੀਂ ਇਸਤੇਮਾਲ ਕੀਤਾ ਜਾਦਾ ਹੈ। ਇੱਕ ਵਾਰ ਇੱਕ ਜੰਤਰ /dev/md0 ਬਣ ਗਿਆ, ਤਾਂ ਸਭ I/O ਕਾਰਵਾਈਆਂ, ਜੋ ਕਿ /dev/md0 ਲਈ ਇਸ਼ਾਰਾ ਕਰਦੀਆਂ ਹਨ, ਨੂੰ /dev/sda1, /dev/sdb1, /dev/sdc1, ਜਾਂ /dev/sdd1 ਲਈ ਨਿਰਦੇਸ਼ਿਤ ਕਰ ਦਿੱਤਾ ਜਾਦਾ ਹੈ (ਇਸ ਦੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ ਕਿ ਇਸ ਸਮੇਂ ਕਿਹੜਾ ਮਾਰਗ ਸਰਗਰਮ ਹੈ ਅਤੇ ਕਾਰਵਾਈ ਅਧੀਨ ਹੈ)।
/dev/md0 ਦੀ ਸੰਰਚਨਾ ਨੇੜੇ ਤੋਂ ਵੇਖਣ ਲਈ, ਕਮਾਂਡ mdadm --detail /dev/md0 ਰਾਹੀਂ ਇਸ ਨੂੰ ਬਹੁ-ਮਾਰਗ ਜੰਤਰ ਦੇ ਤੌਰ ਤੇ ਜਾਂਚਿਆ ਜਾ ਸਕਦਾ ਹੈ:
/dev/md0: Version : 00.90.00 Creation Time : Tue Mar 2 10:56:37 2004 Raid Level : multipath Array Size : 3905408 (3.72 GiB 3.100 GB) Raid Devices : 1 Total Devices : 4 Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Tue Mar 2 10:56:37 2004 State : dirty, no-errors Active Devices : 1 Working Devices : 4 Failed Devices : 0 Spare Devices : 3 Number Major Minor RaidDevice State 0 8 49 0 active sync /dev/sdd1 1 8 17 1 spare /dev/sdb1 2 8 33 2 spare /dev/sdc1 3 8 1 3 spare /dev/sda1 UUID : 4b564608:fa01c716:550bd8ff:735d92dc Events : 0.1 |
ਕਮਾਂਡ mdadm ਦਾ ਇੱਕ ਗੁਣ ਹੈ ਕਿ ਇਹ ਹੈ ਕਿ ਇਹ ਇੱਕ ਜੰਤਰ (ਇਹ ਇੱਕ ਰੇਡ (RAID) ਲੜੀ ਜਾਂ ਬਹੁ-ਮਾਰਗ ਸੰਰਚਨਾ ਵਿੱਚ ਇੱਕ ਮਾਰਗ ਹੋ ਸਕਦਾ ਹੈ) ਨੂੰ ਇੱਕ ਕਾਰਵਾਈ ਸੰਰਚਨਾ ਵਿੱਚੋਂ ਹਟਾਉਣ ਲਈ ਮਜਬੂਰ ਕਰ ਸਕਦੀ ਹੈ। ਹੇਠ ਦਿੱਤੀ ਉਦਾਹਰਨ ਵਿੱਚ, /dev/sda1 ਨੂੰ ਨਿਕਾਰਾ ਕਰਾਰ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਦ ਇਸ ਨੂੰ ਹਟਾਇਆ ਜਾਵੇਗਾ, ਅਤੇ ਆਖਰ ਇਸ ਨੂੰ ਸੰਰਚਨਾ ਵਿੱਚ ਵਾਪਿਸ ਸ਼ਾਮਿਲ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ। ਬਹੁ-ਮਾਰਗ ਸੰਰਚਨਾ ਵਿੱਚ, ਇਹ ਕਾਰਵਾਈਆਂ ਕਿਸੇ ਸਮੇਂ ਵੀ ਹੋਣ ਵਾਲੀ I/O ਕਾਰਵਾਈ ਨੂੰ ਪ੍ਰਾਪਤ ਨਹੀਂ ਕਰਦੀਆਂ ਹਨ:
# mdadm /dev/md0 -f /dev/sda1 mdadm: set /dev/sda1 faulty in /dev/md0 # mdadm /dev/md0 -r /dev/sda1 mdadm: hot removed /dev/sda1 # mdadm /dev/md0 -a /dev/sda1 mdadm: hot added /dev/sda1 # |