Solaris のシステム管理 (デバイスとファイルシステム)

Solaris iSCSI ターゲットおよびイニシエータの設定 (作業マップ)

作業 

説明 

参照先 

1. iSCSI のソフトウェア要件およびハードウェア要件を確認します。 

iSCSI ベースのストレージネットワークを設定するためのソフトウェア要件およびハードウェア要件を確認します。 

「Solaris iSCSI のソフトウェア要件およびハードウェア要件」

2. 使用する iSCSI ターゲットデバイスを設定します。 

Solaris iSCSI ターゲットデバイスを接続および設定します。 

サードパーティーのターゲットデバイスを設定することもできます。設定手順については、ベンダーのマニュアルを参照してください。 

「Solaris iSCSI ターゲットデバイスの設定」

 

iSNS サーバーが使用可能な場合は、Solaris iSCSI ターゲットの iSNS 発見を設定します。 

「Solaris iSCSI ターゲットの iSNS 発見を設定する方法」

3. Solaris iSCSI の構成を準備します。 

正しいバージョンのソフトウェアとハードウェアがインストールされていることを確認します。 

「Solaris iSCSI 構成の準備を整える方法」

4. (省略可能) Solaris iSCSI 構成の認証を設定します。 

使用する Solaris iSCSI 構成内で認証を使用するかどうかを判断します。 

 

 

単方向 CHAP または双方向 CHAP の使用を検討します。 

「iSCSI イニシエータの CHAP 認証を構成する方法」

   

「iSCSI ターゲットの CHAP 認証を構成する方法」

 

他社製の RADIUS サーバーを使用した CHAP 管理の単純化を検討します。 

「iSCSI 構成の RADIUS を構成する方法」

5. iSCSI ターゲット発見を構成します。 

環境に最適な iSCSI ターゲット発見方式を選択します。 

「iSCSI ターゲット発見を構成する方法」

6. (省略可能) 発見された iSCSI ターゲットを削除します。 

発見された iSCSI ターゲットを削除しなければならない場合があります。 

「発見された iSCSI ターゲットを削除する方法」

7. iSCSI ディスクへのアクセス 

iSCSI ディスクへのアクセスには format ユーティリティーを使用できます。システムのリブート時に iSCSI ディスクを自動的に使用可能にすることもできます。

「iSCSI ディスクへのアクセス」

8. iSCSI 構成を監視します。 

iscsiadm コマンドを使って iSCSI 構成を監視します。

「iSCSI 構成の監視」

9. (省略可能) iSCSI 構成を変更します。 

ヘッダーダイジェストパラメータやデータダイジェストパラメータなど、iSCSI ターゲットの設定を変更する場合があります。 

「iSCSI イニシエータと iSCSI ターゲットのパラメータを変更する方法」

10. (省略可能) Solaris iSCSI マルチパスデバイスを設定します。 

Solaris iSCSI マルチパスデバイスを設定するかどうかを決定します。 

「Solaris iSCSI マルチパスデバイスの設定」

 

この手順を使用して、単一のターゲットに接続する複数の iSCSI セッションを作成します。 

「ターゲットの複数の iSCSI セッションを有効にする方法」

Solaris iSCSI ターゲットおよびイニシエータの構成

Solaris iSCSI ターゲットおよびイニシエータの構成手順は、次のとおりです。

iSCSI 構成の情報は、/etc/iscsi ディレクトリ内に保存されます。この情報を管理する必要はありません。

iSCSI 関連の用語

iSCSI ターゲットおよびイニシエータを構成する前に、次の用語を確認してください。

用語 

説明 

イニシエータ 

iSCSI ターゲットに対する SCSI 要求を発行するドライバ。 

ターゲットデバイス 

iSCSI ストレージコンポーネント。 

発見 

利用可能なターゲットの一覧をイニシエータに提供するプロセス。 

発見方式  

iSCSI ターゲットを発見するための方法。現時点では次の 3 つの方法を使用できます。 

  • Internet Storage Name Service (iSNS) – 1 つ以上の iSNS サーバーと対話することで可能性のあるターゲットを発見します。

  • SendTargets – discovery-address を使用することによって、可能性のあるターゲットが発見されます。

  • 静的 – 静的なターゲットアドレスが構成されます。

動的または静的ターゲット発見の構成

デバイス発見を実行するために、動的デバイス発見方式のいずれかを構成するか、または静的 iSCSI イニシエータターゲットを使用するかを決定します。


注 –

単一の iSCSI ターゲットが静的デバイス発見方式と動的デバイス発見方式の両方によって発見されるように構成しないでください。発見方式を重複して使用すると、イニシエータが iSCSI ターゲットデバイスと通信するときのパフォーマンスが低下する可能性があります。


ProcedureSolaris iSCSI 構成の準備を整える方法

この手順では、ユーザーが現在ログインしているローカルシステムから構成済みの iSCSI ターゲットデバイスにアクセスするものとします。

  1. スーパーユーザーになります。

  2. iSCSI ソフトウェアパッケージがインストールされていることを確認します。


    initiator# pkginfo SUNWiscsiu SUNWiscsir
    system      SUNWiscsiu Sun iSCSI Device Driver (root)
    system      SUNWiscsir Sun iSCSI Management Utilities (usr)
  3. Solaris 10 1/06 以降のリリースが動作していることを確認します。

  4. TCP/IP ネットワークが設定済みであることを確認します。

  5. iSCSI ターゲットデバイスを接続し、それらが構成済みであることを確認します。

    たとえば、iSCSI ターゲットデバイスが到達可能かどうかを確認するには、telnet コマンドを使ってポート 3260 経由で iSCSI ターゲットデバイスに接続します。接続が拒否された場合は、「iSCSI 構成に関する問題の障害追跡」を参照してください。

    他社製の iSCSI ターゲットデバイスの接続方法については、そのベンダーのドキュメントを参照してください。

Solaris iSCSI ターゲットデバイスの設定

iscsitadm コマンドを使って、Solaris iSCSI ターゲットデバイスを設定および管理できます。Solaris iSCSI ターゲットデバイスは、ディスクまたはテープデバイスです。iSCSI ターゲットとして選択したデバイスでは、iSCSI デーモン用のバッキングストアとして、同サイズの ZFS または UFS ファイルシステムを提供する必要があります。

ZFS を使用した Solaris iSCSI ターゲットデバイスの設定方法については、『Oracle Solaris ZFS 管理ガイド』「ZFS および Solaris iSCSI の向上」を参照してください。

ターゲットデバイスの設定後に、iscsiadm コマンドを使って iSCSI ターゲットを識別します。これにより、iSCSI ターゲットデバイスが検出および使用されます。

詳細は、iscsitadm(1M) および iscsiadm(1M) のマニュアルページを参照してください。

基本的な操作を次に示します。

ProcedureiSCSI ターゲットの作成方法

この手順では、iSCSI ターゲットのあるローカルシステムにユーザーがログインしているものとします。

  1. スーパーユーザーになります。

  2. バッキングストアディレクトリを識別します。

    次に例を示します。


    target# iscsitadm modify admin -d /export/sandbox
    
  3. iSCSI ターゲットを作成します。

    次に例を示します。


    target# iscsitadm create target --size 2g sandbox
    
  4. iSCSI ターゲットに関する情報を表示します。

    次に例を示します。


    target# iscsitadm list target -v sandbox
    
  5. このターゲットを検出および使用するように、iSCSI イニシエータを設定します。

    詳細は、「iSCSI ターゲット発見を構成する方法」を参照してください。

ProcedureSolaris iSCSI ターゲットの iSNS 発見を設定する方法

ネットワークに他社製の iSNS サーバーまたは Sun iSNS サーバーが含まれている場合は、Solaris iSCSI ターゲットの iSNS 発見を設定できます。

この手順では、ユーザーが現在ログインしているローカルシステムから構成済みの iSCSI ターゲットデバイスにアクセスするものとします。

  1. スーパーユーザーになります。

  2. iSNS サーバーの情報を追加します。

    次に例を示します。


    initiator# iscsitadm modify admin --isns-server ip-address or hostname[:port]

    ネットワーク内の iSNS サーバーの ip-address を特定します。

    この手順により、iSNS サーバーの情報がすべての Solaris iSCSI ターゲットに追加されます。

  3. iSNS サーバー発見を有効にします。

    次に例を示します。


    initiator# iscsitadm modify admin --isns-access enable
    

    この手順により、すべての Solaris iSCSI ターゲットで iSNS 発見が有効になります。

iSCSI ベースのストレージネットワークにおける認証の構成

iSCSI デバイスの認証設定は省略可能です。

セキュリティー保護された環境では、信頼できるイニシエータだけがターゲットにアクセスできるため、認証は必要ありません。

セキュリティー保護の不十分な環境では、ターゲットは、接続要求が本当に指定されたホストからのものなのかを判断できません。そのような場合、ターゲットは、チャレンジハンドシェーク認証プロトコル (CHAP) を使ってイニシエータを認証できます。

CHAP 認証では「チャレンジ」と「応答」の概念が使用され、つまり、ターゲットがイニシエータに対して身元の証明を要求します。このチャレンジ / 応答方式が機能するには、ターゲットがイニシエータの秘密鍵を知っており、かつイニシエータがチャレンジに応答するように設定されている必要があります。秘密鍵をアレイ上に設定する手順については、アレイのベンダーのマニュアルを参照してください。

iSCSI は単方向認証と双方向認証をサポートします。

ProcedureiSCSI イニシエータの CHAP 認証を構成する方法

この手順では、ユーザーが現在ログインしているローカルシステムから構成済みの iSCSI ターゲットデバイスに安全にアクセスするものとします。

  1. スーパーユーザーになります。

  2. 単方向 CHAP または双方向 CHAP のどちらを構成するかを決定します。

    • 単方向認証 (デフォルトの方式) では、ターゲットがイニシエータを検証できます。手順 3 から 5 のみを実行してください。

    • 双方向認証では、二次レベルのセキュリティーを追加する目的で、イニシエータがターゲットを認証することできます。手順 3 から 9 を実行してください。

  3. 単方向 CHAP – イニシエータ上で秘密鍵を設定します。

    たとえば、次のコマンドを実行すると、CHAP の秘密鍵を定義するためのダイアログが起動されます。


    initiator# iscsiadm modify initiator-node --CHAP-secret
    

    注 –

    CHAP シークレットの長さは 12 文字 - 16 文字である必要があります。


  4. (省略可能) 単方向 CHAP – イニシエータ上で CHAP 名を設定します。

    デフォルトではイニシエータの CHAP 名は、イニシエータのノード名に設定されます。

    次のコマンドを使用して、イニシエータの CHAP 名を変更できます。


    initiator# iscsiadm modify initiator-node --CHAP-name new-CHAP-name
    

    Solaris 環境では、CHAP 名はデフォルトで常にイニシエータノード名に設定されます。CHAP 名は、512 バイト未満の任意の長さのテキストに設定できます。512 バイトの長さの制限は Solaris の制限です。ただし、CHAP 名を設定しない場合は、初期化のときにイニシエータノード名に設定されます。

  5. 単方向 CHAP – シークレットの設定完了後にイニシエータ上で CHAP 認証を有効にします。


    initiator# iscsiadm modify initiator-node --authentication CHAP
    

    CHAP 認証では、イニシエータノードにユーザー名とパスワードが必要です。ユーザー名は通常、渡されたユーザー名のシークレットをターゲットが検索するために使用されます。

  6. 次のいずれかを選択して双方向 CHAP を有効または無効にします。

    • 双方向 CHAP – ターゲットの双方向認証パラメータを有効にします。

      次に例を示します。


      initiator# iscsiadm modify target-param -B enable eui.5000ABCD78945E2B
      
    • 双方向 CHAP を無効にします。次に例を示します。


      initiator# iscsiadm modify target-param -B disable eui.5000ABCD78945E2B
      
  7. 双方向 CHAP – ターゲット上で認証方法を CHAP に設定します。

    次に例を示します。


    initiator# iscsiadm modify target-param --authentication CHAP eui.5000ABCD78945E2B
    
  8. 双方向 CHAP – ターゲット上でターゲットデバイスの秘密鍵を設定します。

    たとえば、次のコマンドを実行すると、CHAP の秘密鍵を定義するためのダイアログが起動されます。


    initiator# iscsiadm modify target-param --CHAP-secret eui.5000ABCD78945E2B
    
  9. 双方向 CHAP - ターゲット上で CHAP 名を設定します。

    デフォルトでは、ターゲットの CHAP 名はターゲット名に設定されます。

    次のコマンドを使用して、ターゲットの CHAP 名を変更できます。


    initiator# iscsiadm modify target-param --CHAP-name target-CHAP-name
    

ProcedureiSCSI ターゲットの CHAP 認証を構成する方法

この手順では、iSCSI ターゲットのあるローカルシステムにユーザーがログインしているものとします。

  1. スーパーユーザーになります。

  2. ターゲットの CHAP シークレット名を設定します。

    規則では、ホスト名をシークレット名として使用します。次に例を示します。


    target# iscsitadm modify admin -H stormpike
    
  3. CHAP シークレットを指定します。

    CHAP シークレットは、12 - 16 文字にする必要があります。次に例を示します。


    target# iscsitadm modify admin -C
    Enter secret: xxxxxx
    Re-enter secret: xxxxxx
  4. 1 つ以上のターゲットに関連付けられるイニシエータオブジェクトを作成します。

    この手順は、毎回 IQN 値を入力しなくても済むように、わかりやすい名前 (通常はホスト名、この場合は monster620) を IQN 値に関連付けるために行います。次に例を示します。


    # iscsitadm create initiator -n iqn.1986-03.com.sun: 01:00e081553307.4399f40e monster620
    
  5. イニシエータで使用したのと同じ CHAP 名を指定します。

    この名前は、イニシエータオブジェクトに使用したわかりやすい名前でなくてもかまいません。次に例を示します。


    target# iscsitadm modify initiator -H monster620 monster620
    
  6. イニシエータで使用したのと同じ CHAP シークレットを指定します。

    次に例を示します。


    target# iscsitadm modify initiator -C monster620
    Enter secret: xxxxxx
    Re-enter secret: xxxxxx
  7. イニシエータオブジェクトを 1 つ以上のターゲットに関連付けます。

    次に例を示します。


    target# iscsitadm modify target -l monster620 sandbox
    

他社製の RADIUS サーバーを使用して iSCSI 構成内の CHAP 管理を単純化する

他社製の RADIUS サーバーを使用すると、CHAP シークレット管理を単純化できます。RADIUS サーバーは集中管理認証サービスです。RADIUS サーバーを使って双方向認証を行う場合、イニシエータの CHAP シークレットは依然として指定する必要がありますが、各イニシエータ上で各ターゲットの CHAP シークレットを指定する必要はなくなります。

詳細は、次の項目を参照してください。

ProcedureiSCSI 構成の RADIUS を構成する方法

この手順では、ユーザーが現在ログインしているローカルシステムから構成済みの iSCSI ターゲットデバイスに安全にアクセスするものとします。

  1. スーパーユーザーになります。

  2. RADIUS サーバーの IP アドレスとポート (デフォルトのポートは 1812) を、イニシエータノードに設定します。

    次に例を示します。


    initiator# iscsiadm modify initiator-node --radius-server 10.0.0.72:1812
    
  3. RADIUS サーバーの共有鍵をイニシエータノードに設定します。


    initiator# iscsiadm modify initiator-node --radius-shared-secret
    

    注 –

    Solaris iSCSI 実装の場合、RADIUS サーバーに共有シークレットが構成されていないと、Solaris iSCSI ソフトウェアは RADIUS サーバーと通信できません。


  4. RADIUS サーバーを有効にします。


    initiator# iscsiadm modify initiator-node --radius-access enable
    

Solaris iSCSI と RADIUS サーバーに関するエラーメッセージ

この節では、Solaris iSCSI と RADIUS サーバーの構成に関係するエラーメッセージとその考えられる解決法について説明します。


empty RADIUS shared secret

原因:

イニシエータ上で RADIUS サーバーが有効になっているにもかかわらず、RADIUS の共有シークレットが設定されていません。

対処方法:

RADIUS の共有シークレットをイニシエータに設定します。詳細は、「iSCSI 構成の RADIUS を構成する方法」を参照してください。


WARNING: RADIUS packet authentication failed

原因:

イニシエータによる RADIUS データパケットの認証が失敗しました。このエラーが発生する可能性があるのは、イニシエータノード上に設定された共有シークレットが RADIUS サーバー上の共有シークレットと異なっている場合です。

正しい RADIUS 共有シークレットをイニシエータに設定し直します。詳細は、「iSCSI 構成の RADIUS を構成する方法」を参照してください。

ProcedureiSCSI ターゲット発見を構成する方法

この手順では、ユーザーが現在ログインしているローカルシステムから iSCSI ターゲットデバイスへのアクセスを構成するものとします。

  1. スーパーユーザーになります。

  2. 次のいずれかの方式を使って、ターゲットデバイスが動的または静的に発見されるように構成します。

    • デバイスが動的に発見されるように構成します (SendTargets)。

      次に例を示します。


      initiator# iscsiadm add discovery-address 10.0.0.1:3260
      
    • デバイスが動的に発見されるように構成します (iSNS)。

      次に例を示します。


      initiator# iscsiadm add iSNS-server 10.0.0.1:3205
      
    • デバイスが静的に発見されるように構成します。

      次に例を示します。


      initiator# iscsiadm add static-config eui.5000ABCD78945E2B,10.0.0.1
      

    発見方式が有効化されるまで iSCSI 接続は起動されません。次の手順を参照してください。

  3. 次のいずれかを使って iSCSI ターゲット発見方式を有効にします。

    • 動的に発見される (SendTargets) デバイスを構成した場合は、 SendTargets 発見方式を有効にします。


      initiator# iscsiadm modify discovery --sendtargets enable
      
    • 動的に発見される (iSNS) デバイスを構成した場合は、 iSNS 発見方式を有効にします。


      initiator# iscsiadm modify discovery --iSNS enable
      
    • 静的ターゲットを構成した場合は、静的ターゲット発見方式を有効にします。


      initiator# iscsiadm modify discovery --static enable
      
  4. ローカルシステム用の iSCSI デバイスリンクを作成します。


    initiator# devfsadm -i iscsi
    

Procedure発見された iSCSI ターゲットを削除する方法

発見アドレス、iSNS サーバー、または静的構成を削除するか、あるいは発見方式を無効にしたあとで、関連付けられたターゲットがログアウトします。たとえば、これらの関連付けられたターゲットが引き続き使用され、ファイルシステムがマウントされている場合は、これらのデバイスのログアウトが失敗し、アクティブターゲットリスト上に残ります。

この省略可能な手順では、ユーザーが現在ログインしているローカルシステム上で、iSCSI ターゲットデバイスへのアクセスがすでに構成されているものとします。

  1. スーパーユーザーになります。

  2. (省略可能) 次のいずれかを使って iSCSI ターゲット発見方式を無効にします。

    • SendTargets 発見方式を無効にする必要がある場合は、次のコマンドを使用します。


      initiator# iscsiadm modify discovery --sendtargets disable
      
    • iSNS 発見方式を無効にする必要がある場合は、次のコマンドを使用します。


      initiator# iscsiadm modify discovery --iSNS disable
      
    • 静的ターゲット発見方式を無効にする必要がある場合は、次のコマンドを使用します。


      initiator# iscsiadm modify discovery --static disable
      
  3. 次のいずれかを使って iSCSI デバイス発見エントリを削除します。

    • iSCSI SendTargets 発見エントリを削除します。

      次に例を示します。


      initiator# iscsiadm remove discovery-address 10.0.0.1:3260
      
    • iSCSI iSNS 発見エントリを削除します。

      次に例を示します。


      # iscsiadm remove isns-server 10.0.0.1:3205
      
    • 静的 iSCSI 発見エントリを削除します。

      次に例を示します。


      initiator# iscsiadm remove static-config eui.5000ABCD78945E2B,10.0.0.1
      

    注 –

    使用中の論理ユニットが関連付けられた発見エントリを無効化または削除しようとすると、次のメッセージが表示され、無効化または削除が失敗します。


    logical unit in use

    このエラーが発生した場合は、論理ユニット上の関連付けられたすべての入出力を停止し、ファイルシステムのマウント解除などを行います。そのあとで無効化または削除の操作を再び実行します。


  4. iSCSI ターゲットデバイスを削除します。

    論理ユニット番号 (LUN) を指定して、ターゲットを削除します。ターゲットの作成時に LUN を指定しなかった場合、値 0 が使用されます。ターゲットに複数の LUN が関連付けられている場合は、LUN 0 を最後に削除する必要があります。

    次に例を示します。


    initiator# iscsitadm delete target --lun 0 sandbox
    

iSCSI ディスクへのアクセス

リブート時に iSCSI ディスクにアクセスするには、ディスク上にファイルシステムを作成し、SCSI デバイス上の UFS ファイルシステムの場合と同じ方法で、/etc/vfstab エントリを追加します。次に、iSCSI イニシエータサービスに合わせて、iSCSI ディスクをマウントする SMF サービスを新規作成します。詳細は、「リブート時に iSCSI ディスクにアクセスする方法」を参照してください。

Solaris iSCSI イニシエータによってデバイスが発見されると、ログインネゴシエーションが自動的に行われます。Solaris iSCSI ドライバは、利用可能な LUN の個数を判断し、デバイスノードを作成します。この時点で、iSCSI デバイスをほかのすべての SCSI デバイスと同様に扱えます。

ローカルシステム上で iSCSI ディスクを表示するには、format ユーティリティーを使用します。

次の format 出力では、ディスク 2 および 3 が MPxIO の制御下にない iSCSI LUN です。ディスク 21 と 22 が MPxIO の制御下にある iSCSI LUN です。


initiator# format
AVAILABLE DISK SELECTIONS:
       0. c0t1d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424>
          /pci@8,600000/SUNW,qlc@4/fp@0,0/ssd@w500000e010685cf1,0
       1. c0t2d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424>
          /pci@8,600000/SUNW,qlc@4/fp@0,0/ssd@w500000e0106e3ba1,0
       2. c3t0d0 <ABCSTORAGE-100E-00-2.2 cyl 20813 alt 2 hd 16 sec 63>
          /iscsi/disk@0000iqn.2001-05.com.abcstorage%3A6-8a0900-477d70401-
           b0fff044352423a2-hostname-020000,0
       3. c3t1d0 <ABCSTORAGE-100E-00-2.2 cyl 20813 alt 2 hd 16 sec 63>
           /iscsi/disk@0000iqn.2001-05.com.abcstorage%3A6-8a0900-3fcd70401 
           -085ff04434f423a2-hostname-010000,0
.
.
.
      21. c4t60A98000686F694B2F59775733426B77d0 <ABCSTORAGE-LUN-0.2 cyl  
          4606 alt 2 hd 16 sec 256>
          /scsi_vhci/ssd@g60a98000686f694b2f59775733426b77
      22. c4t60A98000686F694B2F59775733434C41d0 <ABCSTORAGE-LUN-0.2 cyl  
          4606 alt 2 hd 16 sec 256>
          /scsi_vhci/ssd@g60a98000686f694b2f59775733434c41

Procedureリブート時に iSCSI ディスクにアクセスする方法

次に示す手順に従って、システムのリブート後に iSCSI ディスクにアクセスします。

  1. iSCSI LUN のエントリを /etc/vfstab ファイルに追加します。mount at boot オプションを no に設定します。


    #device         device          mount           FS      fsck    mount   mount
    #to mount       to fsck         point           type    pass    at boot options
    #
    /dev/dsk/c3t600144F04B555F370000093D00495B00d0s0        -       /mnt    ufs     -       no      -
  2. システムのリブート後に iSCSI LUN を自動的にマウントする SMF サービスマニフェストを作成します。

    たとえば、次の内容を含む XML マニフェストファイル /var/svc/manifest/network/iscsi/iscsimount.xml を作成します。


    <?xml version="1.0"?>
     <!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
     
     <service_bundle type="manifest" name="iscsimount">
         <service
             name="iscsimount"
             type="service"
             version="1" >
     
             <single_instance/>
     
             <!--
     	    We depend on the iscsi initiator service
     	    -->
             <dependency
                 name="client"
                 type="service"
                 grouping="require_all"
                 restart_on="none">
                 <service_fmri value="svc:/network/iscsi/initiator"/>
             </dependency>
     
             <instance name="default" enabled="false">
     
             <!-- mount iSCSI volumes -->
                 <exec_method
                     type="method"
                     name="start"
                     exec="/var/tmp/iscsi_mount"
                     timeout_seconds="60"/>
     
             <!-- umount iSCSI volumes -->
                 <exec_method
                     type="method"
                     name="stop"
                     exec="/var/tmp/iscsi_umount"
                     timeout_seconds="60" />
     
                 <property_group name="startd" type="framework">
                     <propval name="duration" type="astring" value="transient"/>
                 </property_group>
             </instance>
     
             <template>
                 <common_name>
                     <loctext xml:lang="C">
                         iSCSI Mount Service
                     </loctext>
                 </common_name>
             </template>
         </service>
     </service_bundle>
  3. /var/tmp ディレクトリ内に次のファイルを作成します。

    次の bash シェルスクリプトは、/mnt ディレクトリで iSCSI ディスクの mount および umount コマンドを実行します。


    bash-4.0# cat /var/tmp/iscsi_mount
    #!/usr/bin/bash
    mount /mnt           #Add multiple iscsi lun(s) to mount
    bash-4.0# cat /var/tmp/iscsi_umount 
    #!/usr/bin/bash
    umount /mnt          #Add multiple iscsi lun(s) to umount

    これらのスクリプトに実行権を設定します。次に例を示します。


    bash-4.0# chmod u+x /var/tmp/iscsi_mount
    bash-4.0# chmod u+x /var/tmp/iscsi_umount
    
  4. マニフェストをインポートします。


    # svccfg import /var/svc/manifest/network/iscsi/iscsimount.xml
    # svccfg enable iscsimount
    

    注 –

    このサービスを有効にしたあとで、システムのシャットダウン時またはリブート時に次のメッセージが表示されることがあります。


    iscsi: NOTICE: iscsi session(4) - session logout failed (1)
    iscsi: NOTICE: iscsi discovery failure - SendTargets method is not enabled
    iscsi: NOTICE: iscsi discovery failure - iSNS method is not enabled

    これらのメッセージは無視しても問題ありません。または、リブートの直前に次のコマンドを実行することで、メッセージの表示を回避できます。


    # svcadm disable -t iscsimount

    Solaris iSCSI イニシエータによってデバイスが発見されると、ログインネゴシエーションが自動的に行われます。Solaris iSCSI ドライバは、利用可能な LUN の個数を判断し、デバイスノードを作成します。この時点で、iSCSI デバイスをほかのすべての SCSI デバイスと同様に扱えます。


ProcedureiSCSI 構成の監視

iscsiadm list コマンドを使用して、iSCSI イニシエータとターゲットデバイスに関する情報を表示できます。

  1. スーパーユーザーになります。

  2. iSCSI イニシエータに関する情報を表示します。

    次に例を示します。


    # iscsiadm list initiator-node
    Initiator node name: iqn.1986-03.com.sun:01:0003ba4d233b.425c293c
    Initiator node alias: zzr1200
            Login Parameters (Default/Configured):
                    Header Digest: NONE/-
                    Data Digest: NONE/-
            Authentication Type: NONE
            RADIUS Server: NONE
            RADIUS access: unknown
            Configured Sessions: 1
  3. 使用中の発見方式に関する情報を表示します。

    次に例を示します。


    # iscsiadm list discovery
    Discovery:
    	Static: enabled
    	Send Targets: enabled
    	iSNS: enabled

例 14–1 iSCSI ターゲットの情報の表示

次の例では、特定の iSCSI ターゲットのパラメータの設定を表示する方法を示します。


# iscsiadm list target-param iqn.1992-08.com.abcstorage:sn.33592219
        Target: iqn.1992-08.com.abcstorage:sn.33592219

iscsiadm list target-param -v コマンドによって次の情報が表示されます。

iscsiadm list target-param -v コマンドでは、/ 指定子の前にデフォルトのパラメータ値が表示され、/ 指定子の後に構成後のパラメータ値が表示されます。パラメータをまったく構成していない場合は、構成後のパラメータの値がハイフン (-) で表示されます。詳細は、次の例を参照してください。


# iscsiadm list target-param -v eui.50060e8004275511 Target: eui.50060e8004275511
        Alias: -
        Bi-directional Authentication: disabled
        Authentication Type: NONE
        Login Parameters (Default/Configured):
                Data Sequence In Order: yes/-
                Data PDU In Order: yes/-
                Default Time To Retain: 20/-
                Default Time To Wait: 2/-
                Error Recovery Level: 0/-
                First Burst Length: 65536/-
                Immediate Data: yes/-
                Initial Ready To Transfer (R2T): yes/-
                Max Burst Length: 262144/-
                Max Outstanding R2T: 1/-
                Max Receive Data Segment Length: 65536/-
                Max Connections: 1/-
                Header Digest: NONE/-
                Data Digest: NONE/-
        Configured Sessions: 1

次の例では、ターゲットとイニシエータの間でネゴシエートされたあとのパラメータが出力されています。


# iscsiadm list target -v eui.50060e8004275511
Target: eui.50060e8004275511
        TPGT: 1
        ISID: 4000002a0000
        Connections: 1
                CID: 0
                  IP address (Local): 172.90.101.71:32813
                  IP address (Peer): 172.90.101.40:3260
                  Discovery Method: Static
                  Login Parameters (Negotiated):
                        Data Sequence In Order: yes
                        Data PDU In Order: yes
                        Default Time To Retain: 0
                        Default Time To Wait: 3
                        Error Recovery Level: 0
                        First Burst Length: 65536
                        Immediate Data: yes
                        Initial Ready To Transfer (R2T): yes
                        Max Burst Length: 262144
                        Max Outstanding R2T: 1
                        Max Receive Data Segment Length: 65536
                        Max Connections: 1
                        Header Digest: NONE
                        Data Digest: NONE

iSCSI イニシエータと iSCSI ターゲットのパラメータの変更

iSCSI イニシエータおよび iSCSI ターゲットデバイスのどちらでもパラメータは変更可能です。ただし、iSCSI イニシエータ上で変更可能なパラメータは、次のものだけです。

iSCSI ドライバは、iSCSI イニシエータと iSCSI ターゲットデバイスのパラメータのデフォルト値を提供します。iSCSI イニシエータのパラメータを変更すると、iSCSI ターゲットデバイスにすでに別の値が設定されている場合以外、その変更後のパラメータが iSCSI ターゲットデバイスに継承されます。


注意 – 注意 –

変更対象のパラメータがターゲットソフトウェアによってサポートされていることを確認してください。サポートされていない場合、iSCSI ターゲットデバイスにログインできない可能性があります。サポートされているパラメータの一覧については、使用するアレイのマニュアルを参照してください。


iSCSI パラメータの変更は、イニシエータとターゲット間の入出力が完了した時点で行うことをお勧めします。iscsiadm modify コマンドを使って変更が実行されると、iSCSI ドライバはセッションを接続し直します。

ProcedureiSCSI イニシエータと iSCSI ターゲットのパラメータを変更する方法

この手順の前半では、iSCSI イニシエータの変更されたパラメータが iSCSI ターゲットデバイスにどのように継承されるかを示します。この手順の後半では、iSCSI ターゲットデバイス上のパラメータを実際に変更する方法を示します。

この省略可能な手順では、ユーザーが現在ログインしているローカルシステム上で、iSCSI ターゲットデバイスへのアクセスがすでに構成されているものとします。

  1. スーパーユーザーになります。

  2. iSCSI イニシエータと iSCSI ターゲットデバイスの現在のパラメータを一覧表示します。

    1. iSCSI イニシエータの現在のパラメータを一覧表示します。次に例を示します。


      initiator# iscsiadm list initiator-node
      Initiator node name: iqn.1986-03.com.sun:01:0003ba4d233b.425c293c
      Initiator node alias: zzr1200
              Login Parameters (Default/Configured):
                      Header Digest: NONE/-
                      Data Digest: NONE/-
              Authentication Type: NONE
              RADIUS Server: NONE
              RADIUS access: unknown
              Configured Sessions: 1
    2. iSCSI ターゲットデバイスの現在のパラメータを一覧表示します。次に例を示します。


      initiator# iscsiadm list target-param -v iqn.1992-08.com.abcstorage:sn.84186266
      Target: iqn.1992-08.com.abcstorage:sn.84186266
              Alias: -
              Bi-directional Authentication: disabled
              Authentication Type: NONE
              Login Parameters (Default/Configured):
                      Data Sequence In Order: yes/-
                      Data PDU In Order: yes/-
                      Default Time To Retain: 20/-
                      Default Time To Wait: 2/-
                      Error Recovery Level: 0/-
                      First Burst Length: 65536/-
                      Immediate Data: yes/-
                      Initial Ready To Transfer (R2T): yes/-
                      Max Burst Length: 262144/-
                      Max Outstanding R2T: 1/-
                      Max Receive Data Segment Length: 65536/-
                      Max Connections: 1/-
                      Header Digest: NONE/-
                      Data Digest: NONE/-
               Configured Sessions: 1

      iSCSI イニシエータと iSCSI ターゲットデバイスの両方で、ヘッダーダイジェストとデータダイジェストのパラメータがどちらも現在 NONE に設定されています。

      iSCSI ターゲットデバイスのデフォルトのパラメータを確認するには、Example 14–1例 14–1 出力を参照してください。

  3. iSCSI イニシエータのパラメータを変更します。

    たとえば、ヘッダーダイジェストを CRC32 に設定します。


    initiator# iscsiadm modify initiator-node -h CRC32
    

    イニシエータのノード名を変更した場合は、新しい名前がターゲットと同じ発見ドメインに属していないと、iSNS によって発見されたターゲットがログアウトおよび削除されることがあります。ただし、ターゲットが使用中の場合は、削除されません。たとえば、これらのターゲット上でファイルが開いている場合またはファイルシステムがマウントされている場合は、それらのターゲットは削除されません。

    これらのターゲットと新しいイニシエータノードの名前が同じ発見ドメインに属している場合は、名前の変更後に新しいターゲットも表示されることがあります。

  4. パラメータが変更されたことを確認します。

    1. iSCSI イニシエータの更新済みパラメータ情報を表示します。次に例を示します。


      initiator# iscsiadm list initiator-node
      Initiator node name: iqn.1986-03.com.sun:01:0003ba4d233b.425c293c
      Initiator node alias: zzr1200
              Login Parameters (Default/Configured):
                      Header Digest: NONE/CRC32
                      Data Digest: NONE/-
              Authentication Type: NONE
              RADIUS Server: NONE
              RADIUS access: unknown
              Configured Sessions: 1

      ヘッダーダイジェストは CRC32 に設定されています。

    2. iSCSI ターゲットデバイスの更新済みパラメータ情報を表示します。次に例を示します。


      initiator# iscsiadm list target-param -v iqn.1992-08.com.abcstorage:sn.84186266
      Target: iqn.1992-08.com.abcstorage:sn.84186266
              Alias: -
              Bi-directional Authentication: disabled
              Authentication Type: NONE
              Login Parameters (Default/Configured):
                      Data Sequence In Order: yes/-
                      Data PDU In Order: yes/-
                      Default Time To Retain: 20/-
                      Default Time To Wait: 2/-
                      Error Recovery Level: 0/-
                      First Burst Length: 65536/-
                      Immediate Data: yes/-
                      Initial Ready To Transfer (R2T): yes/-
                      Max Burst Length: 262144/-
                      Max Outstanding R2T: 1/-
                      Max Receive Data Segment Length: 65536/-
                      Max Connections: 1/-
                      Header Digest: CRC32/-
                      Data Digest: NONE/-
              Configured Sessions: 1

      ヘッダーダイジェストは CRC32 に設定されています。

  5. iSCSI イニシエータが iSCSI ターゲットに接続し直されたことを確認します。次に例を示します。


    initiator# iscsiadm list target -v iqn.1992-08.com.abcstorage:sn.84186266
    Target: iqn.1992-08.com.abcstorage:sn.84186266
            TPGT: 2
            ISID: 4000002a0000
            Connections: 1
                    CID: 0
                      IP address (Local): nnn.nn.nn.nnn:64369
                      IP address (Peer): nnn.nn.nn.nnn:3260
                      Discovery Method: SendTargets
                      Login Parameters (Negotiated):
                            .
                            .
                            .
                            Header Digest: CRC32
                            Data Digest: NONE 
  6. (省略可能) iSCSI イニシエータまたは iSCSI ターゲットデバイスのパラメータを設定解除します。

    iscsiadm modify コマンドを使用してデフォルトの設定に戻すことによってパラメータを設定解除できます。あるいは、iscsiadm remove コマンドを使ってすべてのターゲットプロパティーをデフォルト設定にリセットします。

    iscsiadm modify target-param コマンドは、コマンド行で指定されたパラメータのみを変更します。

    次の例では、ヘッダーダイジェストを none にリセットする方法を示します。


    initiator# iscsiadm modify target-param -h none iqn.1992-08.com.abcstorage:sn...
    

    iscsiadm remove target-param コマンドについては、iscsiadm(1M) のマニュアルページを参照してください。

Solaris iSCSI マルチパスデバイスの設定

Solaris iSCSI マルチパス (MPxIO) デバイスを使用する場合には、次のガイドラインを考慮してください。

Procedureターゲットの複数の iSCSI セッションを有効にする方法

この手順を使用して、単一のターゲットに接続する複数の iSCSI セッションを作成できます。このシナリオは、ログインのリダイレクションをサポートするか、または同じターゲットポータルグループに含まれている複数のターゲットのポータルを使用する iSCSI ターゲットデバイスの場合に役に立ちます。ターゲットごとに複数の iSCSI セッションを使用するときは、Solaris SCSI Multipathing (MPxIO) を組み合わせて使用します。また、ホスト側の複数の NIC を使用して同じターゲット上の複数のポータルに接続すると、より広い帯域幅を実現できます。

MS/T 機能は、イニシエータのセッション ID (ISID) を変えることで、ターゲット上に 2 つ以上のセッションを作成します。この機能を有効にすると、ネットワークに 2 つの SCSI レイヤーパスが作成され、複数のターゲットを iSCSI レイヤーから Solaris I/O レイヤーまで公開できるようになります。MPxIO ドライバは、これらのパスに対する予約を処理します。

iSCSI と MPxIO パスの相互動作の仕組みについては、「Solaris iSCSI マルチパスデバイスの設定」を参照してください。

iSCSI ターゲットの複数セッションを設定する前に、次の項目を確認してください。

  1. スーパーユーザーになります。

  2. iSCSI イニシエータと iSCSI ターゲットの現在のパラメータを一覧表示します。

    1. iSCSI イニシエータの現在のパラメータを一覧表示します。次に例を示します。


      initiator# iscsiadm list initiator-node
      Initiator node name: iqn.1986-03.com.sun:01:0003ba4d233b.425c293c
      Initiator node alias: zzr1200
              .
              .
              .
              Configured Sessions: 1
    2. iSCSI ターゲットデバイスの現在のパラメータを一覧表示します。次に例を示します。


      initiator# iscsiadm list target-param -v iqn.1992-08.com.abcstorage:sn.84186266
      Target: iqn.1992-08.com.abcstorage:sn.84186266
              Alias: -
              .
              .
              .
              Configured Sessions: 1

      Configured Sessions (構成済みのセッション) の値は、ターゲットポータルグループ内の各ターゲット名用に作成される構成済みの iSCSI セッションの数です。

  3. 次のいずれかを選択し、構成済みのセッションの数をイニシエータノードで変更してすべてのターゲットに適用するか、ターゲットレベルで変更して特定のターゲットに適用します。

    ターゲットのセッション数は 1 から 4 の間である必要があります。

    • iSCSI イニシエータノードにパラメータを適用します。

      次に例を示します。


      initiator# iscsiadm modify initiator-node -c 2
      
    • iSCSI ターゲットにパラメータを適用します。

      次に例を示します。


      initiator# iscsiadm modify target-param -c 2  iqn.1992-08.com.abcstorage:sn.84186266
      
    • 構成済みセッションを 1 つ以上のローカル IP アドレスにバインドします。

      構成済みのセッションは、特定のローカル IP アドレスにバインドすることもできます。この方法を使用する場合は、コンマ区切りのリストで 1 つ以上のローカル IP アドレスを指定します。各 IP アドレスは iSCSI セッションを表します。この方法は、イニシエータノードまたはターゲットパラメータのレベルでも実行できます。次に例を示します。


      initiator# iscsiadm modify initiator-node -c 10.0.0.1,10.0.0.2
      

      注 –

      指定した IP アドレスがルーティング可能ではない場合、アドレスが無視され、デフォルトの Solaris ルートおよび IP アドレスがこのセッションで使用されます。


  4. パラメータが変更されたことを確認します。

    1. イニシエータノードの更新された情報を表示します。次に例を示します。


      initiator# iscsiadm list initiator-node
      Initiator node name: iqn.1986-03.com.sun:01:0003ba4d233b.425c293c
      Initiator node alias: zzr1200
              .
              .
              .
              Configured Sessions: 2
    2. ターゲットノードの更新された情報を表示します。次に例を示します。


      initiator# iscsiadm list target-param -v iqn.1992-08.com.abcstorage:sn.84186266
      Target: iqn.1992-08.com.abcstorage:sn.84186266
              Alias: -
              .
              .
              .
              Configured Sessions: 2
  5. mpathadm list lu コマンドで複数パスを一覧表示して、OS デバイス名が iscsiadm list の出力に一致していることと、パスの数が 2 以上であることを確認します。