2009年 07月 21日
SUSE Enterprise Server 11 で iSCSI を使う
今回は SUSE Linux Enterprise 11 (SLES11)を Domain-0 として、Domain-U から iSCSI を利用する方法を説明します。せっかくですので、 Domain-U には Open Enterprise Server 2 (OES2) と Windows 7 に標準で付属する iSCSI イニシエータを使って Windows 7で iSCSI を使う方法もテストしてみましょう。
本来なら、別筐体を使って iSCSI ターゲットを用意したいところですが、機材の都合で iSCSI ターゲット = Domain-0 を使っています。逆に言えば、 iSCSI ターゲットで作られた仮想ファイルを他の iSCSI ターゲットに移動しても問題なく動く事まで確認してみたいところです。
この記事は次の内容と一部かぶります。
使ってみよう SUSE Linux 10 (SLES10)で iSCSI
Transrate English this page
iSCSI は SUSE 仮想環境でファイルサーバとして使い物になるか
iSCSI のベンチマークでみるNovell OES でのプライベートクラウドの実力
- iSCSI ターゲット側 -
- 仮想ボリュームを作成
ここでは 4G バイトの仮想スパースディスクを作ります。
# dd if=/dev/zero of=/PathTo/MyiSCSI.disk0 seek=1M bs=4096 count=1
- iSCSI ターゲット側で、ターゲット仮想ファイルを登録します。
YaST > iSCSI ターゲット、インストールされていない場合は、自動的にインストールされます。
インストールソース(DVD,配布サーバ)にアクセスできるよう準備して置いてください。
Manually > When Booting に変更します。
General タブ、とりあえず No Authentication にしておきます。
Target > Add > Browse でターゲットとなる iSCSI 仮想ディスクを選びます。
iSCSI のターゲットを変更すると iSCSI 全体のサービスのリスタートが必要だということです。
運用面の最大の障害となる点でしょうか。
iSCSI の設定が終わると、iSCSI のサービスが自動的に開始されます。 YaST > System > Runlevel から iSCSI ターゲットサービスが開始されていることを確認します。
-iSCSI イニシエータ側-
今回 iSCSI イニシエータ(利用者側) には OES2 の機能を使います。
YaST > iSCSI イニシエータを選びます。インストールされていない場合は自動的にインストールされるため、インストールソースを確認して置いてください。
Manually から When Booting に変更します。
ターゲットのリストはまだ空欄です。
Discavery Target から、iSCSI ターゲット(サーバ)が動作する先のIP アドレスをセットします。
接続が False しているので Connect ボタンを押します。
ターゲットのリストに接続できたら、 Connect タブ内の Toggle ボタンを押して Automatic 接続するようにセットします。
YaST > Partitiner から、デバイスが追加されているか確認します。
もちろん、ここで SUSE Linux のパーティションとして作成することもできます。こちらを参考にしてください。
使ってみよう SUSE Linux 10 (SLES10)で iSCSI それではあまりに芸がありません。ここでは Open Enterprise Server 2 (OES2) の NSS ボリュームとして作成してみます。
-OES2 で iSCSI NSS Volume のマウント-
ここからば OES NetWare/Linux の NSS ボリュームの作成手順と同じです。
まず、ブラウザから iManager を起動して、 Storage を選びます。
Storage から OES サーバを選んで SDx デバイス(iSCSIデバイス) を確認して Initialize をします。
Partition > SDx の Free Space を チェックしてパーティションを作成します。
次に NSS Pool を作成します。 Pool > Create > "Data" などのプール名を付けて、プール全てをボリュームで使えるよう、チェックボタンを押して、プールを Create します。
ボリュームを作成します。 Volume から New > "VOL1" などの任意の名前を付けてボリュームを作成します。デフォルトでは Compression, User/Directory の Quota がチェックされていないので、エンドユーザ用ファイルサーバに設定する場合は、チェックします。GroupWise サーバや DB サーバなどではチェックしないほうがよいでしょう。
Finish すると、ボリュームが作成されて、マウントされます。 df コマンドで確認してみましょう。
/etc/fstab を確認します。
これで、仮想環境で動作している Open Enterprise Server (OES2) Dom-U の外部装置(ここでは Dom-0 の iSCSI を使っていますが) にディスクを作成することができました。
-Windows 7 の iSCSI 機能を使う-
コントロールパネル > コンピュータの管理に iSCSI イニシエータがあります。
ターゲットタブから、iSCSI ターゲット(iSCSI サーバ) の IP アドレスをセットします。まだアクティブになっていません。
セッションを選んでデバイスを確認できます。
ボリュームデバイスから「自動構成」ボタンを押します。
ターゲットが「接続完了」できれば接続ができました。
コンピュータの管理から「ディスクの管理」を選ぶと、未認識のディスクが作成されています。
Windows 7 からはまったく意識しないディスクとして新しいボリュームとしてフォーマットして利用できます。
openSUSE+XEN 仮想環境で SUSE Windows のテストもできました。
-まとめ-
Open Enterprise Server 2 Linux (OES2 Linux) では起動とツール、eDirectory などの必要な情報だけのストレージが / に必要なのですが、 NSS ボリュームが /, /boot と異なるデバイスに作成することが強く推奨されます。したがって大型のファイルサーバを構築する場合は、ディスクの利用効率はあまりよくありません。
しかし、iSCSI を使うと、iSCSI ターゲット(サーバ)が実質上のストレージサーバとなり、仮想 OES からの仮想ドライブとして扱うことができるため、効率よくディスクを構築することができます。
今回は、仮想ディスクイメージファイル(単一ファイル)を使いましたが、iSCSI ターゲットを構成する場合、ターゲットのシリンダ番号を直接指定することもできます。
どちらがいいのかはなんとも言えないのですが、単一ディスクの場合、「サーバの丸ごとバックアップ」ができるため、運用面での惨事復旧対策のアイディアも生まれそうです。また、ライブマイグレーションも実用的になるでしょう。
iSCSI イニシエータが Windows 7 に標準搭載されたということはある意味では使い勝手の便利なアイディアができるでしょう。
たとえば、ディスクのわざわざ少ないネットブック、ネットトップなどをメモリ起動して、自動マウントで iSCSI ターゲットを D: として設定すれば、 Windows 7 の「ライブラリ」を iSCSI ターゲットに統合することができます。ネットブック、ネットトップのSDDは大容量化が進んでいますが、ある意味では運用側で、起動に必要な量だけを搭載してほしいという要望も出てくるかもしれません。情報の持ち出しを避けるため社内に接続したときだけライブラリが使えればよいという発想もあるでしょう。
あるいは、 BootP 起動して、iSCSI デバイスを標準のデバイスとして利用させるなどの方法もありかもしれません。
iSCSI のターゲットファイルを OES の NSS 上に作成した場合はどうなるでしょうか。使われていないターゲットファイルが自動圧縮されるのであれば、かなり効率的なディスク運用ができるかもしれません。
iSCSI と競合するファイバーチャネルは IBM, HP, EMC などメーカー数社の固有のハードウェアが必要ですが iSCSI は世界に数万社が参入する Ethernet と TCPIP を基本としているため、性能、信頼性では劣っても、導入コストは二桁は違います。いずれ、10Gbit Ethernet が家電店に並ぶ頃にはファイバーチャネルを駆逐する可能性を持っています。iSCSI が Bios に組み込まれたら面白いことになるでしょう。ディスクレスワークステーションだって夢ではありません。
いずれにせよ iSCSI は新しいフィーチャなので、運用面でのアイディア、問題点などいろいろ検討するところはありそうです。
Visit My Website 非番のエンジニア
-キーワード-
SUSE Enterprise Server 11 SLES11 iSCSI Windows 7 Target Initiator XEN イニシエータ、ターゲット、サーバ統合