Linux 論理区画への仮想ディスク装置の追加
IBM® i リソースを使用する Linux® 論理区画に仮想ディスク装置を動的に追加できます。 これにより、必要に応じて AIX® 論理区画のストレージ容量を増やすことができます。
本タスクについて
仮想ディスクは、 Linuxを実行するためにサーバーに物理装置を追加する必要がないため、サーバー上のハードウェア構成を単純化します。 Linux 論理区画には、最大 64 個の仮想ディスクを割り当てることができます。 各仮想ディスクは最大 1000 GB のストレージをサポートします。 各仮想ディスクは、 Linux には 1 つの実際のディスク装置として認識されます。 ただし、 i 統合ファイル・システム内の関連スペースは、 i 論理区画に属するディスク全体に分散されます。 ディスク間でストレージを分散させると、 iによるデバイス・パリティー保護の利点が得られます。 したがって、 Linuxを使用してデバイス・パリティー保護をセットアップすることにより、追加の処理リソースおよびメモリー・リソースを使用する必要はありません。
IBM i は、 Linux 論理区画に仮想ディスクを動的に追加する機能を提供します。 統合ファイル・システムにディスク・スペースを割り当て、サーバーまたは論理区画を再始動せずに Linux で使用できるようにすることができます。 Linux 管理者は、新たに割り振られたディスク・スペースを構成して、サーバーを再始動せずに使用可能にすることもできます。
Linux 論理区画に仮想ディスクを動的に追加するには、以下の手順を実行します。
手順
- IBM Navigator for iを使用する場合は、 IBM Navigator for iを使用して、ネットワーク・サーバー・ストレージ・スペースを作成します。
- マイ接続 > サーバー > ネットワーク > Windows 管理 を展開します。
- 「ディスク・ドライブ」 を右クリックして、 「新規ディスク」を選択します。
- 「ディスク・ドライブ名」 フィールドに、ネットワーク・サーバー・ストレージ・スペースに付ける名前を指定します。
- 「説明」 フィールドに、ネットワーク・サーバー・ストレージ・スペースの分かりやすい説明を指定します。
- 「容量」 フィールドに、新規ネットワーク・サーバー・ストレージ・スペースのサイズをメガバイト単位で指定します。 使用するサイズを決定するには、任意の Linux ディストリビューターのインストール資料を参照してください。
- 「OK」をクリックします。
- ステップ 4に進みます。
- 文字ベース・インターフェースを使用する場合は、
文字ベース・インターフェースによってネットワーク・サーバー・ストレージ・スペースを作成する。
- IBM i コマンド行で、コマンド CRTNWSSTG を入力して F4を押します。「NWS ストレージ・スペースの作成 (CRTNWSSTG)」画面が開きます。
- 「ネットワーク・サーバー・ストレージ・スペース」フィールドでネットワーク・サーバー・ ストレージ・スペースに付ける名前を指定する。
- 「サイズ」フィールドで新規ネットワーク・サーバー・ストレージ・スペースのサイズをメガバイト単位で指定する。 使用するサイズを決定するには、任意の Linux ディストリビューターのインストール資料を参照してください。
- 「テキスト記述」フィールドでネットワーク・サーバー・ストレージ・スペースの分かりやすい説明を指定する。
- Enter キーを押します。
- IBM i コマンド行で、コマンド CRTNWSSTG を入力して F4を押します。
- IBM Navigator for iを使用する場合は、 IBM Navigator for iを使用して、ネットワーク・サーバー・ストレージ・スペースをリンクします。
- マイ接続 > サーバー > ネットワーク > Windows 管理 を展開します。
- 「ディスク・ドライブ」をクリックし、使用可能なネットワーク・サーバー・ストレージ・スペースを右クリックして、 「リンクの追加」を選択します。
- ネットワーク・サーバー・ストレージ・スペースのリンク先のサーバーを選択する。
- 使用可能なデータ・アクセス・タイプを 1 つ選択する。
- 「OK」をクリックします。
- ステップ 5に進みます。
- 文字ベース・インターフェースを使用する場合は、
文字ベース・インターフェースによってネットワーク・サーバー・ストレージ・スペースにリンクする。
- IBM i コマンド行で、コマンド ADDNWSSTGL を入力して F4を押します。「ネットワーク・サーバー・ストレージ・リンクの追加 (ADDNWSSTGL)」画面が開きます。
- 「ネットワーク・サーバー記述」フィールドで、ネットワーク・サーバー記述 (NWSD) の名前を指定する。
- 「動的ストレージ・リンク」フィールドで *YES を指定すると、ネットワーク・サーバー・ストレージ・スペースが論理区画に対して動的に使用可能になります (つまり、 Linux 論理区画をリブートせずに使用可能になります)。
- 「ドライブ・シーケンス番号 (Drive sequence number)」フィールドで、使用するリンク順序位置を選択する。
- Enter キーを押します。
- IBM i コマンド行で、コマンド ADDNWSSTGL を入力して F4を押します。
- Linux 論理区画が実行されていない場合は、 Linux 論理区画を活動化します。 論理区画が実行されるまでは、先に進まないでください。
- スーパーユーザー (root) 特権を持つユーザー名を使用して Linux にログインします。
- 新規仮想ディスク・ドライブのホスト 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
になります。 - 新規仮想ディスク・ドライブの 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
になります。 - 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
を入力します。 - Linux コマンド・プロンプトで、コマンド
fdisk /dev/sdb
を入力して、仮想ディスク・ドライブ上にディスク区画を作成します。このコマンドを実行するには、スーパーユーザー (root) 特権が必要です。Command (m for help):
プロンプトが表示されます。 - プロンプトで
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
- コマンド・プロンプトで
d
と入力して現行区画を削除してから、新しい区画を作成します。ディスク区画のデフォルトのフォーマットは FAT16 です。 FAT16 としてフォーマットされたディスク区画を仮想ディスク・ドライブで使用しないでください。Partition number (1-4):
プロンプトが表示されます。 - 削除するディスク区画番号を入力して、Enter キーを押す。この例では、
1
と入力します。fdisk
コマンドにより、区画が正常に削除されたことを示すコマンド・プロンプトが表示されます。 -
n
と入力して、新規ディスク区画を作成します。Command action E extended P primary partition (1-4)
プロンプトが表示されます。 -
p
と入力して、仮想ディスク上に 1 次ディスク区画を作成し、Enter キーを押します。Partition number (1-4):
プロンプトが表示されます。 - これは仮想ディスク上の最初のパーティションであるため、
1
と入力して Enter キーを押します。First cylinder (1-200, default 1):
プロンプトが表示されます。 - Enter キーを押し、最初のディスク・シリンダーのデフォルトの 1 を使用する。これは、このディスク区画に、ディスク全体を使用します。
Last cylinder or +size or +sizeM or +sizeK (1-200, default 200):
プロンプトが表示されます。 - Enter キーを押し、最後のディスク・シリンダーのデフォルトの 200 を使用する。これは、この区画に、仮想ディスク全体を使用します。注: パーティションのタイプは、デフォルトで Linuxになります。 別のディスク・タイプ (論理ボリューム・マネージャー (LVM)、または Linux Extended など) が必要な場合は、
t
と入力して区画のタイプを変更します。fdisk
コマンドにより、 区画が正常に作成されたことを示すコマンド・プロンプトが戻されます。 -
w
と入力してディスク構造に対する変更をコミットし、Enter キーを押します。fdisk
コマンドは、仮想ディスク・ドライブに変更を書き込みます。fdisk
コマンドにより、以下の診断メッセージが表示されます。
操作が完了すると、fdisk コマンドはコマンド・プロンプトを戻します。The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
- Linux mkfs コマンドを使用して、ディスク区画をフォーマットします。mkfs コマンドには多くのオプション・パラメーターがありますが、通常、ほとんどのディスク使用ではデフォルトで十分です。 前のステップで作成したディスク・パーティションをフォーマットするには、スーパーユーザー (root) 特権を使用してログインしていることを確認し、 Linux コマンド・プロンプトで以下のコマンドを入力します。
2 番目の仮想ディスクには単一のディスク区画が存在するため、ディスクの名前は /dev/sdb1 です (sdb は 2 番目のディスクであることを示し、1 は区画 1 であることを示しています)。 mkfs コマンドにより以下の診断メッセージが表示されます。mkfs /dev/sdb1
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.
- 以下のコマンドを入力して、新規ファイルへのアクセスに使用できるディレクトリーを作成します。
mkdir /mnt/data
- 次のコマンドを入力して、仮想ディスク・ドライブを新規ディレクトリーにマウントします。
mount /dev/sdb1 /mnt/data
- Linux テキスト・エディター (vi など) を使用して /etc/fstab ファイルにエントリーを追加します。例えば、
/dev/sdb1 /mnt/data ext2 defaults 1 1
。 このエントリーは、 Linuxを再始動するたびに仮想ディスクをマウントします。