# mpathconf --enable
-> /etc/multipath.conf 생성 확인 후 작업 진행
# multipath -v2
Sep 09 02:44:05 | mpatha: ignoring map
Sep 09 02:44:05 | mpathb: ignoring map
create: mpathc (1IET 00020001) undef IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=undef
`-+- policy='round-robin 0' prio=1 status=undef
`- 4:0:0:1 sdc 8:32 undef ready running
create: mpathd (1IET 00020002) undef IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=undef
`-+- policy='round-robin 0' prio=1 status=undef
`- 4:0:0:2 sdd 8:48 undef ready running
create: mpathe (1IET 00020003) undef IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=undef
`-+- policy='round-robin 0' prio=1 status=undef
`- 4:0:0:3 sde 8:64 undef ready running
-> OS영역 디스크 인식 여부 확인
# multipath -ll
mpathe (1IET 00020003) dm-3 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
`- 4:0:0:3 sde 8:64 active ready running
mpathd (1IET 00020002) dm-2 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
`- 4:0:0:2 sdd 8:48 active ready running
mpathc (1IET 00020001) dm-1 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
`- 4:0:0:1 sdc 8:32 active ready running
-> 스토리지 볼륨 인식 확인(용량 등)
# vi /etc/multipath/bindings
# Multipath bindings, Version : 1.0
# NOTE: this file is automatically maintained by the multipath program.
# You should not need to edit this file in normal circumstances.
#
# Format:
# alias wwid
#
mpatha 1IET 00020001 -> data1 1IET 00020001
mpathb 1IET 00020002 -> data22 1IET 00020002
mpathc 1IET 00020003 -> data33 1IET 00020003
-> mpatha, mpathb 형식으로 인식된 디바이스 명을 설정에 맞게 변경 후 저장
# vi /etc/multipath.conf
blacklist {
wwid VB432af6ad-af8202c3
wwid VB71a3ccfe-cd6c20c7
}
-> USB Disk 또는 OS영역 Disk wwid 확인 후 blacklist 처리
# multipath -F
-> 전체 Flush
# multipath -F
Sep 09 03:35:10 | data1: map in use
-> 기존 볼륨이 사용 중일 경우 위와 같은 메시지 발생
# multipath -f mpatha
-> 사용 중일 경우 추가로 인식된 디바이스명만 따로 수행
# multipath -v2
-> 수정된 bindings 설정 내용으로 재 인식
# multipath -ll
data33 (1IET 00020003) dm-3 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
`- 4:0:0:3 sde 8:64 active ready running
data22 (1IET 00020002) dm-2 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
`- 4:0:0:2 sdd 8:48 active ready running
data1 (1IET 00020001) dm-1 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
`- 4:0:0:1 sdc 8:32 active ready running
# 이후 LVM 생성 작업 진행
PV 생성 작업
pvcreate /dev/mapper/data[1-9] /dev/mapper/data1[0-9]
VG 생성 작업
vgcreate DATA01 /dev/mapper/data[1-9] /dev/mapper/data1[0-9]
또는 vgcreate DATA01 /dev/mapper/data1 /dev/mapper/data2
vgcreate DATA02 /dev/mapper/data3 /dev/mapper/data4
-> 스토리지 할당 볼륨그룹명은 VG10부터 시작
LV 생성 작업
lvcreate -l 100%FREE -n APPDATA DATA01 -i 2
lvcreate -l 100%FREE -n DBDATA DATA02 -i 2
lvcrete -L 5120M -n LOG DATA01 -i 10
vgcreate 작업 시 생성한 Device 수 만큼 “-i 2” 형식으로 옵션 추가
파일 시스템 포맷 및 튜닝
▶ 포맷 시 i-node 값 설정하여 포맷
mkfs.ext4 /dev/mapper/DATA01-APPDATA -i 2048
mkfs.ext4 /dev/mapper/DATA02-DBDATA -i 4096
▶ 파일 시스템 튜닝 작업
tune4fs -c -1 -i 0 /dev/mapper/DATA01-APPDATA
마운트 지점 생성 및 fstab 추가
▶ 마운트 지점 생성
mkdir /APPDATA or mkdir /{APPDATA,DBDATA}
▶ /etc/fstab에 추가
/dev/mapper/DATA01-APPDATA /APPDATA ext4 defaults 0 0
▶ 파일 시스템 마운트
mount -a
### 설정파일 내용 ###
# /etc/multipath.conf
-> 멀티패스 설정파일.
-> 설정파일이 없을경우 /usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf 에서 복사해서 사용
# vi /etc/multipath.conf
## Use user friendly names, instead of using WWIDs as names.
defaults {
user_friendly_names yes
-> wwid 대신 friendly name을 사용하여 alias를 지정할수 있도록 설정
}
#defaults {
# udev_dir /dev
-> udev 가 생성되는 디렉토리 지정
# polling_interval 10
-> 두개의 경로을 체크 간격 지정 (초단위)
# selector "round-robin 0"
-> I/O 실행에 사용할 경로 설정
# path_grouping_policy multibus
-> failover = 우선 순위 그룹 당 1 개의 경로
multibus = 1 개의 우선 순위 그룹에 있는 유효한 모든 경로
group_by_serial = 검색된 시리얼 번호 당 1 개의 우선 순위 그룹
group_by_prio = 경로 우선 순위 값 당 1 개의 우선 순위 그룹
group_by_node_name = 대상 노드 이름 당 1 개의 우선 순위 그룹
# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
# prio alua
# 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 "^hd[a-z]"
#}
multipaths {
multipath {
wwid 3600c0ff0001160a2e61c114d01000000
-> wwwid 값 넣기
alias mpath1
-> wwwid값에 따른 디바이스명 설정
}
multipath {
wwid 3600c0ff0001160a2c416114d01000000
alias mpath2
}
multipath {
wwid 3600c0ff0001160a2ac16114d01000000
alias mpath3
}
}
'Linux > CentOS & RHEL' 카테고리의 다른 글
[KVM] KVM 설치 및 기본구성(CentOS / RHEL 6.x) (0) | 2020.09.29 |
---|---|
[KVM] KVM 설치 및 기본구성(CentOS / RHEL 7.x) (0) | 2020.09.29 |
[KVM] KVM 사용 명령어 (0) | 2020.09.28 |
[Tip] I/O Scheduler Configuration(cfq, deadline) (0) | 2020.09.28 |
[Network] IP Alias 설정 - eth (0) | 2020.09.28 |