付録B iSCSI ディスク

iSCSI (Internet Small Computer System Interface) は、SCSI の要求と応答を TCP/IP 上で運用することでコンピューターとストレージデバイスとの通信を可能にするプロトコルです。iSCSI は標準の SCSI プロトコルを土台にしているため、SCSI の用語を一部使用します。要求の送信先であり、その要求に応える SCSI バス上のデバイスは ターゲット と呼ばれます。要求を発信する側のデバイスは イニシエーター と呼ばれます。言い替えると、iSCSI ディスクがターゲットで、SCSI コントローラーや SCSI Host Bus Adapter (HBA) に相当する iSCSI ソフトウェアがイニシエーターです。この付録での説明は、iSCSI イニシエーターとしての Linux に iSCSI ディスクを使用させる方法に限定しています。したがって、Linux に iSCSI ディスクをホストさせる方法については触れていません。
Linux には、SCSI HBA ドライバーの代わりとなるソフトウェア iSCSI イニシエーターがカーネルに内蔵されています。Linux ではこれを利用して iSCSI ディスクを使用します。ただし、iSCSI は完全にネットワークベースのプロトコルとなるため、iSCSI イニシエーターに対応するには、ネットワーク上で単に SCSI パケットを送信するだけではなくそれ以上の能力が必要とされます。Linux で iSCSI ターゲットを使用する前に、Linux 側からネットワーク上のターゲットを検出して接続を行わなければなりません。ターゲットへのアクセスを得るため、Linux 側から認証情報を送信しなければならない場合もあります。また、ネットワーク接続に障害が発生した場合には、Linux 側で障害の検出および新規接続の確立を行う必要があります。また必要に応じて再ログインも必要になります。
検出、接続およびログインは iscsiadm ユーティリティーによってユーザー領域で処理され、エラーはユーザー領域で iscsid ユーティリティーによって処理されます。
iscsiadm および iscsid はいずれも Red Hat Enterprise Linux の iscsi-initiator-utils パッケージの一部になります。

B.1. Anaconda での iSCSI ディスク

Anaconda インストールプログラムで iSCSI ディスクを検出しログインする方法が 2 とおりあります。
  1. Anaconda が起動すると、システムの BIOS またはアドオンの起動 ROM 側で、iSCSI で起動できる BIOS 拡張の iBFT (iSCSI Boot Firmware Table) に対応しているかがチェックされます。BIOS が iBFT に対応している場合、Anaconda は BIOS から設定されている起動ディスクの iSCSI ターゲット情報を読み込み、そのターゲットにログインしてインストールターゲットとして使用できるようにします。

    重要

    iSCSI ターゲットに自動接続するには、ターゲットにアクセスするネットワークデバイスがアクティベートされている必要があります。アクティベートするには ip=ibft ブートオプションの使用が推奨されます。
  2. Anaconda では、グラフィカルユーザーインターフェースで iSCSI ターゲットの検出と追加を手動で行うことができます。メインメニューの「インストールの概要」画面で「インストール先」オプションをクリックします。特殊なディスクおよびネットワークディスク セクションの ディスクの追加 をクリックします。タブが付いたストレージデバイスの一覧が表示されます。右下にある iSCSI ターゲットを追加 ボタンをクリックして検出のプロセスに進みます。詳細については、「ストレージデバイス選択の画面」を参照してください。

    重要

    制約: この方法を使って手動で追加された iSCSI ターゲットには、/boot パーティションを配置することはできません。/boot パーティションを含んでいる iSCSI ターゲットは、iBFT で設定する必要があります。
    ただし、インストールされたシステムがファームウェア iBFT 以外の方法 (たとえば、iPXE の使用) で提供された iBFT 設定の iSCSI から起動するインスタンスの場合には、inst.nonibftiscsiboot インストーラーブートオプションを使用して /boot パーティションの制約を無効にすることができます。
Anacondaiscsiadm を使用して iSCSI ターゲットの検出とログインを行い、iscsiadm はこれらターゲットの情報を iscsiadm iSCSI データベースに自動的に格納します。Anaconda はこのデータベースをインストール済みシステムにコピーし、/ に使用されていない iSCSI ターゲットに印を付けます。システムを起動すると、これらのターゲットに自動的にログインするようになります。/ が iSCSI ターゲット上に配置されている場合は、initrd がこのターゲットにログインするため Anaconda では同じターゲットに複数のログイン試行が起こらないよう起動スクリプトにこのターゲットを含ませないようにします。