ソフトウェア ベースの iSCSI を実装すると、標準の NIC を使用して、ホストを IP ネットワーク上のリモート iSCSI ターゲットに接続できます。ESXi に組み込まれたソフトウェア iSCSI アダプタは、ネットワーク スタックを介して物理 NIC と通信します。

注: ソフトウェア iSCSI アダプタを使用する前に、ネットワークを設定し、アダプタを有効にし、CHAP などのパラメータを設定する必要があります。

iSCSI アダプタ設定のワークフローには、次の手順が含まれます。

ESXi を使用した iSCSI および iSER 用ネットワークの設定

特定のタイプの iSCSI アダプタは、VMkernel ネットワークに依存します。これらのアダプタには、ソフトウェア iSCSI アダプタまたは依存型ハードウェア iSCSI アダプタと、VMware iSCSI over RDMA (iSER) アダプタが含まれます。ESXi 環境にこれらのアダプタのいずれかが含まれている場合は、iSCSI または iSER コンポーネントと物理ネットワーク アダプタの間のトラフィックの接続を構成する必要があります。

ネットワーク接続の構成には、各物理ネットワーク アダプタへの仮想 VMkernel アダプタの作成が含まれます。各仮想および物理ネットワーク アダプタ間で 1:1 のマッピングを使用します。その際に、VMkernel アダプタを適切な iSCSI または iSER アダプタと関連付けます。このプロセスをポート バインドと呼びます。

このイメージは、VMkernel アダプタ (vmk) に接続されている iSCSI アダプタまたは iSER アダプタ (vmhba) を示しています。スイッチは vmk を物理 NIC (vmnic) に接続します。
ポート バインドを設定するときは、次のルールに準拠します。
  • ソフトウェア iSCSI アダプタは、ホストで使用可能な物理 NIC で接続できます。
  • 依存型 iSCSI アダプタを接続する場合は、必ず固有の物理 NIC へ接続する必要があります。
  • RDMA 対応のネットワーク アダプタにのみ、iSER アダプタを接続する必要があります。

ソフトウェア iSCSI でのネットワーク接続の使用時機と方法に関する特別の考慮事項については、http://kb.vmware.com/kb/2038869 にある VMware ナレッジ ベースの記事を参照してください。

VMware Host Client での ESXi ホスト用 iSCSI の有効化

VMware Host Client 環境でホストの iSCSI を有効にし、CHAP 認証、ネットワーク ポート バインド、固定ターゲット、動的ターゲット、さまざまな詳細設定などのストレージ アダプタのパラメータを設定します。

手順

  1. VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
  2. [有効] ラジオ ボタンを選択します。
  3. (オプション) 変更するパラメータとコンポーネントを設定します。
  4. [構成の保存] をクリックします。

ソフトウェア 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)
注: ポートのバインドを使用する場合は、すべての VMkernel ポートからすべてのターゲット ポータルに到達可能であることを確認してください。到達可能でない場合は、iSCSI セッションの確立に失敗する可能性があります。その結果、再スキャン処理に予想以上の時間がかかる場合があります。

ポートのバインドを使用しない場合

ポートのバインドを使用しない場合は、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 ポート(vmk1、vmk2、vmk3、vmk4)を示す画像。すべてのイニシエータ ポートとターゲットが同じサブネットに属しています。

この例では、すべてのイニシエータ ポートとターゲット ポータルが同じサブネットに属しています。また、バインドされているすべてのポートを通じてターゲットに到達できます。VMkernel ポートが 4 つ、ターゲット ポータルが 1 つ存在するため、合計 4 つのパスが作成されます。

ポートのバインドを使用しない場合、作成されるパスは 1 つのみです。

例 2:VMkernel ポートが異なるサブネットに属す場合のマルチパス

異なる IP サブネットに属す複数のポートとターゲット ポータルを設定することで、複数のパスを作成できます。イニシエータとターゲット ポートを異なるサブネットに分けておくと、特定のポートを経由するパスが ESXi により作成されます。ポートのバインドを設定するにはすべてのイニシエータとターゲット ポートが同じサブネットに属している必要があるため、この構成ではポートのバインドを使用しません。

異なる IP サブネット上の複数の VMkernel ポートとターゲット ポータルを示す画像。

3 つのポートがすべて同じサブネットに属しているため、ESXi はコントローラ A とコントローラ B のポート 0 に接続する際に vmk1 を選択します。同様に、コントローラ A とコントローラ B のポート 1 に接続する際には vmk2 が選択されます。この構成では NIC チーミングを使用できます。

合計 4 つのパスが作成されます。
パス 説明
パス 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) のスタティック ルートを追加できます。

サブネット N1 にあるバインドされた 2 つの VMkernel ポートと、サブネット N2 にあるターゲット ポータルを示す画像。

次のコマンドを使用します。

# esxcli network ip route ipv4 add -gateway 192.168.1.253 -network 10.115.179.0/24

例 2:複数のパスを作成する場合のスタティック ルートの使用例

この構成では、異なるサブネットを使用するときにスタティック ルートを使用します。この構成では、ポートのバインドを使用できません。

個別のサブネット内の vmk1 と vmk2 を示す画像。ターゲット ポータルも個別のサブネットにあります。

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 ポートごとのゲートウェイ情報を表示するには、次のコマンドを使用します。

# esxcli network ip interface ipv4 address list
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 アダプタを使用する場合は、正しいネットワーク ポリシーを設定してください。
  • 必要な権限:ホスト.構成.ストレージ パーティション構成

手順

  1. VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
  2. [ネットワーク ポートのバインド] セクションで、[ポート バインドの追加] をクリックします。
  3. iSCSI アダプタとバインドする VMkernel アダプタを選択します。
    注: VMkernel アダプタのネットワーク ポリシーがバインド要件に準拠していることを確認してください。
    ソフトウェア iSCSI アダプタは、1 つ以上の VMkernel アダプタにバインドできます。依存型ハードウェア iSCSI アダプタの場合は、正しい物理 NIC と関連付けられた VMkernel アダプタを 1 つのみ使用できます。
  4. [選択] をクリックします。
  5. [構成の保存] をクリックします。

VMware Host Client でのポート バインドの削除

ホスト上の iSCSI 構成を編集して、ポート バインドを削除します。

手順

  1. VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
  2. [ネットワーク ポートのバインド] セクションで、リストから VMkernel NIC を選択します。
  3. [ポート バインドの削除] をクリックします。
  4. [構成の保存] をクリックします。

VMware Host Client での動的ターゲットの設定

iSCSI アダプタがネットワーク上のアクセス可能なストレージ リソースを特定できるように、ターゲット検出アドレスを設定する必要があります。ESXi ホストは、動的および静的な検出方法をサポートしています。動的検出では、イニシエータが特定の iSCSI ストレージ システムに接続するたびに、SendTargets 要求が iSCSI システムに送信されます。iSCSI システムは、使用可能なターゲットのリストをイニシエータに提供します。

SendTargets 検出とも呼ばれます。イニシエータが指定された iSCSI サーバに接続するたびに、イニシエータはターゲットの SendTargets 要求をサーバに送信します。サーバは、使用可能なターゲットのリストをイニシエータに提供することで応答します。これらのターゲットの名前および IP アドレスは、[静的検出] タブに表示されます。動的検出で追加された静的ターゲットを削除する場合、このターゲットは、次回の再スキャン実行時、iSCSI アダプタのリセット時、またはホストの再起動時にリストに戻すことができます。

注: ESXi は、ソフトウェア iSCSI および依存型ハードウェア iSCSI を使用して、指定した iSCSI サーバ アドレスの IP ファミリに基づいてターゲット アドレスをフィルタリングします。アドレスが IPv4 の場合、iSCSI サーバからの SendTargets 応答で取得される可能性のある IPv6 アドレスは除外されます。iSCSI サーバを指定するために DNS 名が使用されている場合や、iSCSI サーバからの SendTargets 応答に DNS 名が含まれている場合、 ESXi は、DNS ルックアップで最初に解決されたエントリの IP ファミリを使用します。

動的検出の設定では、新しい iSCSI システムのみを追加できます。既存の iSCSI システムの IP アドレス、DNS 名、またはポート番号は変更できません。パラメータを変更するには、既存のシステムを削除してから新しく追加します。

前提条件

必要な権限:ホスト.構成.ストレージ パーティション構成

手順

  1. VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
  2. [動的ターゲットの追加] をクリックします。
    新しい動的ターゲットがリストに表示されます。
  3. 新しい動的ターゲットに対しアドレスを追加するには、リストのターゲットをクリックして、アドレスを入力します。
  4. (オプション) 新しい動的ターゲットのポート番号を変更するには、ターゲットの [ポート] テキスト ボックスをクリックして、新しいポート番号を入力します。
  5. (オプション) 動的ターゲット設定を編集するには、使用可能なターゲットのリストから新しいターゲットを選択して、[設定の編集] をクリックし、変更するパラメータを設定して、[保存] をクリックします。
  6. (オプション) 特定のターゲットを削除するには、該当のターゲットを選択して [動的ターゲットの削除] をクリックします。
    ターゲットが既存の動的ターゲットのリストに表示されなくなります。
  7. [構成の保存] をクリックします。

VMware Host Client での固定ターゲットの設定

iSCSI イニシエータで静的検出を使用して、ターゲットに関する情報を手動で入力できます。

静的検出の設定では、新しい iSCSI ターゲットのみを追加できます。既存のターゲットの IP アドレス、DNS 名、iSCSI ターゲット名、またはポート番号は変更できません。これを変更するには、既存のターゲットを削除して新しいターゲットを追加します。

動的検出方法の他に、静的検出を使用して、ターゲットの情報を手動で入力することも可能です。iSCSI アダプタは、提供したターゲットのリストを使用して、iSCSI サーバに接続して通信します。

前提条件

必要な権限:ホスト.構成.ストレージ パーティション構成

手順

  1. VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
  2. [固定ターゲットの追加] をクリックします。
    新しい固定ターゲットがリストに表示されます。
  3. 新しい固定ターゲットに対し名前を追加するには、リスト内のターゲットをクリックして、名前を入力します。
  4. 新しい固定ターゲットに対しアドレスを追加するには、リストのターゲットをクリックして、アドレスを入力します。
  5. (オプション) 新しい固定ターゲットのポート番号を変更するには、ターゲット [ポート] テキスト ボックスをクリックして、新しいポート番号を入力します。
  6. (オプション) 固定ターゲット設定を編集するには、使用可能なターゲットのリストから新しいターゲットを選択して、[設定の編集] をクリックし、変更するパラメータを設定して、[保存] をクリックします。
  7. (オプション) 特定のターゲットを削除するには、該当のターゲットを選択して [固定ターゲットの削除] をクリックします。
    ターゲットが既存の固定ターゲットのリストに表示されなくなります。
  8. [構成の保存] をクリックします。

VMware Host Client での iSCSI の詳細設定の編集

iSCSI の詳細設定では、ヘッダ ダイジェスト、データ ダイジェスト、ARP リダイレクト、遅延 ACK などのパラメータを制御します。通常、割り当てられた定義済みの値でホストは正しく動作するので、これらの設定を変更する必要はありません。

注意: VMware サポート チームとの支援を受けて作業しているか、iSCSI の詳細設定で指定する値についての十分な情報がある場合を除き、この詳細設定を変更しないでください。

前提条件

必要な権限:ホスト.構成.ストレージ パーティション構成

手順

  1. VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
  2. [詳細設定] をクリックして、設定のリスト全体を表示します。
  3. 変更するパラメータを編集し、[構成の保存] をクリックします。

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 パラメータを設定するときには、それらのパラメータがストレージ側のパラメータと一致するようにします。

  • 必要な権限:ホスト.構成.ストレージ パーティション構成

手順

  1. VMware Host Client インベントリ内で [ストレージ] > [アダプタ] > [iSCSI の構成] の順にクリックします。
  2. 片方向の CHAP を設定するには、[CHAP 認証] を展開して、すべてのパラメータを表示します。
    1. CHAP のセキュリティ レベルを選択します。
    2. CHAP 名を入力します。

      入力する名前が、ストレージ側で設定した名前と一致するようにします。

    3. 認証に使用する片方向の CHAP シークレットを入力します。ストレージ側で入力するのと同じシークレットを使用してください。
  3. 相互 CHAP を設定するには、片方向の CHAP 用のオプションとして [CHAP を使用] を選択します。[相互 CHAP 認証] を展開して、すべてのパラメータを表示します。
    1. [CHAP を使用する] を選択します。
    2. 相互 CHAP 名を入力します。
    3. 相互 CHAP シークレットを入力します。
      片方向の CHAP と相互 CHAP にそれぞれ異なるシークレットを使用します。
  4. [構成の保存] をクリックします。

結果

iSCSI アダプタの認証設定を変更する場合、新しい iSCSI セッションでは更新された認証情報のみを使用します。強制再認証などの外的な要因で接続が失われるか、アダプタの iSCSI ターゲットを削除して追加しない限り、既存のセッションは継続します。