Multipath 구성하기
발췌글 : http://cafe.daum.net/redhat/DK8U/26?docid=1HjQ8DK8U2620091116163647
Multipath 구성하기
물론 이는 클라이언트 10.0.0.10에서 작업되어야 한다.
step 0>
fdisk로 san disk의 볼륨의 확인한후 같은 디스크인지 확인한다.
scsi_id -g -u -s /block/sdc
scsi_id -g -u -s /block/sdb
위의 디스크 이름은 임의적으로 변경필요함. 붙은 명칭을 넣을 것.
step1>패키지 확인
# rpm -qa | grep device-mapper-multipath
device-mapper-multipath-0.4.7-17.el5
패키지가 없는 경우 설치 명령
# yum install device-mapper-multipath
step2>multipath.conf 설정
/etc/multipath.conf 에서 아래의 설정을 한다.
아래의 세개의 단락의 주석을 제거한다.
## Use user friendly names, instead of using WWIDs as names.
defaults {
user_friendly_names yes
}
defaults {
udev_dir /dev
polling_interval 10
selector “round-robin 0”
path_grouping_policy failover
getuid_callout “/sbin/scsi_id -g -u -s /block/%n”
prio_callout /bin/true
path_checker readsector0
rr_min_io 100
max_fds 8192
rr_weight priorities
failback immediate
no_path_retry fail
user_friendly_names yes
}
blacklist {
#wwid 26353900f02796769
devnode “^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*”
devnode “^sda*”
}
만약 스토리지가 위의 defaults 파트로 인식되지 않는 경우 아래의 파일을 참고하여 스토리지별 설정을 확인한 후
아래에 기술되어 있는 설정을 복사하여 /etc/multipath.conf 파일에 defaults 대신 기술한다.
/usr/share/doc/device-mappermultipathd-xxxx/multipath.conf.annotated
아래의 url을 참고
How do I configure device-mapper-multipath with an EMC Clariion SAN?
http://kbase.redhat.com/faq/docs/DOC-3968
step3>서비스 시작 및 시작시 기동여부설정
chkconfig multipathd on
[root@localhost ~]# service multipathd restart
Device /dev/sda2 not found
Command failed
Stopping multipathd daemon: [FAILED]
Starting multipathd daemon: [ OK ]
step4 >서비스 여부 확인
[root@localhost ~]# ls -al /dev/mapper/
total 0
drwxr-xr-x 2 root root 80 Nov 16 05:01 .
drwxr-xr-x 12 root root 4400 Nov 16 05:01 ..
crw——- 1 root root 10, 63 Nov 16 04:39 control
brw-rw—- 1 root disk 253, 0 Nov 16 05:01 mpath0
[root@localhost ~]# multipath -v2
create: mpath0 (S_beaf11) IET,VIRTUAL-DISK
[size=102M][features=0][hwhandler=0][n/a]
\_ round-robin 0 [prio=0][undef]
\_ 3:0:0:1 sdb 8:16 [undef][ready]
\_ round-robin 0 [prio=0][undef]
\_ 4:0:0:1 sdc 8:32 [undef][ready]
[root@localhost ~]# multipath -ll
mpath0 (S_beaf11) dm-0 IET,VIRTUAL-DISK
[size=102M][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=0][active]
\_ 3:0:0:1 sdb 8:16 [active][ready]
\_ round-robin 0 [prio=0][enabled]
\_ 4:0:0:1 sdc 8:32 [active][ready]
step5 >mount 후 os에서 사용
format 후 multipath 장치를 사용
mkfs.ext3 /dev/mapper/mpath# (#은 0,1,2…)
또는
kpartx -a /dev/mapper/mpath# (#은 0,1,2…)
fdisk는 multipath devices에 사용될 수 없습니다.파티션을 만들기 위해서는 기본이 되는 디스크에 사용하십시요.( 예) /dev/sdc)
device-mapper-multipath가 파티션에 대해서 /dev/mapper/mpath# 장치를 만들기 위해서 장치를 매핑할때 위의 명령을 실행하세요
mount를 위한 수정
[root@localhost /]# vi /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
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
/dev/mapper/mpath0 /mnt ext3 defaults 1 2
setp6> 이중화 TEST
클라이언트에서 multipath 상태를 확인
watch –interval=2 multipath -ll
mpath0 (S_beaf11) dm-0 IET,VIRTUAL-DISK
[size=102M][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=0][active]
\_ 3:0:0:1 sdb 8:16 [active][ready]
\_ round-robin 0 [prio=0][enabled]
\_ 4:0:0:1 sdc 8:32 [active][ready]
서버측에서 ifdown eth1 (10.0.0.52) 을 내리는 경우 아래와 같이 4:0:0:1 sdc 8:32 [failed][faulty] 가 나타난다.
이는 iscsi target볼륨을 마운트할때 각각 ip로 마운트 했기 때문에 10.0.0.52에 해당하는 ip로의 LUN path를 잃었기 때문이다.
클라이언트 에서 확인
watch –interval=2 multipath -ll
mpath0 (S_beaf11) dm-0 IET,VIRTUAL-DISK
[size=102M][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=0][active]
\_ 3:0:0:1 sdb 8:16 [active][ready]
\_ round-robin 0 [prio=0][enabled]
\_ 4:0:0:1 sdc 8:32 [active][faulty]
실제 테스트에서는 fc케이블을 빼본다.
기타(lvm으로 사용할때..)
lvm으로 만들경우 /dev/mapper/mpath0등을 각각 pvcreate시에 하나의 물리적디스크로 사용하여 lvm을 구성할 것.
< 참고 >
How do I install Red Hat Enterprise Linux 5 to boot from SAN using device-mapper-multipath?
http://kbase.redhat.com/faq/docs/DOC-17644
How do I make device mapper multipath ignore my local disks when generating the multipath maps in Red Hat Enterprise Linux 4?
http://kbase.redhat.com/faq/docs/DOC-4042
How do I setup device-mapper multipathing in Red Hat Enterprise Linux 4?
http://kbase.redhat.com/faq/docs/DOC-3691
How do I find the FC ID (WWN) of a disk/LUN on Red Hat Enterprise Linux 5?
http://kbase.redhat.com/faq/docs/DOC-19446
What is the output of “multipath -ll” command?
http://kbase.redhat.com/faq/docs/DOC-2644