Title: iSCSIを利用してジャーナルをリモートホストに設置する

TeamPage は、基本的に本体(サーバー)とデータ保管場所(ジャーナル)を同じホストで運用しますが、SAN (Storage Area Network) を導入すると、離れたホスト上にジャーナルを設定できるようになります。

参照 : FAQ1707: TeamPage 本体とジャーナルを別ホストで運用できますか?

最近は iSCSI を利用して比較的手軽に SAN を構築できるようになってきましたので、弊社の環境で実験してみました。

接続イメージ



iSCSI では、ストレージを提供する側を「ターゲット (target)」、利用する側を「イニシエーター (initiator)」と呼びます。

ここでは、CentOS 5.6 環境にターゲットとなる仮想ディスクを構築し、Windows Server 2003 R2 にイニシエーター機能をインストールします。(Windows7 や Windows Server 2008 には予めイニシエーター機能が組み込まれています)

そして、イニシエーター側で稼働する TeamPage のジャーナルを、ターゲット側に作成します。

イメージ図

CentOS (ターゲット側) 設定



iSCSI Target デーモンのインストール



iSCSI Target のパッケージは「scsi-target-utils」です。yum を使ってインストールします。

# yum install scsi-target-utils


割り当てディスクの作成



ターゲットに割り当てる(すなわち、Windows Server 2003 の TeamPage からアクセスする)ファイルを作成します。ここでは、dd コマンドを使って、8GB の空のファイルを /root/iscsi/disk.img として作成します。

# dd if=/dev/zero of=/root/iscsi/disk.img bs=512 seek=16M count=0
0+0 records in
0+0 records out
0 bytes (0 B) copied, 1.0896e-05 seconds, 0.0 kB/s


ls コマンドでファイルが作成されたことを確認します。

# ls -l -h /root/iscsi/disk.img
-rw-r--r-- 1 root root 8.0G 9月 16 11:06 /root/iscsi/disk.img


iSCSI Target デーモンの設定



上記でインストールした scsi-target-utils の設定ファイルは、/etc/tgt/targets.conf です。次のように、作成したディスクイメージ (/root/iscsi/disk.img) を指定します。



# iSCSI Test by AKJ Okutsu for this local computer(Grapefruit)
<target iqn.2011-09.local.akj:grapefruit00>
driver iscsi
backing-store /root/iscsi/disk.img
incominguser root idontknowthepw
initiator ALL
</target>


iSCSI Target デーモンの起動



次のようにしてデーモンを起動します。

# /etc/init.d/tgtd start


これでデーモンが起動しますが、環境によっては [OK] が表示されません。そのような場合は tgt-admin --dump コマンドで起動を確認できます。

# tgt-admin --dump
default-driver iscsi
<target iqn.2011-09.local.akj:grapefruit00>
backing-store /root/iscsi/disk.img
incominguser root PLEASE_CORRECT_THE_PASSWORD
</target>


必要に応じて chkconfig を使ってデーモン (tgtd) が自動起動するようにします。

# chkconfig tgtd on


以上で、CentOS 側の設定は完了です。

Windows (イニシエーター側) 設定



Windows Server 2008 や Windows7 には元からイニシエーター機能がインストールされているようですが、Windows Server 2003 にはそれがありませんので、Microsoft のサイト からインストーラーをダウンロードしてインストールする必要があります。

Microsoft Download Center - Microsoft iSCSI Software Initiator
microsoft.com/dow…

ダウンロードしたインストーラーを実行します。インストールが開始されるので、適当に進めます。

インストール開始

インストールが完了しました。[完了] をクリックしてインストーラーを終了します。

インストール完了

インストールが完了すると、プログラム メニューやコントロールパネルに「iSCSI Initiator」が出現します。

iSCSI Initiator

この「iSCSI Initiator」を開きます。[Discovery] タブの [Add] をクリックします。

Addボタンをクリック

ターゲット (上記の CentOS のホスト) の IP アドレスを入力し、[OK] をクリックします。

ターゲットの指定

指定したホストが登録されました。

ターゲットが登録された

次に [Targets] タブを開き、CentOS 上で設定したディスク名でターゲットが登録されていることを確認します。ターゲットをクリックして選択し、[Log On] ボタンをクリックします。

ログオン

[Automatically restore this connection when the system boots] チェックボックスをオンにすると、Windows 起動時に自動的にターゲットがマウントされます。

自動ログオン設定

上図の [Advanced] をクリックして設定画面を表示し、このターゲットにログオンするためのユーザー名とパスワードを設定します。[OK] をクリックして画面を閉じます。

ログオン認証情報の設定

以上でイニシエーターの設定は完了です。

コントロールパネル > 管理ツール > コンピュータの管理 > ディスクの管理 を開き、ターゲットがマウントされていることを確認します。

マウントされたディスク

ローカルディスクと同じようにパーティションの作成やフォーマットを行います。ここでは NTFS でフォーマットし、F: ドライブとして割り当てています。

フォーマットされたディスク

TeamPage のジャーナル設定



TeamPage のジャーナルを F: ドライブに作成します。

参照 : DocJp66: 新規ジャーナルの作成

サーバーセットアップ | 現在のジャーナル タブ の [ジャーナルの切替] をクリックします。

ジャーナルの切り替え

[ファイル形式ジャーナルの新規作成] をクリックし、表示された下図の画面で、iSCSI ターゲットのドライブを指定します。(ここでは F: ドライブの「TeamPageJournal」フォルダを指定します)

新しいジャーナルをiSCSIターゲットに作成する

画面の支持に従ってジャーナルの作成を進め、新しいジャーナルで TeamPage が再起動します。再起動ゴ、サーバーセットアップで作成したジャーナルを確認します。

新しいジャーナル

以上で作業は完了です。



Attachments:
iscsi_image.png
ms_iscsi_01.png
ms_iscsi_03.png
ms_iscsi_04.png
ms_iscsi_05.png
ms_iscsi_06.png
ms_iscsi_07.png
ms_iscsi_08.png
ms_iscsi_09.png
ms_iscsi_10.png
ms_iscsi_11.png
ms_iscsi_12.png
switch_journal.png
journal_setup_01.png
journal_setup_02.png
関連記事
Article: Forum884 (permalink)
Categories: :FAQ:運用保守
Date: 2011/09/16; 14時45分04秒 JST

Author Name: 奥津 岳
Author ID: takashi