iSCSIは幅の広く、安価なSANアクセス技術です。しかしディプロイは単なるiSCSIフィルターのインストールやネットワーク・ノード接続に留まりません。
iSCSIネットワークをデザインする前にInternet Small Computer System Interface (iSCSI)プロトコールを理解することも必要です。iSCSIではストアーされるブロックは専用のSCSIケーブル上というよりも、IPパケット内でネットワークを超えて転送されます。このiSCSIトラフィックはデフォルトではTCPポート3260でアドレスされます。iSCSIブロック・デバイスは通常ユーザ環境ではSAN(Storage-Area Network)であるiSCSIターゲットとして参照されたノード上でコンフィグレーションされます。SANへ接続するサーバはiSCSIイニシエータです。
効果的なSANネットワークは充分な帯域幅とスピードが必要で、それはiSCSIネットワーク専用となります。iSCSIパケットは論理上ユーザ・ネットワーク上を行き来し、パケットが失われないようにiSCSIイニシエータのバースト性は、専用のパスが必要です。ネットワークを混在させるのはテスト環境のみとすべきです。
図1:冗長トポロジーでのiSCSIネットワーク
ユーザのSANでのiSCSIネットワーク上を行き来するパケット・サイズを考慮します。デフォルトではイーサネット・パケットは1500バイトで、実質SANトラフィックを分断します。iSCSIトラフィックを最適化するにはiSCSIネットワーク上のすべてのデバイスが最大9000バイトの転送ユニットが使用できるようにコンフィグレーションする必要があり、それがイーサネット・レベルでの最大可能値です。特定のデバイスではこればJumboフレームが可能であるということを意味します。ネットワークは、ブロック往来を通じて9000バイトのパケットを必要とするため、通信チャネルの両端に、この大きなパケットサイズを設定してください。もし1つのノードが1500バイト・パケットで設定されていれば、これは初めから終わりまで小規模サイズになってしまいます。
iSCSIネットワーク・トポロジーではユーザのディプロイにはできるだけ冗長ネットワークを使用し、冗長コントローラに接続します。冗長トポロジーではiSCSIネットワークへ接続する核サーバに2つのネットワークが必要で、各インターフェイスは別々のスイッチへ接続します。iSCSI SANには2つのコントローラが必要で、それぞれのスイッチはそれぞれのコントローラに接続します。(図1)冗長パス経由で同じデバイスが存在することは避けて、iSCSIネットワークを使用してサーバ上に多重パス・ドライバをインストールします。この冗長性でノードはネットワークトポロジーではフェイルから回避することができます。
SAN用に適切にiSCSIネットワークをデザイン後にiSCSIターゲットとイニシエータに適応できる最適化パラメータを考えます。これは非常に幅が広くなります。例えばiSCSI SANに接続するLinuxサーバのコンフィグレーション・ファイルは各アクティブなiSCSI接続用に /var/lib/iscsi ディレクトリにあり、複数の最適化パラメータがあります。iSCSIオフロード・エンジンを持つiSCSIホスト・アダプタはネットワーク・トラフィック効率をスムースにし、トラフィックの高量を処理する間、サーバ遅延を防ぎます。
よくデザインされたiSCSIネットワークでは大容量のiSCSIイニシエータの最適化は必要ではありません。
ソース:SerchDataCenter
参考:StarWind とvSphereでのHA 共有ストレージ構成