Enterprise Infrastructure Intelligence ● Certified engineers online · Fast response guaranteed
백업/스토리지

dm-multipath Multiplexing: 멀티경로 I/O 추상화의 아키텍처와 작동 원리

dm-multipath는 서버와 스토리지 간 복수의 물리 경로를 단일 논리 디바이스로 통합하는 Linux 커널 수준의 기술로, Active/Passive와 Active/Active 두 가지 구성을 통해 장애 대응과 성능 최적화를 동시에 제공합니다. 경로 선택 알고리즘, I/O 재시도 메커니즘, 실시간 경로 모니터링을 통해 투명한 다중경로 추상화를 구현합니다.

2026.09.02  ·  42회  · 

dm-multipath의 아키텍처: 커널과 사용자 공간의 협력 구조

dm-multipath는 Linux 커널의 Device Mapper 프레임워크 위에 구축되며, 물리적 SAN 연결(케이블, 스위치, 컨트롤러)을 통한 여러 I/O 경로를 하나의 가상 블록 디바이스(/dev/mapper/mpathN)로 통합합니다. 이 다중화 계층은 커널 모듈과 사용자 공간 데몬의 이분 구조로 동작합니다. dm_multipath 커널 모듈은 I/O 요청 재라우팅과 경로 그룹 장애 조치를 담당하며, multipathd 데몬은 경로 상태를 지속적으로 모니터링하고 장애 감지 시 경로 그룹 전환을 조율합니다.

경로 선택과 I/O 분산의 작동 원리

dm-multipath는 두 가지 주요 구성 모드를 지원합니다. Active/Passive 구성에서는 주어진 시점에 활성 경로 그룹만 I/O를 처리하며, 그룹 내 모든 경로가 실패할 경우에만 대기 그룹으로 전환됩니다. Active/Active 구성에서는 모든 경로에 걸쳐 I/O를 분산하며, Round-Robin, Service-Time 또는 동적 로드 밸런싱 정책에 따라 다음 I/O가 전송될 경로를 결정합니다. 경로 우선순위는 저장소 제어기의 SCSI-3 ALUA 설정, 네트워크 지연, 대기 중인 I/O 요청 수 같은 인자에 의해 동적으로 계산됩니다.

I/O 실패 처리와 투명한 재시도 메커니즘

dm-multipath는 한 경로에서의 I/O 실패를 감지하면 자동으로 같은 LUN에 대한 다른 경로로 요청을 재전송합니다. 이 재시도는 전용 멀티경로 워커 스레드 컨텍스트에서 수행되어 SCSI 미드레이어 또는 완료 핸들러의 소프트 인터럽트 문맥에서의 블로킹을 방지합니다. 모든 경로가 실패한 후에만 애플리케이션에 I/O 오류가 반환되며, queue_if_no_path 옵션을 활성화하면 경로 복구 대기 중 I/O를 큐에 보관할 수 있습니다.

실무 주의점: 경로 모니터링과 구성의 함정

경로 모니터링 주기(기본값 5초)와 no_path_retry 설정이 총 I/O 큐 시간을 결정하므로, 예를 들어 no_path_retry=6이면 최대 약 30초간 I/O가 큐에 머물 수 있습니다. LVM을 사용할 때는 주의가 필요한데, 배열이 I/O 수신 시 능동적으로 경로를 전환하는 경우 LVM 스캔으로 인한 반복적인 장애 조치와 복구가 발생할 수 있으므로 multipath.conf와 lvm.conf에서 기저 디바이스를 필터링해야 합니다. 또한 dm-multipath는 경로 자체의 장애만 보호하며, 저장소 매체 오류 같은 디바이스 내부 결함은 감지하지 못합니다.

WIKIDATA WORKSTATION
AI·렌더링에 최적화된
전문가용 워크스테이션
NVIDIA RTX GPU · 최대 192GB 메모리 · ECC 지원