Linux 論理区画への仮想ディスク装置の追加

IBM® i リソースを使用する Linux® 論理区画に仮想ディスク装置を動的に追加できます。 これにより、必要に応じて AIX® 論理区画のストレージ容量を増やすことができます。

本タスクについて

仮想ディスクは、 Linuxを実行するためにサーバーに物理装置を追加する必要がないため、サーバー上のハードウェア構成を単純化します。 Linux 論理区画には、最大 64 個の仮想ディスクを割り当てることができます。 各仮想ディスクは最大 1000 GB のストレージをサポートします。 各仮想ディスクは、 Linux には 1 つの実際のディスク装置として認識されます。 ただし、 i 統合ファイル・システム内の関連スペースは、 i 論理区画に属するディスク全体に分散されます。 ディスク間でストレージを分散させると、 iによるデバイス・パリティー保護の利点が得られます。 したがって、 Linuxを使用してデバイス・パリティー保護をセットアップすることにより、追加の処理リソースおよびメモリー・リソースを使用する必要はありません。

IBM i は、 Linux 論理区画に仮想ディスクを動的に追加する機能を提供します。 統合ファイル・システムにディスク・スペースを割り当て、サーバーまたは論理区画を再始動せずに Linux で使用できるようにすることができます。 Linux 管理者は、新たに割り振られたディスク・スペースを構成して、サーバーを再始動せずに使用可能にすることもできます。

Linux 論理区画に仮想ディスクを動的に追加するには、以下の手順を実行します。

手順

  1. IBM Navigator for iを使用する場合は、 IBM Navigator for iを使用して、ネットワーク・サーバー・ストレージ・スペースを作成します。
    1. マイ接続 > サーバー > ネットワーク > Windows 管理 を展開します。
    2. 「ディスク・ドライブ」 を右クリックして、 「新規ディスク」を選択します。
    3. 「ディスク・ドライブ名」 フィールドに、ネットワーク・サーバー・ストレージ・スペースに付ける名前を指定します。
    4. 「説明」 フィールドに、ネットワーク・サーバー・ストレージ・スペースの分かりやすい説明を指定します。
    5. 「容量」 フィールドに、新規ネットワーク・サーバー・ストレージ・スペースのサイズをメガバイト単位で指定します。
      使用するサイズを決定するには、任意の Linux ディストリビューターのインストール資料を参照してください。
    6. 「OK」をクリックします。
    7. ステップ 4に進みます。
  2. 文字ベース・インターフェースを使用する場合は、 文字ベース・インターフェースによってネットワーク・サーバー・ストレージ・スペースを作成する。
    1. IBM i コマンド行で、コマンド CRTNWSSTG を入力して F4を押します。
      「NWS ストレージ・スペースの作成 (CRTNWSSTG)」画面が開きます。
    2. 「ネットワーク・サーバー・ストレージ・スペース」フィールドでネットワーク・サーバー・ ストレージ・スペースに付ける名前を指定する。
    3. 「サイズ」フィールドで新規ネットワーク・サーバー・ストレージ・スペースのサイズをメガバイト単位で指定する。
      使用するサイズを決定するには、任意の Linux ディストリビューターのインストール資料を参照してください。
    4. 「テキスト記述」フィールドでネットワーク・サーバー・ストレージ・スペースの分かりやすい説明を指定する。
    5. Enter キーを押します。
  3. IBM Navigator for iを使用する場合は、 IBM Navigator for iを使用して、ネットワーク・サーバー・ストレージ・スペースをリンクします。
    1. マイ接続 > サーバー > ネットワーク > Windows 管理 を展開します。
    2. 「ディスク・ドライブ」をクリックし、使用可能なネットワーク・サーバー・ストレージ・スペースを右クリックして、 「リンクの追加」を選択します。
    3. ネットワーク・サーバー・ストレージ・スペースのリンク先のサーバーを選択する。
    4. 使用可能なデータ・アクセス・タイプを 1 つ選択する。
    5. 「OK」をクリックします。
    6. ステップ 5に進みます。
  4. 文字ベース・インターフェースを使用する場合は、 文字ベース・インターフェースによってネットワーク・サーバー・ストレージ・スペースにリンクする。
    1. IBM i コマンド行で、コマンド ADDNWSSTGL を入力して F4を押します。
      「ネットワーク・サーバー・ストレージ・リンクの追加 (ADDNWSSTGL)」画面が開きます。
    2. 「ネットワーク・サーバー記述」フィールドで、ネットワーク・サーバー記述 (NWSD) の名前を指定する。
    3. 「動的ストレージ・リンク」フィールドで *YES を指定すると、ネットワーク・サーバー・ストレージ・スペースが論理区画に対して動的に使用可能になります (つまり、 Linux 論理区画をリブートせずに使用可能になります)。
    4. 「ドライブ・シーケンス番号 (Drive sequence number)」フィールドで、使用するリンク順序位置を選択する。
    5. Enter キーを押します。
  5. Linux 論理区画が実行されていない場合は、 Linux 論理区画を活動化します。 論理区画が実行されるまでは、先に進まないでください。
  6. スーパーユーザー (root) 特権を持つユーザー名を使用して Linux にログインします。
  7. 新規仮想ディスク・ドライブのホスト ID、SCSI バス、および論理装置番号 (LUN) を 決定する。
    既存のデバイスをリストするには、 Linux コマンド・プロンプトでコマンド cat /proc/scsi/scsiを入力します。 以下の例は、このコマンドの出力例を示しています。
    Attached devices:
    Host: scsi0 Channel: 00 Id: 00 Lun: 00
      Vendor: IBM      Model: VDASD NETSPACE   Rev: 0001
      Type:   Direct-Access                    ANSI SCSI revision: 04
    上記の例で、NETSPACE は、 表示されたデバイスのネットワーク・ストレージ・スペースの名前です。 Linux 論理区画上の既存のネットワーク・ストレージ・スペースの名前を探します。 既存のネットワーク・ストレージ・スペースの、Host: 値 (ホスト ID) および Channel: (SCSI バス) と Lun: (論理装置番号 (LUN)) 値の 数値部分をメモします。 新規仮想ディスク・ドライブは、既存のネットワーク・ ストレージ・スペースと同じホスト ID、SCSI バス、および LUN をもつことになります。 例えば、 既存のネットワーク・ストレージ・スペースが前出のサンプル出力で示したものと同じであれば、 新規仮想ディスク・ドライブのホスト ID は 0、SCSI バスは 0、LUN は 0 になります。
  8. 新規仮想ディスク・ドライブの SCSI ID を決定する。
    Linux コマンド・プロンプトで以下のコマンドを入力することにより、既存のデバイスをテーブル形式でリストできます。
     cd /proc/scsi/sg
     cat device_hdr; cat devices
    以下の例は、このコマンドの出力例を示しています。
     host    chan    id      lun     type    opens   qdepth  busy    online
     0       0       0       0       0       2       30      0       1
     0       1       0       0       0       0       30      0       1
    
    既存のデバイスの host (ホスト ID)、 chan (SCSI バス)、 id (SCSI ID)、および lun (論理装置番号 (LUN)) の値をメモします。 前のステップで 決定したように、新規仮想ディスク・ドライブと同じホスト ID、SCSI バス、LUN を持つデバイスを 見つけます。 それらのデバイスの中から、最大の SCSI ID を持つデバイスを見つけます。 新規 仮想ディスク・ドライブは、既存の最大 SCSI ID よりも 1 つ大きな SCSI ID を持つことになります。 例えば、新しい仮想ディスク・ドライブのホスト ID が 0、SCSI バスが 0、LUN が 0であり、 Linux 論理区画上のデバイスが上記の出力例にリストされている場合、以下のようになります。 新規仮想ディスク・ドライブの SCSI ID は 1になります。
  9. Linux コマンド・プロンプトでコマンド echo "scsi add-single-device host chan id lun" > /proc/scsi/scsiを入力して、仮想ディスク・ドライブを手動で追加します。
    以下の情報を使用して、このコマンドの引数を理解するのに役立てます。
    • host はホスト ID です。
    • chan は SCSI バスです。
    • id は SCSI ID です。
    • lun は LUN です。
    例えば、新しい仮想ディスク・ドライブのホスト ID が 0、SCSI バスが 0、SCSI ID が 1、LUN が 0であるとします。 Linux コマンド・プロンプトでコマンド echo "scsi add-single-device 0 0 1 0" > /proc/scsi/scsi を入力します。
  10. Linux コマンド・プロンプトで、コマンド fdisk /dev/sdbを入力して、仮想ディスク・ドライブ上にディスク区画を作成します。
    このコマンドを実行するには、スーパーユーザー (root) 特権が必要です。
    Command (m for help): プロンプトが表示されます。
  11. プロンプトで p と入力して、仮想ディスク・ドライブの現行パーティション・テーブルを表示します。
    デフォルトでは、新しい仮想ディスク・ドライブには仮想ディスク上の単一のディスク区画を表示します。
    例:
     Disk /dev/sdb: 64 heads, 32 sectors, 200 cylinders
     Units = cylinders of 2048 * 512 bytes
    
     Device Boot    Start       End    Blocks   Id   System
     /dev/sdb1          1       199    203760    6   FAT16  
  12. コマンド・プロンプトで d と入力して現行区画を削除してから、新しい区画を作成します。
    ディスク区画のデフォルトのフォーマットは FAT16 です。 FAT16 としてフォーマットされたディスク区画を仮想ディスク・ドライブで使用しないでください。
    Partition number (1-4): プロンプトが表示されます。
  13. 削除するディスク区画番号を入力して、Enter キーを押す。
    この例では、1 と入力します。
    fdisk コマンドにより、区画が正常に削除されたことを示すコマンド・プロンプトが表示されます。
  14. n と入力して、新規ディスク区画を作成します。
    Command action E extended P primary partition (1-4) プロンプトが表示されます。
  15. p と入力して、仮想ディスク上に 1 次ディスク区画を作成し、Enter キーを押します。
    Partition number (1-4): プロンプトが表示されます。
  16. これは仮想ディスク上の最初のパーティションであるため、 1 と入力して Enter キーを押します。
    First cylinder (1-200, default 1): プロンプトが表示されます。
  17. Enter キーを押し、最初のディスク・シリンダーのデフォルトの 1 を使用する。
    これは、このディスク区画に、ディスク全体を使用します。
    Last cylinder or +size or +sizeM or +sizeK (1-200, default 200): プロンプトが表示されます。
  18. Enter キーを押し、最後のディスク・シリンダーのデフォルトの 200 を使用する。
    これは、この区画に、仮想ディスク全体を使用します。
    注: パーティションのタイプは、デフォルトで Linuxになります。 別のディスク・タイプ (論理ボリューム・マネージャー (LVM)、または Linux Extended など) が必要な場合は、 t と入力して区画のタイプを変更します。
    fdisk コマンドにより、 区画が正常に作成されたことを示すコマンド・プロンプトが戻されます。
  19. w と入力してディスク構造に対する変更をコミットし、Enter キーを押します。
    fdisk コマンドは、仮想ディスク・ドライブに変更を書き込みます。 fdisk コマンドにより、以下の診断メッセージが表示されます。
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.  
    操作が完了すると、fdisk コマンドはコマンド・プロンプトを戻します。
  20. Linux mkfs コマンドを使用して、ディスク区画をフォーマットします。
    mkfs コマンドには多くのオプション・パラメーターがありますが、通常、ほとんどのディスク使用ではデフォルトで十分です。 前のステップで作成したディスク・パーティションをフォーマットするには、スーパーユーザー (root) 特権を使用してログインしていることを確認し、 Linux コマンド・プロンプトで以下のコマンドを入力します。
     mkfs /dev/sdb1  
    2 番目の仮想ディスクには単一のディスク区画が存在するため、ディスクの名前は /dev/sdb1 です (sdb は 2 番目のディスクであることを示し、1 は区画 1 であることを示しています)。 mkfs コマンドにより以下の診断メッセージが表示されます。
    mke2fs 1.28 (31-Aug-2002)
    Fileserver label= 
    OS type: Linux Block size=1024 (log=0) 
    Fragment size=1024 (log=0) 
    51200 inodes, 204784 blocks
    10239 blocks (5.00%) reserved for the super user
    First data block=1
    25 block groups
    8192 blocks per group, 8192 fragments per group
    2048 inodes per group
    Superblock backups stored on blocks:
       	 	8193, 24577, 40961, 57345, 73729
    
    Writing inode tables: done
    Writing superblocks and fileserver accounting information: done
    
    This fileserver will be automatically checked every 29 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.  
  21. 以下のコマンドを入力して、新規ファイルへのアクセスに使用できるディレクトリーを作成します。 mkdir /mnt/data
  22. 次のコマンドを入力して、仮想ディスク・ドライブを新規ディレクトリーにマウントします。 mount /dev/sdb1 /mnt/data
  23. Linux テキスト・エディター (vi など) を使用して /etc/fstab ファイルにエントリーを追加します。
    例えば、/dev/sdb1 /mnt/data ext2 defaults 1 1。 このエントリーは、 Linuxを再始動するたびに仮想ディスクをマウントします。