Logical Volume Manger (LVM) の制限に関する情報 White paper 目次 はじめに...2 1. LVMのサポート制限...2 2. ボリュームグループの最適なエクステントサイズの計算...3 1
はじめに 本書では 現在の LVM アーキテクチャに依存する各種制限値と LVM で大容量ディスクを使用する際の留意点を説明します 1. LVM のサポート制限 以下の表に HP-UX リリース 11.0 11i v1 および 11i v2 用の LVM でサポート可能な構成値を示します 以下の表で VG はボリュームグループの LV は論理ボリュームの PV は物理ボリュームの略称です パラメータ値を変更する操作最小値 デフォルト値 最大値 システム内の VG 数の最大値 (Max VGs per system) VG 内の LV 数の最大値 (Max LVs Per VG) VG 内の PV 数の最大値 (Max PVs per VG) PV 内のエクステント数の最大値 (Max Extents per PV) カーネル調整パラメータ maxvgs 0 10 256 vgcreate(1m) -l max_lv 1 255 255 vgcreate(1m) -p max_pv 1 16 255 vgcreate(1m) -e max_pe 1 1016 65535 VG の作成時に使用した最初の PV の ディスク容量 エクステントサイズ の値が 1016 より大きい場合は その値がデフォルト値になります エクステントサイズ (Extent Size) PV の実効サイズ (Effective size of a PV) LV 11.11 & 11.23 のサイズ (Size of a LV 11.11& 11.23) vgcreate(1m) -s pe_size pvcreate(1m) -s disk_size 256GB を超えるディスクをサポートするには以下のパッチが必要です 11.0 PHKL_32920 11i v1 PHKL_33390 11i v2 PHKL_31500 lvcreate(1m)/lvextend(1m) -l le_number -L lv_size 1MB 4MB 256MB エクステントサイズ (Extent Size) ディスク容量 2TB 0 0 2TB (2TB を超える I/O 要求は拒否されます ) LV 11.31 のサイズ (Size of a LV 11.31) LV 内のミラーコピー数 (Mirror copies per LV) lvcreate(1m)/lvextend(1m) -m mirror_copies 0 0 16TB 0 0 2 LV のストライプ数 (Stripes of LV) lvcreate -i stripes 2 なし ( 指定必須 ) VG 内の PV 数の最大値 (Max PVs per VG) LV のストライプサイズ (Stripe size of LV) lvcreate -I stripe_size 4KB 8KB 32768KB 2
2. ボリュームグループの最適なエクステントサイズの計算 vgcreate(1m) コマンドでボリュームグループ (VG) を作成する際に エクステントサイズが小さ過ぎるというエラーメッセージが表示され ( または大き過ぎるというエラーが表示されるが 新しいパッチがインストールされている場合には VGRA が大き過ぎる旨のエラー情報も表示されます ) 中断することがあります このエラーが発生した場合には エクステントサイズを大きくして vgcreate(1m) コマンドを再実行する必要があります ただし エクステントサイズは ミラーコピーのいずれかで書き込み要求が不成功に終わったときに 古い (stale) データの再同期に要する時間や古いもの (stale) とマークされたデータ領域の量に影響を与えるため 設定にあたっては適正なサイズを検討するべきです また 論理ボリュームに割り当てられる領域はエクステントサイズ単位のため 意図した以上のサイズが論理ボリュームに割り当てられることがあるので注意が必要です つまり ボリュームグループを正常に作成できる構成パラメータで決まるエクステントサイズのうちの最小値が最適値です ボリュームグループの最小エクステントサイズは そのボリュームグループに対して指定した MAXLVs ( 論理ボリュームの最大数 ) MAXPVs ( 物理ボリュームの最大数 ) および各物理ボリュームに対して指定した MAXPXs ( 物理エクステントの最大数 ) で計算します これらの値は ボリュームグループが有効な間は変更できません VG にブート可能な PV がある場合 メタデータは 768KB 以内にする必要があります そのため 非ブート PV だけで構成される VG で正常に作成できた MAXLVs MAXPVs および MAXPXs の値を指定して vgcreate(1m) コマンドを ブート可能な PV がある VG に対して実行すると 不成功に終わります この対処として VG にブート可能な PV が必要なときは これらの引き数に小さい値を指定して VG を再作成する必要があります MAXPVs および MAXPXs の値がメタデータのサイズに関わる最大要因です ブート可能な PV が必要ない場合は -B オプションを指定せずに pvcreate(1m) コマンドをそのブート可能な PV に対して再実行してブート可能な PV を通常の PV に変換して VG に追加します 以下のシェルスクリプトで ボリュームグループに関する構成パラメータを指定すると最小エクステントサイズを算出する小さなプログラムが作成され コンパイルまで実行されます 3
#!/usr/bin/sh cat << EOF > vgrasize.c #include <stdio.h> #define BS 1024 /* Device block Size */ #define roundup(val, rnd) (((val + rnd - 1) / rnd) * rnd) main(int argc, char *argv[]) { int i, length, lvs, pvs, pxs; if (argc!= 4) { /* Usage example: * Maximum LVs in the VG = 255, * Maximum PVs in the VG = 16 * Maximum extents per PV = 2500 : * * $./vgrasize 255 16 2500 */ printf("usage: %s <MAXLVs> <MAXPVs> <MAXPXs>\n", argv[0]); exit(1); lvs = atoi(argv[1]); pvs = atoi(argv[2]); pxs = atoi(argv[3]); length = 16 + 2 * roundup(2 + (roundup(36 + ((3 * roundup(pvs, 32)) / 8) + (roundup(pxs, 8) / 8) * pvs, BS) + roundup(16 * lvs, BS) + roundup(16 + 4 * pxs, BS) * pvs) / BS, 8); if (length > 768) { printf("warning: A bootable PV cannot be added to a VG \n" "created with the specified argument values. \n" "The metadata size %d Kbytes, must be less \n" "than 768 Kbytes.\n" "If the intention is not to have a boot disk in this \n" "VG then do not use '-B' option during pvcreate(1m) \n" "for the PVs to be part of this VG. \n", length); length = roundup(length, 1024) / 1024; if (length > 256 ) { printf("cannot configure a VG with this maximum values" " for LVs, PVs and PXs\n"); exit(1); for (i = 1; i < length ; i = i << 1) { printf("\nminimum extent size for this configuration = %d MB\n", i); EOF make vgrasize 4
お問い合わせはカスタマインフォメーションセンタへ 03-6416-6660 月 ~ 金 9:00~19:00 土 10:00~18:00 ( 日 祝祭日 年末年始および 5/1 を除く ) HP-UX 製品に関する情報は http://www.hp.com/jp/hpux HP-UX に関する技術情報は http://www.hp.com/jp/developer 記載されている会社名および商品名は 各社の商標または登録商標です 記載事項は 2005 年 9 月現在のものです 本書に記載された内容は 予告なく変更されることがあります 本書中の技術的あるいは校正上の誤り 省略に対して いかなる責任も負いかねますのでご了承ください 本書は LVM Limits ( 英語 ) をもとに加筆 修正して日本語で提供するものです Copyright 2005 Hewlett-Packard Development Company,L.P. 日本ヒューレット パッカード株式会社 140-8641 東京都品川区東品川 2-2-24 天王洲セントラルタワー PDFHS05035-01