 |
≫ |
|
|
 |
| 25-JUN-07, revised 10-DEC-08 |
 |
本ページに記載してある内容は限られた評価環境に於ける検証結果に基づいたものです。本ページの情報を利用する前に予め 技術情報、 保証について、ディストリビュータが提供する
WEBサイト等をご覧ください。 |
750GB SATA HDDをはじめとした大容量 HDDの登場により、SmartArrayでの 2TB超え環境が容易に、そして非常に安価に構築する事が可能になりました。
しかし、2TBを越える容量を扱うためには、OS側だけではなくファームウェア、ドライバ等への留意も必要となります。本ページではそれらを含めた注意点を説明させて頂きます。 |
PC/ATを祖としている昨今の PCでは、HDDのパーティションテーブルを扱う方式として MS-DOSディスクラベル(もしくはパーティション)形式を採用しています(Itaniumシステムを除く)。
この MS-DOSラベルは、セクタの開始位置に 4byteの値を利用しています。またセクタ数にも 4byteの値を利用しています。4byteと云う値は 2の 32乗となり 4294967296となります。HDDのセクタあたりの容量は 512byteになりますので、2TB迄しか扱えません。
この MBR形式は、セクタの開始位置に 4byteの値を利用しています。またセクタ数にも 4byteの値を利用しています。4byteと云う値は 2の 32乗となり 4294967296となります。HDDのセクタあたりの容量は 512byteになりますので、MBR形式は 2TBとなります。
2TBを越える LUNを利用する場合、この長年慣れ親しんできた MS-DOSラベルは利用できないため、2TB越えをサポートした GPTラベルを利用する必要があります。
この GPTパーティションは Itaniumシステムでは以前から利用されてきましたが、x86系環境ではあまり馴染みがないものです。そのため稼動する OSで利用する際には、インストーラ、パーティション操作ツール、ブートローダ等が対応している必要があります。 |
Linuxで一般に使われているブートローダーである Grubは GPTパーティション未対応です。このため /boot用パーティションを別途確保し、且つそのパーティション自体を 2TB `以下`である LUN内に確保する必要があります。
Grubは MBRパーティションの先頭 512byteを利用して起動作業を行いますが、この先頭 512byte領域は GPTパーティションに於いては、パーティション情報が格納されているため Grubの仕組み上 GPTパーティションとの共存は行えません。/bootを配置する LUNのために 2TB超の LUNとは別に /boot用に別途 2TB以下の LUNの確保が必要となります。
|
下記は、SmartStart CDからシステムを起動し、オフライン状態で ACU(Array Configuration Utility)を利用しています。
ここでは 750GB HDDを 4本利用し、RAID-0を組んだ場合の LUNの切り方の例となり、5GBの `論理ドライブ 1`(LUN)は /bootと /を確保するためのものです。2.8TBの `論理ドライブ 2`(LUN)は、2TB超を扱うためのパーティションを確保するためのものを想定しています。 |
ProLiant 300/500シリーズでは SmartArray上の LUN(論理ドライブ)を細かく切り分けるための設定ツールである ACUがサポートされていますが、ProLiant 100シリーズでは ACUはサポートされておらず POST時に [F8]キーで起動する ORCAしかサポートされていません。
ORCAでは、前述の ACUでの例の様に一旦 `アレイ-A`として 3TBのディスク容量をまとめた後で、その 3TBを 5GBと 2.8TBの LUN(論理ドライブ)として切り分ける事はできません。ORCAではあくまで `アレイ` = `論理ドライブ(LUN)`としてのみの構成になり柔軟性に欠けます。ProLiant 100シリーズで 2TB超の LUNを扱う場合には、LUNの構成と HDDの物理サポート本数を十分考慮してください。
但し、ProLiant 100シリーズであっても Easy Setup CDが利用可能な機種であれば、SmartStart CDと同様に CDからシステムを起動し、ACUをオフラインで実行する事が可能となります。これにより `アレイ`内部に複数の `論理ドライブ(LUN)`を作成する事が可能ですので、ProLiant 300シリーズ同様の柔軟なディスク構成を取る事が可能です。
|
| 2TB超 LUNを SmartArrayに扱わせるには、SmartArrayの firmwareバージョンに注意してください。 |
 |
- SmartArray E200/i - v1.62(但し v1.62は別問題があるため v1.66必須)以降
- SmartArray P400/i - v2.08以降
- SmartArray E500 - v2.52以降
- SmartArray P600 - v1.88A以降
- SmartArray P800 - v2.08以降
|
RHEL5.0のインストーラ Anacondaは GPTに対応していません。RHEL5.1(Update1)から対応しています。
ccissドライバは HP提供の DUD/cciss v3.6.16-4か、RHEL5.1(Update1)以降に標準装備されている ccissドライバが必要となります。RHEL5.1未満に標準装備の ccissドライバでは、2TB超 geometryの扱いが正常に行えないために DiskDruidステージへ移動する際にエラー(Enable to determine geometry of file/device...)が多発したり、インストール後に partedを起動してもエラー(Invalid argument...)が発生します。
RHEL5.0の場合 - インストール時に 2TB超の LUNが存在していても問題ありませんが、この LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。/boot, /は 2TB以下の LUNに配置してください。
RHEL5.1の場合 - インストーラが GPT対応したため、/bootを 2TB以下の LUN上へ配置しなければならない事以外に制限はありません(Anacondaで警告が表示されます)。これ以外には特別な作業は不要です。既に MS-DOSラベルが存在していても GPTラベルへ変換してくれます。また /パーティションも 2TBを超えた LUN上に配置が可能な事を確認しました。
インストール後、RHEL5.0でインストール時に設定できなかった 2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTラベルを扱えませんので partedを利用します。また、RHEL5.1の場合でも、インストール後に 2TB超 LUNに対するパーティション設定を行う場合には、この操作が必要になります。
 |
 |
#parted /dev/cciss/c0d1 (parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt` (parted) print
Disk /dev/cciss/c0d1: 2995GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt (parted) mkpart
Partition name? []?
File system type? [ext2]?
Start? ⇒ `0`
End? ⇒ `2995G` (parted) print
Number Start End Size File system Name Flags
1 17.4kB 2995GB 2995GB ext2 (parted) quit # #time mke2fs -j -T largefile4 /dev/cciss/c0d1p1
real 3m43.448s #mkdir /test #mount /dev/cciss/c0d1p1 /test #df
/dev/cciss/c0d1p1 2924762680 205944 2778304440 1% /test
|
インストーラ(RHEL5.2で確認)で 2TB以下の LUN上のボリュームをまとめて 2TBを超える LVMを作成する事はできません(インストーラが警告を発します)。また、問題( インストーラの LVMで 2TBを超えられるか?)も見受けられましたので 2TBを超える LVMの作成はインストール後に行う事を推奨します。 |
RHEL4のインストーラ Anacondaは GPTに対応していません。Update7迄確認しています。
利用するインストールメディアは最低でも U1を利用してください。U1に於いて、2TB超え関連の大幅な修正が施されています。
RHEL4/U6未満の場合、 ccissドライバは HP提供の DUD/cciss v2.6.16-6以降が必要となります。これらのディストリビューションに標準装備されている ccissドライバでは、2TB超 geometryの扱いが正常に行えません。インストール時に 2TB超の LUNが存在していると `reported invalid`エラーが表示されますが無視してください。2TB超の LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。
RHEL4/U6の場合、 ccissドライバは HP提供の DUD/cciss v2.6.18-10以降が必要となります。本ディストリビューションに標準装備されている ccissドライバでは、2TB超 geometryの扱いが正常に行えず、インストーラの DiskDruid画面へ遷移する際に `入力/出力エラーです during read on /dev/cciss/c0d1`等のエラーとなります。この際のエラーダイアログでは `無視`を選択してください。この選択により 2TB超の LUNは DiskDruidでは表示されなくなります。2TB超の LUNへの操作はインストール後に partedで別途操作します。
RHEL4/U7の場合、 ccissドライバは HP提供の DUD/v2.6.18-17以降が必要となります。本ディストリビューションに標準装備されている ccissドライバでは、インストール時にはエラーは発生しませんが、インストール後には `Buffer I/O error`がログに記録され、2TB超の LUNを正常に扱う事ができません。また、インストール時に 2TB超の LUNが存在している場合、インストーラの DiskDruidで正常表示が可能ですが、インストーラは 2TB超の LUNに対応していません。`最大許容量まで使用`オプションを利用しても 2TB迄(2097149MB - この容量はディスク構成により変わる可能性があります)しか確保できません。また `空き - 自由領域`として認識されている LUN自体を直接 `編集`して全容量をパーティションとして確保使用とす ると `Partition failed: シリンダベースパーティションを確保できませんでした`とエラーとなります。このため、2TB超の LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。
インストール時に /boot, /は 2TB以下の LUNに配置してください。
インストール後に、2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTラベルを扱えませんので partedを利用します。
 |
 |
#parted /dev/cciss/c0d1
(parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt`
(parted) print
Disk geometry for /dev/cciss/c0d1: 0.000-2856490.242 megabytes
Disk label type: gpt
(parted) mkpart
Partition name? []?
File system type? [ext2]?
Start? ⇒ `0`
End? ⇒ `2856490`
(parted) print
Number Start End File system Name Flags
1 0.017 2856490.226
(parted) quit
#
#time mke2fs -j -T largefile4 /dev/cciss/c0d1p1
real 55.548s
#mkdir /test
#mount /dev/cciss/c0d1p1 /test
#df
/dev/cciss/c0d1p1 2924762680 107544 2778402840 1% /test |
|
SLES10/SP0および SLES10/SP1のインストーラは共に GPTには完全に対応していませんが、付与されているラベルと操作の手順によっては CHS geometryの警告等が表示されます。また、MS-DOSラベルが既に付与されている場合には、そのまま 2TB超の操作ができてしまいます。 SLES10/SP2でインストーラは GPTに対応しました。但し、既存 LUNに MS-DOSラベルが付与されてしまっている場合には、GPTへの変換までは行いませんので、[エキスパート設定]の `パーティションテーブルとディスクラベルを削除`を行ってから、一旦システムを再起動してください。
SLES10/SP0メディア標準装備の ccissドライバ v2.6.10では 2TB超 LUNは認識できませんので、ccissドライバは HP提供の DUD/cciss v3.6.16-4が必要となります。
ちなみに、これより古い HP提供の DUD/cciss v3.6.14-8では 2TB超 LUNの認識は可能ですが、パーティション操作が正常に行えません。
SLES10/SP1メディアに標準装備の ccissドライバは前述とバージョンが近い v3.6.14ですが、パーティション操作も可能です。
SLES10/SP0の場合、インストール時に 2TB超の LUNが存在していても問題ありませんが、この LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。
SLES10/SP1の場合、インストール時に tty2で partedの操作を行った後一旦リブートする等して GPTラベルを予め付与していればインストール段階でも 2TB超 LUNの操作が可能です。
SLES10/SP2の場合、インストーラが GPT対応したため、/bootを 2TB以下の LUN上へ配置しなければならない事以外に制限はありません。これ以外には特別な作業は不要です。但し、既に MS-DOSラベルが存在している場合にはラベルを削除する事に気をつけてください。/パーティションも 2TBを超えた LUN上に配置が可能な事を確認しました。
インストール時に /boot, /は 2TB以下の LUNに配置してください。但し、SP2の場合、/は 2TB超の LUNに配置しても構いません(SP2未満でも技術的には可能と思われますが、推奨しません)。
SP2未満の場合、インストール後に、2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTラベルを扱えませんので partedを利用します。 また、SP2であっても 2TB超 LUNに対するパーティション設定には partedを利用します。fdiskは 2TB超 LUN未対応ですので利用しないでください。
 |
 |
#parted /dev/cciss/c0d1
(parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt`
(parted) print
Disk /dev/cciss/c0d1: 2995GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
(parted) mkpart
Partition type? [primary]?
File system type? [ext2]? ⇒ `reiser`
Start? ⇒ `0`
End? ⇒ `2995G`
(parted) print
Number Start End Size File system Name Flags
1 17KB 2995GB 2995GB reiserfs
(parted) quit
#
#time mkreiserfs /dev/cciss/c0d1p1
real 45.031s
#mkdir /test
#mount /dev/cciss/c0d1p1 /test
#df
/dev/cciss/c0d1p1 2924956680 32840 2924923840 1% /test |
|
SLES9/SP3, SLES9/SP4のインストーラは GPTには対応していません。
SLES9/SP3の場合、ccissドライバは HP提供の DUD/cciss v2.6.16-5以降が必要となります。本ディストリビューションに標準搭載されている ccissドライバでは 2TB超 LUNを正常に扱う事ができません。
SLES9/SP4の場合、ccissドライバは HP提供の DUD/cciss v2.6.18-10以降が必要となります。本ディストリビューションに標準搭載されている ccissドライバでは 2TB超 LUNを正常に扱う事ができません。
インストール時に 2TB超の LUNが存在していても問題ありませんが、この LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。(MS-DOSラベルのままで設定される場合があります)
インストール時に /boot, /は 2TB以下の LUNに配置してください。
インストール後に、2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTラベルを扱えませんので partedを利用します。
 |
 |
#parted /dev/cciss/c0d1
(parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt`
(parted) print
Disk geometry for /dev/cciss/c0d1: 0.000-2856490.242 megabytes
Disk label type: gpt
(parted) mkpart
Partition type? [primary]?
File system type? [ext2]? ⇒ `reiser`
Start? ⇒ `0`
End? ⇒ `2856490`
(parted) print
Number Start End File system Name Flags
1 0.017 2856490.226 reiserfs
(parted) quit
#
#time mkreiserfs /dev/cciss/c0d1p1
real 29.115s
#mkdir /test
#mount /dev/cciss/c0d1p1 /test
#df
/dev/cciss/c0d1p1 2924956680 32840 2924923840 1% /test |
|
| 現時点に於いて、当ディストリビューションでは 2TB超 LUN対応 ccissドライバは存在しないため、利用は行えません。SP1で対応される予定です。
|
Turbo11SEのインストーラは 2TB超 LUNであっても 2TB迄の容量しか認識しません。
Turbo11SEに標準搭載されている cciss v3.6.14は 2TB超 LUNを扱うための patchが適用さており、そのまま利用が可能です。
インストール時に 2TB超の LUNが存在していても問題ありませんが、この LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。
インストール時に /boot, /は 2TB以下の LUNに配置してください。
インストール後に、2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTラベルを扱えませんので partedを利用します。
 |
 |
#parted /dev/cciss/c0d1
(parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt`
(parted) print
Disk /dev/cciss/c0d1: 2995GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
(parted) mkpart
Partition type? [primary]?
File system type? [ext2]? ⇒ `reiser`
Start? ⇒ `0`
End? ⇒ `2995G`
(parted) print
Number Start End Size File system Name Flags
1 17KB 2995GB 2995GB reiserfs
(parted) quit
#
#time mkreiserfs /dev/cciss/c0d1p1
real 45.031s
#mkdir /test
#mount /dev/cciss/c0d1p1 /test
#df
/dev/cciss/c0d1p1 2924762680 205944 2778304440 1% /test |
|
- ML310G3
- SmartArray P800,P600
- 750GB HDD x4基
|
|