mhvtl 설정.

설치는 https://blog.boxcorea.com/wp/archives/1300

mhvtl 설정화일은 /etc/mhvtl 아래에 있다.
세 개의 설정화일이 있으며, 매우 단순하다.

1. 디바이스 설정(/etc/mhvtl/device.conf)

mhvtl을 설치하면, 기본적으로 2개의 library와 library당 4개의 drive가 잡히도록 설정되어 있다.

# lsscsi -g
[0:0:0:0] disk ATA QEMU HARDDISK 1.5. /dev/sda /dev/sg0
[2:0:0:1] disk QEMU QEMU HARDDISK 1.5. /dev/sdb /dev/sg11
[5:0:0:0] mediumx STK L700 0105 /dev/sch0 /dev/sg9
[5:0:1:0] tape IBM ULT3580-TD5 0105 /dev/st0 /dev/sg1
[5:0:2:0] tape IBM ULT3580-TD5 0105 /dev/st1 /dev/sg2
[5:0:3:0] tape IBM ULT3580-TD4 0105 /dev/st2 /dev/sg3
[5:0:4:0] tape IBM ULT3580-TD4 0105 /dev/st3 /dev/sg4
[5:0:8:0] mediumx STK L80 0105 /dev/sch1 /dev/sg10
[5:0:9:0] tape STK T10000B 0105 /dev/st4 /dev/sg5
[5:0:10:0] tape STK T10000B 0105 /dev/st5 /dev/sg6
[5:0:11:0] tape STK T10000B 0105 /dev/st6 /dev/sg7
[5:0:12:0] tape STK T10000B 0105 /dev/st7 /dev/sg8

불필요한 드라이브와 라이브러리를 제거하기 위해서는 device.conf 화일을 수정해 주면 된다. 화일을 수정하기 전에, mhvtl 서비스를 정지해야한다.

# /etc/init.d/mhvtl stop
shutdown of mhvtl
   Sending exit to 11
   Sending exit to 12
   Sending exit to 10

나는 아래와같이 1 library, 2 drive로 설정했다.

Library: 10 CHANNEL: 00 TARGET: 00 LUN: 00
 Vendor identification: STK
 Product identification: L700
 Unit serial number: XYZZY_A
 NAA: 10:22:33:44:ab:00:00:00
 Home directory: /opt/mhvtl
 Backoff: 400
# fifo: /var/tmp/mhvtl

Drive: 11 CHANNEL: 00 TARGET: 01 LUN: 00
 Library ID: 10 Slot: 01
 Vendor identification: IBM
 Product identification: ULT3580-TD5
 Unit serial number: XYZZY_A1
 NAA: 10:22:33:44:ab:00:01:00
 Compression: factor 1 enabled 1
 Compression type: lzo
 Backoff: 400
# fifo: /var/tmp/mhvtl

Drive: 12 CHANNEL: 00 TARGET: 02 LUN: 00
 Library ID: 10 Slot: 02
 Vendor identification: IBM
 Product identification: ULT3580-TD5
 Unit serial number: XYZZY_A2
 NAA: 10:22:33:44:ab:00:02:00
 Compression: factor 1 enabled 1
 Compression type: lzo
 Backoff: 400
# fifo: /var/tmp/mhvtl

mhvtl 서비스를 다시 실행하고, lsscsi커맨드로 확인하면,

# /etc/init.d/mhvtl start
vtllibrary process PID is 1406
[root@CentOS2 G03039TA]# lsscsi
[0:0:0:0]    disk    ATA      QEMU HARDDISK    1.5.  /dev/sda
[2:0:0:1]    disk    QEMU     QEMU HARDDISK    1.5.  /dev/sdb
[4:0:0:0]    mediumx STK      L700             0105  /dev/sch0
[4:0:1:0]    tape    IBM      ULT3580-TD5      0105  /dev/st0
[4:0:2:0]    tape    IBM      ULT3580-TD5      0105  /dev/st1

위와같이 하나의 라이브러리(LibraryID 10)와, 두개의 tape 드라이브가 생긴것을 볼 수 있다.

2. 라이브러리 설정(/etc/library_contents.X)
위에서 라이브러리의 ID가 10번으로 설정되어 있다. /etc/mhvtl 디렉토리의 library_contents.10 화일을 보면 아래와 같이 설정되어 있다.

# cat /etc/mhvtl/library_contents.10

Drive 1:
Drive 2:
Drive 3:
Drive 4:

Picker 1:

MAP 1:
MAP 2:
MAP 3:
MAP 4:

# Slot 1 - ?, no gaps
# Slot N: [barcode]
# [barcode]
# a barcode is comprised of three fields: [Leading] [identifier] [Trailing]
# Leading "CLN" -- cleaning tape
# Leading "W" -- WORM tape
# Leading "NOBAR" -- will appear to have no barcode
# If the barcode is at least 8 character long, then the last two characters are Trailing
# Trailing "S3" - SDLT600
# Trailing "X4" - AIT-4
# Trailing "L1" - LTO 1, "L2" - LTO 2, "L3" - LTO 3, "L4" - LTO 4, "L5" - LTO 5
# Trailing "LT" - LTO 3 WORM, "LU" - LTO 4 WORM, "LV" - LTO 5 WORM
# Trailing "L6" - LTO 6, "LW" - LTO 6 WORM
# Trailing "TA" - T10000+
# Trailing "TZ" - 9840A, "TY" - 9840B, "TX" - 9840C, "TW" - 9840D
# Trailing "TV" - 9940A, "TU" - 9940B
# Trailing "JA" - 3592+
# Trailing "JB" - 3592E05+
# Trailing "JW" - WORM 3592+
# Trailing "JX" - WORM 3592E05+
# Trailing "D7" - DLT7000 media (DLT IV)
#
Slot 1: E01001L4
Slot 2: E01002L4
Slot 3: E01003L4
Slot 4: E01004L4
Slot 5: E01005L4
Slot 6: E01006L4
Slot 7: E01007L4
Slot 8: E01008L4
Slot 9: E01009L4
Slot 10: E01010L4
Slot 11: E01011L4
Slot 12: E01012L4
Slot 13: E01013L4
Slot 14: E01014L4
Slot 15: E01015L4
Slot 16: E01016L4
Slot 17: E01017L4
Slot 18: E01018L4
Slot 19: E01019L4
Slot 20: E01020L4
Slot 21:
Slot 22: CLN101L4
Slot 23: CLN102L5
Slot 24:
Slot 25:
Slot 26:
Slot 27:
Slot 28:
Slot 29:
Slot 30: F01030L5
Slot 31: F01031L5
Slot 32: F01032L5
Slot 33: F01033L5
Slot 34: F01034L5
Slot 35: F01035L5
Slot 36: F01036L5
Slot 37: F01037L5
Slot 38: F01038L5
Slot 39: F01039L5

드라이브 3, 4는 설정하지 않았으므로, 주석처리 한다.(map 3,4 도 주석처리)

drive와 map을 조정하면 더 많은 tape drive를 설정 할  수 있다. tape 바코드 설정은 설정화일에 의하면,
[Leading] [identifier] [Trailing] 식으로 설정한다.
위에서 드라이브가 ULT3580-TD5 두개로 설정되어 있으므로 테이프도 LTO5 로 변경한다. 슬롯 1-20과 22번의 클리닝 테이프 가 LTO4로 설정되어 있으므로, LTO5로 변경하고, 서비스를 재 실행한다.

최종적으로 아래와 같이 라이브러리를 설정하였다.

# cat library_contents.10

Drive 1:
Drive 2:
#Drive 3:
#Drive 4:

Picker 1:

MAP 1:
MAP 2:
#MAP 3:
#MAP 4:

# Slot 1 - ?, no gaps
# Slot N: [barcode]
# [barcode]
# a barcode is comprised of three fields: [Leading] [identifier] [Trailing]
# Leading "CLN" -- cleaning tape
# Leading "W" -- WORM tape
# Leading "NOBAR" -- will appear to have no barcode
# If the barcode is at least 8 character long, then the last two characters are Trailing
# Trailing "S3" - SDLT600
# Trailing "X4" - AIT-4
# Trailing "L1" - LTO 1, "L2" - LTO 2, "L3" - LTO 3, "L4" - LTO 4, "L5" - LTO 5
# Trailing "LT" - LTO 3 WORM, "LU" -  LTO 4 WORM, "LV" - LTO 5 WORM
# Trailing "L6" - LTO 6, "LW" - LTO 6 WORM
# Trailing "TA" - T10000+
# Trailing "TZ" - 9840A, "TY" - 9840B, "TX" - 9840C, "TW" - 9840D
# Trailing "TV" - 9940A, "TU" - 9940B
# Trailing "JA" - 3592+
# Trailing "JB" - 3592E05+
# Trailing "JW" - WORM 3592+
# Trailing "JX" - WORM 3592E05+
# Trailing "D7" - DLT7000 media (DLT IV)
#
Slot 1: X01001L5
Slot 2: X01002L5
Slot 3: X01003L5
Slot 4: X01004L5
Slot 5: X01005L5
Slot 6: X01006L5
Slot 7: X01007L5
Slot 8: X01008L5
Slot 9: X01009L5
Slot 10: X01010L5
Slot 11: E01011L5
Slot 12: E01012L5
Slot 13: E01013L5
Slot 14: E01014L5
Slot 15: E01015L5
Slot 16: E01016L5
Slot 17: E01017L5
Slot 18: E01018L5
Slot 19: NOBAR01019L5
Slot 20: NOBAR01020L5
Slot 21:
Slot 22: CLN101L5
Slot 23: CLN102L5
Slot 24:
Slot 25:
Slot 26:
Slot 27:
Slot 28:
Slot 29:
Slot 30: F01030L5
Slot 31: F01031L5
Slot 32: F01032L5
Slot 33: F01033L5
Slot 34: F01034L5
Slot 35: F01035L5
Slot 36: F01036L5
Slot 37: F01037L5
Slot 38: F01038L5
Slot 39: F01039L5

3. mhvtl 설정(/etc/mhvtl/mhvtl.conf)
/etc/mhvtl/mhvtl.conf 화일은 설정화일의 위치와 미디어의 용량, 그리고 logging 수준을 설정하도록 되어 있다.
기본적으로 미디어 크기가 500M로 설정되어 있는데, 이 크기를 바꿈으로써, 테이프의 용량을 조정 할 수 있다. 나는 아래와같이 설정하였다.

# cat mhvtl.conf

# Home directory for config file(s)
MHVTL_CONFIG_PATH=/etc/mhvtl

# Default media capacity (500 M)
#CAPACITY=500
CAPACITY=100

# Set default verbosity [0|1|2|3]
VERBOSE=1

# Set kernel module debuging [0|1]
#VTL_DEBUG=0
VTL_DEBUG=1

4. 기타
미디어 위치: 미디어의 위치는 /opt/mhvtl 이다.(version 1.5에서)

—-
CentOS 7 에 mhvtl 설치 및 설정 영상(2017.3) 추가

 

참고. CentOS7에서 mhvtl 커널 모듈 컴파일시 아래 에러 발생할 경우.

# make
make -C /lib/modules/3.10.0-514.el7.x86_64/build SUBDIRS=/root/mhvtl-1.5/kernel modules
make: *** /lib/modules/3.10.0-514.el7.x86_64/build: No such file or directory.  Stop.
make: *** [default] Error 2

심볼릭 링크를 아래처럼 다시 만들어준다.

# cd /lib/modules/3.10.0-514.el7.x86_64/
# rm -f build
# ln -s /usr/src/kernels/3.10.0-514.10.2.el7.x86_64/ build

답글 남기기

Your email address will not be published.