以前「オープンソース版もあるVTLソフトウェアQUADSTOR」という記事を作成したが、使ってはいなかった。
よく見てみたら、ローカルのテープ装置/テープライブラリとしてエミュレートしてくれる機能もあったので、NetBackup Linuxでテープライブラリを使う案件が来たついでに、練習のためQUADSTORを使ってみた。
QUADSTORの注意点
- CGIを使うWebインタフェースのプログラム(標準はポート80使用)
- Webインタフェースに認証機能がないので要注意(アクセスすれば誰でも消せます)
- SELinux環境下で使う場合、後述のSELinuxコマンドを実行すること
- 仮想テープのデータを保存する領域はRAWデバイスディスクが必要(OSからマウントされない)
- QUADSTORの起動に時間がかかる(うちの環境では10分かかった)
セットアップ実施
セットアップは簡単で、「Installation/Upgrading on RHEL/CentOS 6/7, SLES 12 SP2 and Debian 7/8」に書いてあるものをそのまま実行した形である。
# yum install httpd gcc perl kernel-devel sg3_utils # rpm -ivh quadstor-vtl-ext-3.0.31.1-rhel.x86_64.rpm
プログラムの自動起動で以下を実行
# systemctl enable httpd.service # systemctl enable quadstorvtl.service
SELinux環境で動作するように下記の設定を実行
# setsebool -P httpd_enable_cgi 1 # semanage permissive -a httpd_t
なお「semanage」は標準ではインストールされていないので「yum install policycoreutils-python」を実行して、追加インストールする必要がある。
Webインタフェースにアクセスする為に、firewallに穴を開けます。
# firewall-cmd --permanent --zone=public --add-service=http
iSCSIデバイスとして動作するので、iSCSIで使用するポートについても設定します。
# firewall-cmd --permanent --zone=public --add-service=iscsi-target
また、Webインタフェースには認証機能がなく、誰でも使用できる状態であるため「Accessing the Web Management Interface」の「SECURING ACCESS TO THE WEB INTERFACE」に記載されているように.htpasswdを使ってアクセス制限をかけましょう。
このあと、Webインタフェースにアクセスすると、以下の様な感じの画面がでてきます。(なお、これはすでにVTL登録済みの状態です)
「Physical Storage」から「Rescan」するとマウントしていないRAWディスクが表示されますので、それを登録します。
「Virtual Libraries」から「Add VTL」よりテープチェンジャーを作成します。
登録したテープチェンジャーは下記の様に見えます。
iSCSIのテープ装置としては作成されましたので、Linuxサーバから接続してみます。
CentOS7だったら、まずは「yum install iscsi-initiator-utils」で接続に必要なソフトウェアをインストールします。
続いて、iSCSI接続を永続化するため「systemctl enable iscsid」を実行します。
「iscsiadm -m discovery -t sendtargets -p <IPアドレス>」を実行し、検出したあと、「iscsiadm -m node –login -p <IPアドレス>」でログインします。
接続するとLinux上からは下記の様に見えるようになります。
# cat /proc/scsi/scsi <略> Host: scsi34 Channel: 00 Id: 00 Lun: 00 Vendor: IBM Model: ULT3580-TD1 Rev: D711 Type: Sequential-Access ANSI SCSI revision: 06 Host: scsi33 Channel: 00 Id: 00 Lun: 00 Vendor: ADIC Model: Scalar 24 Rev: 6.24 Type: Medium Changer ANSI SCSI revision: 03 #
NetBackupのコマンドで確認してみると、下記の様にみえました。
# /usr/openv/volmgr/bin/tpautoconf -t TPAC60 IBM ULT3580-TD1 D711 2688700001 -1 -1 -1 -1 /dev/nst0 - - # /usr/openv/volmgr/bin/tpautoconf -r TPAC60 ADIC Scalar 24 6.24 26887167A2DC4D54B8910000 -1 -1 -1 -1 /dev/sg4 - - # /usr/openv/volmgr/bin/scan ************************************************************ *********************** SDT_TAPE ************************ *********************** SDT_CHANGER ************************ ************************************************************ ------------------------------------------------------------ Device Name : "/dev/sg4" Passthru Name: "/dev/sg4" Volume Header: "" Port: -1; Bus: -1; Target: -1; LUN: -1 Inquiry : "ADIC Scalar 24 6.24" Vendor ID : "ADIC " Product ID : "Scalar 24 " Product Rev: "6.24" Serial Number: "26887167A2DC4D54B8910000" WWN : "" WWN Id Type : 0 Device Identifier: "ADIC 26887167A2DC4D54B8910000" Device Type : SDT_CHANGER NetBackup Robot Type: 8 Removable : Yes Device Supports: SCSI-3 Number of Drives : 1 Number of Slots : 20 Number of Media Access Ports: 1 Drive 1 Serial Number : "2688700001" Flags : 0x0 Reason: 0x0 ------------------------------------------------------------ Device Name : "/dev/nst0" Passthru Name: "/dev/sg3" Volume Header: "" Port: -1; Bus: -1; Target: -1; LUN: -1 Inquiry : "IBM ULT3580-TD1 D711" Vendor ID : "IBM " Product ID : "ULT3580-TD1 " Product Rev: "D711" Serial Number: "2688700001" WWN : "" WWN Id Type : 0 Device Identifier: "IBM ULT3580-TD1 2688700001" Device Type : SDT_TAPE NetBackup Drive Type: 3 Removable : Yes Device Supports: SCSI-6 Flags : 0x0 Reason: 0x0 #
ドキュメントを確認すると、「Data deduplication best practices」というのがあり、重複排除が行われた状態でRAWストレージに格納されている模様。
2019/11/01追記
QUADstorをアップデートする場合の注意点。
「rpm -Uvh quadstor*.rpm」といったアップデートはできない。
一度、アンインストールした上で、再インストールする必要がある。
ここまでは「Installation or Upgrading the VTL software」にも書かれているのだが、実際にやろうとするとスクリプトの実行に失敗する場合がある。
アンインストール時、quadstorによりinitrd imageに組み込まれたモジュールを削除するために、quadstorの停止とモジュールのアンロードが実施されるのだが、モジュールの使用状況によってはアンロードが失敗する場合がある。
その場合は、一度OSを再起動して、モジュールがロードされていない状態にしないとアンインストールができなかった。
CentOS7の場合、以下の手順で行った。
(1) 「systemctl mask quadstorvtl」で再起動時にQUADstorが起動しない様に設定(maskしなくでも大丈夫な場合もある)
(2) OS再起動
(3) 「rpm -ev quadstor-vtl-ext-3.0.36-rhel.x86_64」といった感じでパッケージ削除
(4) 「rpm -ivh quadstor-vtl-ext-3.0.37-rhel.x86_64.rpm」といった感じでパッケージインストール
(5) 「 systemctl unmask quadstorvtl」 「systemctl enable quadstorvtl」で有効化
(6) OS再起動
“QUADSTOR VLTを使ってみた” への1件の返信