Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

22.3.2. mdadm을 사용하여 Multipath 장치 만들기

RAID 어레이를 만드는 것 외에도 mdadm 을 사용하여 개별 SCSI LUN(디스크 드라이브)에 두 개 이상의 I/O 경로를 지원하는 하드웨어를 활용할 수도 있습니다. 다중 경로 스토리지의 목표는 하드웨어 장애 또는 개별 경로 포화 상황이 발생할 경우 지속적인 데이터 가용성입니다. 이 구성에는 일반적인 SCSI LUN(디스크 드라이브)에 액세스하는 여러 경로(독립 가상 컨트롤러의 역할을 함)가 포함되어 있으므로 Linux 커널은 각 경로를 "through"한 후 각 공유 드라이브를 감지합니다. 즉, /dev/sda 라고도 하는 SCSI LUN(디스크 드라이브)은 특정 구성에 따라 /dev/sdb,/dev/sdc 등으로 액세스할 수도 있습니다.
I/O 경로가 실패하거나 포화 상태가 되면 액세스할 수 있는 단일 장치를 제공하기 위해 mdadm 에는 수준 옵션에 대한 추가 매개 변수가 포함됩니다. 이 매개변수 다중 경로 는 I/O 경로가 실패하는 경우 하나의 path에서 다른 path로 I/O 요청을 다시 라우팅하도록 Linux 커널의 md 계층을 지시합니다.
다중 경로 장치를 생성하려면 /etc/mdadm.conf 파일을 편집하여 하드웨어 구성을 반영하는 DEVICEARRAY 행의 값을 정의합니다.
참고
이전 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 명령줄의 길이로 인해 두 줄로 구분되었습니다.
이 예에서 하드웨어는 4개의 SCSI 장치로 표시되는 하나의 SCSI LUN으로 구성되며 각각 다른 path에 의해 동일한 스토리지에 액세스합니다. 다중 경로 장치 /dev/md0 이 생성되면 /dev/md0을 참조하는 모든 I/O 작업은 /dev/sda1,/dev/sdb1,/dev/sdc1 또는 /dev/sdd1( 현재 활성 및 운영 중인 경로에 따라)로 이동합니다.
실제로 다중 경로 장치를 확인하기 위해 mdadm --detail /dev/md0 명령을 사용하여 /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 의 또 다른 기능은 장치(RAAD 어레이의 멤버 또는 다중 경로 구성의 경로)를 운영 구성에서 제거하는 기능입니다. 다음 예에서 /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
#