Oracle Solaris 10 9/10 リリース: この Solaris リリースでは、配下のデバイスが拡張されたときのシステムイベント (sysevent) を使用できます。これらのイベントを認識し、autoexpand プロパティーの設定と拡張された LUN の新しいサイズに基づいてプールを調整できるように ZFS の機能が拡張されています。動的な LUN の拡張イベントを受信したときの自動プール拡張を、プールの autoexpand プロパティーを使用して有効または無効にできます。
これらの機能を利用すると、LUN を拡張したあとでプールのエクスポートとインポートまたはシステムの再起動を行わなくても、プールの拡張された領域にアクセスすることができます。
たとえば、tank プールで LUN の自動拡張を有効にします。
# zpool set autoexpand=on tank |
または、autoexpand プロパティーを有効にしてプールを作成できます。
# zpool create -o autoexpand=on tank c1t13d0 |
autoexpand プロパティーはデフォルトで無効なため、LUN を拡張するかどうかは自由に決定できます。
zpool online - e コマンドを使って LUN を拡張することもできます。次に例を示します。
# zpool online -e tank c1t6d0 |
あるいは、zpool replace 機能を使って LUN を接続または使用可能にしたあとで autoexpand プロパティーを再設定できます。たとえば、8G バイトのディスク 1 台 (c0t0d0) で構成される次のプールを作成します。8G バイトのディスクを 16G バイトのディスク (c1t13d0) に置き換えても、autoexpand プロパティーを有効にするまでプールのサイズは拡張されません。
# zpool create pool c0t0d0 # zpool list NAME SIZE ALLOC FREE CAP HEALTH ALTROOT pool 8.44G 76.5K 8.44G 0% ONLINE - # zpool replace pool c0t0d0 c1t13d0 # zpool list NAME SIZE ALLOC FREE CAP HEALTH ALTROOT pool 8.44G 91.5K 8.44G 0% ONLINE - # zpool set autoexpand=on pool # zpool list NAME SIZE ALLOC FREE CAP HEALTH ALTROOT pool 16.8G 91.5K 16.8G 0% ONLINE - |
前の例で autoexpand プロパティーを有効にせずに LUN を拡張する別の方法として、デバイスがすでにオンラインであるにもかかわらず zpool online - e コマンドを使用することができます。次に例を示します。
# zpool create tank c0t0d0 # zpool list tank NAME SIZE ALLOC FREE CAP HEALTH ALTROOT tank 8.44G 76.5K 8.44G 0% ONLINE - # zpool replace tank c0t0d0 c1t13d0 # zpool list tank NAME SIZE ALLOC FREE CAP HEALTH ALTROOT tank 8.44G 91.5K 8.44G 0% ONLINE - # zpool online -e tank c1t13d0 # zpool list tank NAME SIZE ALLOC FREE CAP HEALTH ALTROOT tank 16.8G 90K 16.8G 0% ONLINE - |
デバイスの置き換えに関するこのリリースのその他の拡張機能には、次のものがあります。
以前のリリースの ZFS では、交換用ディスクのサイズが少しでも違っていると、既存のディスクを別のディスクと交換したり、ディスクを接続したりできませんでした。このリリースでは、プールにまだ空きがある場合であれば、既存のディスクをほぼ同じサイズの別のディスクと交換したり、ほぼ同じサイズの新しいディスクを接続したりできます。
このリリースでは、LUN を拡張するためにシステムを再起動したり、プールをエクスポートしてインポートしたりする必要はありません。すでに説明したように、 autoexpand プロパティーを有効にするか、zpool online -e コマンドを使うことによって LUN の全体サイズを拡張できます。
デバイスの置き換えについては、「ストレージプール内のデバイスを置き換える」を参照してください。