요즘 넷백업이란 녀석을 집중공부하고 있다.
Tape 디바이스에 대해 알아 가면서 점점 더 복잡해지는 부분이 있었다.
무엇보다 쉽게 구성하여 테스트해볼 만한 환경을 접하기가 어렵다는것...
그래서 한가지 팁을 공개하도록 하겠다.
일단, NetBAckup 은 RedHAT 및 SUSE Linux 기반으로 구성이 가능하다.
참고로 난 CentOS 6.2 에 Netbackup 7.1 로 구성을 하겠다.
VTL 에 대한 간략한 설명을 먼저 해보자면, Virtual Tape Library 의 약자로,
Tape 디바이스를 가상..이라기보단 추상화가 맞겠다.
즉, 여러종류의 다양한 Disk 및 Tape 디바이스들을 널리 씌이고 Certi 가 나있는,
디바이스로 추상화시켜 변환되어 보이게 만드는 것으로,
리눅스에선 MHVTL 이라는 오픈소스 패키지가 제공되고 있다.
이 패키지의 제작자는 Symantec 의 Mark Harvey 라는 개발자인데,
히스토리쪽 보면, 넷백업 테스트를 하려고 열라 고민중에
VTL 드라이버를 만들어야 겠다는 필요성을 느껴 뚝딱 하고 만들었다고 한다.
어쨋든 이녀석은 이곳 에서 다운로드가 가능하며, 추가로 내가 따로 패키징한
RPM 이나 source RPM 을 이용해도 좋을것이다.
이녀석을 설치하게 되면, /proc/scsi/scsi 밑에
이런식으로 STK 사의 로봇 (Tape 미디어를 슬롯에 꽂아주고 빼주는 기계) 과,
Tape Driver 들이 생성됨을 볼 수 있다. (mhvtl 모듈이 올라간다.)
실제 테입들은 기본적으론 /opt/mhvtl 에 각 미디어 바코드별로 생성되며,
Device 종류와 갯수, 그리고 Media 들에 대한 정의는 /etc/mhvtl/ 에
device.conf 와 library_contents.10 등에 저장된다.
library_contents 뒤의 숫자는 Robot 의 Library 숫자이다.
넷백업에 대한 설치 및 설정은 기본매뉴얼들에 다 나와 있으니 넘어가고,
실제 이 테입디바이스들이 정상 작동을 하는지 확인 해 보도록 하자.
mtx 나, mt 명령으로 Tape 디바이스들에 대한 상태를 엿볼 수 있다.
보면 DR_OPEN 이라고 나오는데 이것은 미디어가 현재 로드되지 않고,
비어있는 상태임을 뜻한다.
Tar 를 통해 직접 기록하면 어찌되는지 확인 해 보도록 하자.
압축이 정상적으로 됨을 확인 할 수 있으며, /opt/mhvtl/E01001L4 의
data 파일이 증가되어 있음을 확인 할 수 있다.
다음과 같이 간단히 복구가 가능하다.
넷백업에서도 정상적으로 백업 복구가 가능하다.
복구또한 잘 됨을 믿어 의심치 말자.
테입 드라이브의 속성을 살짝 보자.
재밌지 않는가?
자 그럼 이걸 또 어떻게 사용 할 수 있을까? 잘 생각해보자,
난 실제 테입은 없으나, NetBackup 에서 실제 FC 를 통해 San Disk 나 San Tape 을
사용해 보고 싶다. 그렇다면 간단하다. iScsi 를 통해 스토리지를 VTL 드라이버로
매핑시켜주거나, 실제 FC 스토리지를 직접 매핑시켜주면 된다.
이것을 위해서는 scst 라는 패키지가 필요하며,
여기 서 다운로드가 가능하다.
이녀석 역시 직관적인 설정으로 해결이 된다.
/etc/iscsi-sctd.conf 나 /etc/scst.conf 에 다음과같이 Tape 의 버스를 매핑시켜주면 된다.
cat /etc/iscsi-scstd.conf
Target iqn.2010-01.us.nimsa:0:1:0:0
Target iqn.2010-01.us.nimsa:0:1:1:0
Target iqn.2010-01.us.nimsa:0:2:0:0
Target iqn.2010-01.us.nimsa:0:2:1:0
Target iqn.2010-01.us.nimsa:0:2:2:0
cat /etc/scst.conf
[HANDLER changer]
DEVICE 0:1:0:0
DEVICE 0:2:0:0
DEVICE 0:3:0:0
DEVICE 0:4:0:0
DEVICE 0:5:0:0
DEVICE 0:6:0:0
DEVICE 0:7:0:0
[HANDLER tape]
DEVICE 0:1:1:0
DEVICE 0:2:1:0
DEVICE 0:2:2:0
DEVICE 0:2:3:0
[GROUP Default_iqn.2010-01.us.nimsa:0:1:0:0]
[GROUP Default_iqn.2010-01.us.nimsa:0:1:1:0]
[GROUP Default_iqn.2010-01.us.nimsa:0:2:0:0]
[GROUP Default_iqn.2010-01.us.nimsa:0:2:1:0]
[GROUP Default_iqn.2010-01.us.nimsa:0:2:2:0]
[GROUP Default_iqn.2010-01.us.nimsa:0:2:3:0]
[ASSIGNMENT Default_iqn.2010-01.us.nimsa:0:1:0:0]
DEVICE 0:1:0:0,0
[ASSIGNMENT Default_iqn.2010-01.us.nimsa:0:1:1:0]
DEVICE 0:1:1:0,0
[ASSIGNMENT Default_iqn.2010-01.us.nimsa:0:2:0:0]
DEVICE 0:2:0:0,0
[ASSIGNMENT Default_iqn.2010-01.us.nimsa:0:2:1:0]
DEVICE 0:2:1:0,0
[ASSIGNMENT Default_iqn.2010-01.us.nimsa:0:2:2:0]
DEVICE 0:2:2:0,0
# service scst start
# service iscsi-scst start
심플하다 이로써 나는 VTL 드라이버를 이용해, 회사에 있는 EVA 스토리지를
Tape 장비처럼 마음대로 사용이 가능 해 졌다.
이 글에서의 핵심은 사실 MHVTL 에 대한 소개가 주가 된다는 것을 눈치 채시길 바라며,
mhvtl 에 대한 삽질은 매우 간단한 편이니 가볍게 직접 해보는걸 추천하겠으며,
Tape 장치를 이용한 장치 상태 테스트 방법과 mhvtl 의 컨피그 만 맛뵈기로
보여주고 긴 글 마무리 하려고 한다.
PS : 첨부한 SRPM 에대한 자잘한 오류들은 알아서 처리하시길 바란다. ()()(먼산~)