ソフトウェア ベースの iSCSI を実装すると、標準の NIC を使用して、ホストを IP ネットワーク上のリモート iSCSI ターゲットに接続できます。ESXi に組み込まれたソフトウェア iSCSI アダプタは、ネットワーク スタックを介して物理 NIC と通信します。
iSCSI アダプタ設定のワークフローには、次の手順が含まれます。
- ホスト上の iSCSI の有効化。VMware Host Client での ESXi ホスト用 iSCSI の有効化を参照してください。
- ポート バインドの追加。VMware Host Client でのポート バインドの追加 を参照してください。
- ポート バインドの削除。VMware Host Client でのポート バインドの削除 を参照してください。
ESXi を使用した iSCSI および iSER 用ネットワークの設定
特定のタイプの iSCSI アダプタは、VMkernel ネットワークに依存します。これらのアダプタには、ソフトウェア iSCSI アダプタまたは依存型ハードウェア iSCSI アダプタと、VMware iSCSI over RDMA (iSER) アダプタが含まれます。ESXi 環境にこれらのアダプタのいずれかが含まれている場合は、iSCSI または iSER コンポーネントと物理ネットワーク アダプタの間のトラフィックの接続を構成する必要があります。
ネットワーク接続の構成には、各物理ネットワーク アダプタへの仮想 VMkernel アダプタの作成が含まれます。各仮想および物理ネットワーク アダプタ間で 1:1 のマッピングを使用します。その際に、VMkernel アダプタを適切な iSCSI または iSER アダプタと関連付けます。このプロセスをポート バインドと呼びます。
- ソフトウェア iSCSI アダプタは、ホストで使用可能な物理 NIC で接続できます。
- 依存型 iSCSI アダプタを接続する場合は、必ず固有の物理 NIC へ接続する必要があります。
- RDMA 対応のネットワーク アダプタにのみ、iSER アダプタを接続する必要があります。
ソフトウェア iSCSI でのネットワーク接続の使用時機と方法に関する特別の考慮事項については、http://kb.vmware.com/kb/2038869 にある VMware ナレッジ ベースの記事を参照してください。
VMware Host Client での ESXi ホスト用 iSCSI の有効化
VMware Host Client 環境でホストの iSCSI を有効にし、CHAP 認証、ネットワーク ポート バインド、固定ターゲット、動的ターゲット、さまざまな詳細設定などのストレージ アダプタのパラメータを設定します。
手順
- VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
- [有効] ラジオ ボタンを選択します。
- (オプション) 変更するパラメータとコンポーネントを設定します。
- [構成の保存] をクリックします。
ソフトウェア iSCSI とのネットワーク通信設定のベスト プラクティス
ソフトウェア iSCSI とのネットワーク通信を設定する際には、次のベスト プラクティスを考慮してください。
ソフトウェア iSCSI ポートのバインド
ESXi ホスト上のソフトウェア iSCSI イニシエータを 1 つ以上の VMkernel ポートにバインドすると、バインドされたポートのみを使用して iSCSI トラフィックがやり取りされるようになります。バインドされていないポートは iSCSI トラフィックに使用されません。
ポートのバインドを設定すると、バインドされたすべてのポートから、設定されたすべてのターゲット ポータルへの iSCSI セッションが iSCSI イニシエータにより確立されます。
VMkernel ポート | ターゲット ポータル | iSCSI セッション |
---|---|---|
バインドされた VMkernel ポート x 2 | ターゲット ポータル x 2 | 4 つのセッション(2 x 2) |
バインドされた VMkernel ポート x 4 | ターゲット ポータル x 1 | 4 つのセッション(4 x 1) |
バインドされた VMkernel ポート x 2 | ターゲット ポータル x 4 | 8 つのセッション(2 x 4) |
ポートのバインドを使用しない場合
ポートのバインドを使用しない場合は、ESXi ネットワーク レイヤーのルーティング テーブルに従って最適な VMkernel ポートが選択されます。ホストはこのポートを使用してターゲット ポータルとの iSCSI セッションを確立します。ポートのバインドを使用しない場合、確立されるセッションは、1 つのターゲット ポータルにつき 1 つのみです。
VMkernel ポート | ターゲット ポータル | iSCSI セッション |
---|---|---|
バインドされていない VMkernel ポート x 2 | ターゲット ポータル x 2 | 2 つのセッション |
バインドされていない VMkernel ポート x 4 | ターゲット ポータル x 1 | 1 つのセッション |
バインドされていない VMkernel ポート x 2 | ターゲット ポータル x 4 | 4 つのセッション |
ソフトウェア iSCSI でのマルチパスの使用
例 1:ネットワーク ポータルが 1 つだけの場合の iSCSI ターゲットへのマルチパス
ターゲットにネットワーク ポータルが 1 つしか存在しない場合は、ESXi ホストで複数の VMkernel ポートを追加し、それらのポートを iSCSI イニシエータにバインドすることで複数のパスを作成できます。
この例では、すべてのイニシエータ ポートとターゲット ポータルが同じサブネットに属しています。また、バインドされているすべてのポートを通じてターゲットに到達できます。VMkernel ポートが 4 つ、ターゲット ポータルが 1 つ存在するため、合計 4 つのパスが作成されます。
ポートのバインドを使用しない場合、作成されるパスは 1 つのみです。
例 2:VMkernel ポートが異なるサブネットに属す場合のマルチパス
異なる IP サブネットに属す複数のポートとターゲット ポータルを設定することで、複数のパスを作成できます。イニシエータとターゲット ポートを異なるサブネットに分けておくと、特定のポートを経由するパスが ESXi により作成されます。ポートのバインドを設定するにはすべてのイニシエータとターゲット ポートが同じサブネットに属している必要があるため、この構成ではポートのバインドを使用しません。
3 つのポートがすべて同じサブネットに属しているため、ESXi はコントローラ A とコントローラ B のポート 0 に接続する際に vmk1 を選択します。同様に、コントローラ A とコントローラ B のポート 1 に接続する際には vmk2 が選択されます。この構成では NIC チーミングを使用できます。
パス | 説明 |
---|---|
パス 1 | vmk1 とコントローラ A のポート 0 |
パス 2 | vmk1 とコントローラ B のポート 0 |
パス 3 | vmk2 とコントローラ A のポート 1 |
パス 4 | vmk2 とコントローラ B のポート 1 |
ソフトウェア iSCSI によるルーティング
iSCSI トラフィック用のスタティック ルートを追加するには、esxcli コマンドを使用します。スタティック ルートを設定すると、異なるサブネットに属すイニシエータとターゲット ポートの間で通信を行えるようになります。
例 1:ポートのバインドを使用する場合のスタティック ルートの使用例
この例では、バインドされるすべての VMkernel ポートを 1 つのサブネット (N1) に残し、すべてのターゲット ポータルを別のサブネット (N2) に設定します。その後、ターゲット サブネット (N2) のスタティック ルートを追加できます。
次のコマンドを使用します。
# esxcli network ip route ipv4 add -gateway 192.168.1.253 -network 10.115.179.0/24
例 2:複数のパスを作成する場合のスタティック ルートの使用例
この構成では、異なるサブネットを使用するときにスタティック ルートを使用します。この構成では、ポートのバインドを使用できません。
vmk1 と vmk2 を別々のサブネット(192.168.1.0 と 192.168.2.0)に設定します。ターゲット ポータルも別々のサブネット(10.115.155.0 と 10.155.179.0)に属しています。
vmk1 から 10.115.155.0 のスタティック ルートを追加できます。vmk1 からゲートウェイに到達可能であることを確認してください。
# esxcli network ip route ipv4 add -gateway 192.168.1.253 -network 10.115.155.0/24
その後、vmk2 から 10.115.179.0 のスタティック ルートを追加できます。vmk2 からゲートウェイに到達可能であることを確認してください。
# esxcli network ip route ipv4 add -gateway 192.168.2.253 -network 10.115.179.0/24
コントローラ A のポート 0 に接続する際には vmk1 が使用されます。
コントローラ B のポート 0 に接続する際には vmk2 が使用されます。
例 3:vmkernel ポートごとに異なるゲートウェイを使用する場合のルーティング
vSphere 6.5 以降では、VMkernel ポートごとに異なるゲートウェイを設定できます。DHCP を使用して VMkernel ポートの IP アドレス設定を取得する場合は、DHCP を使用してゲートウェイ情報も取得できます。
VMkernel ポートごとのゲートウェイ情報を表示するには、次のコマンドを使用します。
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS ---- -------------- ------------- -------------- ------------ -------------- -------- vmk0 10.115.155.122 255.255.252.0 10.115.155.255 DHCP 10.115.155.253 true vmk1 10.115.179.209 255.255.252.0 10.115.179.255 DHCP 10.115.179.253 true vmk2 10.115.179.146 255.255.252.0 10.115.179.255 DHCP 10.115.179.253 true
VMkernel ポートごとに異なるゲートウェイを使用する場合は、ポートのバインドを使用して異なるサブネットに属すターゲットに到達できます。
VMware Host Client でのポート バインドの追加
VMware Host Client を使用して、iSCSI アダプタとホスト上の VMkernel アダプタをバインドします。
前提条件
- ホスト上の各物理ネットワーク アダプタ用に、仮想 VMkernel アダプタを作成します。複数の VMkernel アダプタを使用する場合は、正しいネットワーク ポリシーを設定してください。
- 必要な権限:
手順
VMware Host Client でのポート バインドの削除
ホスト上の iSCSI 構成を編集して、ポート バインドを削除します。
手順
- VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
- [ネットワーク ポートのバインド] セクションで、リストから VMkernel NIC を選択します。
- [ポート バインドの削除] をクリックします。
- [構成の保存] をクリックします。
VMware Host Client での動的ターゲットの設定
iSCSI アダプタがネットワーク上のアクセス可能なストレージ リソースを特定できるように、ターゲット検出アドレスを設定する必要があります。ESXi ホストは、動的および静的な検出方法をサポートしています。動的検出では、イニシエータが特定の iSCSI ストレージ システムに接続するたびに、SendTargets 要求が iSCSI システムに送信されます。iSCSI システムは、使用可能なターゲットのリストをイニシエータに提供します。
SendTargets 検出とも呼ばれます。イニシエータが指定された iSCSI サーバに接続するたびに、イニシエータはターゲットの SendTargets 要求をサーバに送信します。サーバは、使用可能なターゲットのリストをイニシエータに提供することで応答します。これらのターゲットの名前および IP アドレスは、[静的検出] タブに表示されます。動的検出で追加された静的ターゲットを削除する場合、このターゲットは、次回の再スキャン実行時、iSCSI アダプタのリセット時、またはホストの再起動時にリストに戻すことができます。
動的検出の設定では、新しい iSCSI システムのみを追加できます。既存の iSCSI システムの IP アドレス、DNS 名、またはポート番号は変更できません。パラメータを変更するには、既存のシステムを削除してから新しく追加します。
前提条件
必要な権限:
手順
VMware Host Client での固定ターゲットの設定
iSCSI イニシエータで静的検出を使用して、ターゲットに関する情報を手動で入力できます。
静的検出の設定では、新しい iSCSI ターゲットのみを追加できます。既存のターゲットの IP アドレス、DNS 名、iSCSI ターゲット名、またはポート番号は変更できません。これを変更するには、既存のターゲットを削除して新しいターゲットを追加します。
動的検出方法の他に、静的検出を使用して、ターゲットの情報を手動で入力することも可能です。iSCSI アダプタは、提供したターゲットのリストを使用して、iSCSI サーバに接続して通信します。
前提条件
必要な権限:
手順
VMware Host Client での iSCSI の詳細設定の編集
iSCSI の詳細設定では、ヘッダ ダイジェスト、データ ダイジェスト、ARP リダイレクト、遅延 ACK などのパラメータを制御します。通常、割り当てられた定義済みの値でホストは正しく動作するので、これらの設定を変更する必要はありません。
前提条件
必要な権限:
手順
- VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
- [詳細設定] をクリックして、設定のリスト全体を表示します。
- 変更するパラメータを編集し、[構成の保存] をクリックします。
VMware Host Client での iSCSI アダプタ用 CHAP 認証の設定
すべてのターゲットが、イニシエータ レベルで、同一の CHAP 名および CHAP シークレットを iSCSI イニシエータから受け取るように設定できます。デフォルトでは、すべての検出アドレスまたは固定ターゲットは、イニシエータ レベルで設定された CHAP パラメータを継承します。
CHAP 名は 511 文字未満の英数字、CHAP シークレットは 255 文字未満の英数字である必要があります。一部のアダプタでは、この上限の値がさらに小さい場合があります。たとえば、QLogic アダプタの上限値は、CHAP 名では 255 文字、CHAP シークレットでは 100 文字です。
前提条件
- ソフトウェアまたは依存型ハードウェア iSCSI に対し CHAP パラメータを設定する前に、通常の片方向の CHAP 認証、または双方向の相互 CHAP 認証のどちらを設定するか決定します。独立型ハードウェア iSCSI アダプタは、双方向の CHAP 認証をサポートしません。
- 片方向の CHAP では、ターゲットがイニシエータを認証します。
- 相互 CHAP では、ターゲットおよびイニシエータの両方が互いを認証します。CHAP と相互 CHAP にそれぞれ異なるシークレットを使用します。
CHAP パラメータを設定するときには、それらのパラメータがストレージ側のパラメータと一致するようにします。
- 必要な権限:
手順
- VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
- 片方向の CHAP を設定するには、[CHAP 認証] を展開して、すべてのパラメータを表示します。
- CHAP のセキュリティ レベルを選択します。
- CHAP 名を入力します。
入力する名前が、ストレージ側で設定した名前と一致するようにします。
- 認証に使用する片方向の CHAP シークレットを入力します。ストレージ側で入力するのと同じシークレットを使用してください。
- 相互 CHAP を設定するには、片方向の CHAP 用のオプションとして [CHAP を使用] を選択します。[相互 CHAP 認証] を展開して、すべてのパラメータを表示します。
- [CHAP を使用する] を選択します。
- 相互 CHAP 名を入力します。
- 相互 CHAP シークレットを入力します。
片方向の CHAP と相互 CHAP にそれぞれ異なるシークレットを使用します。
- [構成の保存] をクリックします。