論理ボリュームマネージャ

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索

論理ボリュームマネージャ(ろんりボリュームマネージャ、logical volume manager、LVM)は、「物理ボリューム」を提供するハードディスクなどのストレージメディア・デバイス(補助記憶装置)に、直接ファイルシステムをマップするのではなく、粗粒度(典型的には、メビバイト単位程度)のブロックにより一旦「論理ボリューム」と呼ばれる仮想化されたボリュームに束ねて利用するためのシステムである。一般的な議論については、英語版の en:Logical volume management の記事を参照のこと。この記事では、HP-UX由来で、いくつかの商用UNIXとGNU/Linuxシステムで使われている一連の実装としてのLVMについて述べる。

機能概要[編集]

構成上の利点[編集]

物理ディスクとの比較

論理ボリュームマネージャ以前、UNIXのファイルシステムがその上に構築される「ボリューム」は、単なるディスク上の連続したブロックでしかなく、単純にディスク全体、あるいはPC-UNIXではMBR内のパーティション情報、大型機メーカ系のシステムではVTOCの情報によるディスク上の固定の範囲といったもので、柔軟な管理が難しいものであった。論理ボリュームマネージャは、ディスク(「物理ボリューム」)を一旦「ストレージプール」に束ね、そこから「論理ボリューム」と呼ぶ仮想化・抽象化された記録領域を構成し提供する、といったような手法で、柔軟かつ便利に管理(マネージ)するシステムである。

LVMはそのような論理ボリュームマネージャの仕様及び実装の一つであり、以下LVMについて述べる。

LVM構成上の管理階層構造を説明する。物理ディスク (PV:Phisical Volumeと呼ぶ) とその複数の物理ディスクを管理するボリュームグループ (VG:Volume Group) があり、物理ディスクを繋ぎ合わせて大きな論理ドライブとして管理出来る。そのVG上に論理的に設定される仮想パーティションが論理ボリューム (LV:Logical Volume) と呼ばれる。

物理ディスク(/dev/sdaなど)と比較した場合、物理ディスクはLVMでいうところのボリュームグループに相当し、パーティションは論理ボリュームに相当する。LVMの管理下では物理ディスクはボリュームグループにブロックを提供する「メディア」としてしかみなされず、それ単体で扱うことは考えない。

LVの上にファイルシステムを構築する形となり、ファイルシステムから見るとLVがディスクパーティションのように見える。

基本的に以下の点が構成上の主な利点である。

  • 複数PVによるボリュームグループ上に、1つのPVを超えるような論理ボリューム (LV) を作成し、扱う事が可能となる。
  • UNIXのディスク管理上の上限である7パーティション (第2パーティションは全体のOverViewパーティションとなるため、実質6パーティション) を超えた数の論理ボリューム (LV) を作成可能となる。
  • 論理ボリューム (LV) の動的拡張・縮小が可能となる。
    • 当然のことながら、LVの上に構築されるファイルシステムが動的拡張・縮小をサポートしていない場合、ファイルシステムの拡張・縮小や再構成のためにシステム停止が必要となる。
  • 物理ボリュームの追加による論理ボリュームの拡張性の維持が可能。
    • 但し、ハードウェアの構成やOSの対応によっては、物理ボリュームの追加時にシステム停止が必要となる。
  • ソフトウェアミラーやソフトウェアによるストライピングが可能。

運用上の利点[編集]

ファイルシステムを問わず、論理ボリューム単位でスナップショットと呼ばれる論理イメージを作成することが可能である。

これにより、特にDB領域のフルバックアップ作業や、バックアップツールの運用において有利な対応を取る事が可能となる。ただし、サードパーティ製のバックアップソフトウェアを利用する場合、この機能は特に必要とされない場合が多い。

また、一度設定した領域の動的な拡大・縮小が可能であり、システムを停止しないという基幹系運用上の必須作業要件(一般的な企業では通常の業務時間帯に限られる)を満たしながら、一部のメンテナンス作業を実施する事ができる。

中・大規模の企業系システムでは必須の機能の一つとなっているという者もいるが、障害時の復旧の容易性からLVMは採用しないという企業があるのもまた事実である。

経緯[編集]

商用UNIXにおける論理ボリュームマネージャ機能は、1980年代後半にTolerant SystemsがAT&T UNIX System Laboratoriesの協力を得て、自社のハイアベイラビリティ・オペレーティングシステムからUNIX System V向けに価値あるコードを抽出し、トランザクションベースのボリュームマネージャとファイルシステムを業界で初めて開発したものが最初。

1990年AIX V3にてIBMが採用し実装したが、OSF/1においてAIXカーネルが採用されたため、LVM機能が一般化された。このAIXでのLVM採用の流れの中、Tolerant SystemsのLVMを1992年日立のHi-UX (HP-UXOEM) に、1993年ヒューレット・パッカードのHP-UX、NECUX/4800に、1994年OracleSolarisへのポーティング) とそれぞれの製品及び商用UNIXでのサポート契約を結び、UNIXに実装されている。

UNIX系OSの対応状況[編集]

注意: 以下のリストでは、この記事において、ここまでの説明で前提としている、固有の実装としてのLVMと、その他の一般的なボリューム管理システムとが、ごっちゃごちゃに記述されている。さらに、論理ボリュームとは直接は無関係の、ジャーナリングファイシステムについても列挙されている。

HP-UX[編集]

OS標準 (無償) LVM[1]
  • Logical Volume Manager (RAID1構成時には有償のMirrordisk/UXが必要)
  • VERITAS Volume Manager
OS標準 (無償) ジャーナルファイルシステム
その他の特徴
  • システムディスク全体をLVMにて管理する事が可能。
  • インストール時にシステムディスクをLVM管理下に設定可能。

AIX[編集]

OS標準 (無償) LVM
  • Logical Volume Manager
OS拡張 (有償) LVM
  • VERITAS Volume Manager
OS標準 (無償) ジャーナルファイルシステム
OS拡張 (有償) ジャーナルファイルシステム
  • VERITAS File System
その他の特徴
  • システムディスク全体をLVMにて管理する事が可能。
  • インストール時にシステムディスクをLVM管理下に設定可能。

Solaris[編集]

OS標準 (無償) LVM
OS拡張 (有償) LVM
  • VERITAS Volume Manager
OS標準 (無償) ジャーナルファイルシステム
  • UFS logging
  • ZFS
OS拡張 (有償) ジャーナルファイルシステム
  • VERITAS File System
その他の特徴
  • システムディスク全体をSVMにて管理する事は不可能。
    • 管理可能とは、ブートエリアもLVM管理下とし、IPLローダがLVM対応していることが条件。
  • インストール時にLVM管理下に設定する事は不可能。
  • インストール完了後にLVMへ移行する手順を実行する必要がある。

この機能については、SUN Japanのユーザへの公式な回答に基づいている。

UNIX System V Release 4.2ベースのUNIX[編集]

OS標準 (OSにより有償/無償が分かれる) LVM
  • VERITAS Volume Manager
OS標準 (OSにより有償/無償が分かれる) ジャーナルファイルシステム
  • VERITAS File System

Linux[編集]

OS標準 (無償) LVM
  • Logical Volume Manager
OS拡張 (有償) LVM
  • VERITAS Volume Manager
OS標準 (無償) ジャーナルファイルシステム
多数存在する。ここでは一例を挙げる。
OS拡張 (有償) ジャーナルファイルシステム
  • VERITAS File System

FreeBSD[編集]

OS標準 (無償) LVM
  • GEOM [3][4]
  • ccd (Concatenated Disk driver NetBSD から移植。2.1-RELEASE 以降。5.2-RELEASE 以降は GEOM レイヤ上へ再実装された)
  • vinum (3.0-RELEASE 以降。5.3-RELEASE 以降は GEOM レイヤ上へ再実装された)
  • RAIDFrame 5.0-RELEASE で 一旦 NetBSD から不完全な形で移植されたが、NetBSD ソースへの追従が大変であること、GEOM と機能がかぶることから 5.3-RELEASE で削除された。
OS標準 (無償) ジャーナルファイルシステム
  • gjournal (GEOM レイヤ上で動作 7.0-RELEASE 以降)
  • ZFS (Solaris からの移植 7.0-RELEASE 以降) [5]

(FreeBSDでは、3.0-RELEASE 以降でジャーナリングではなくffsSoft updatesを適用するというアプローチで信頼性を確保するという方策を取った。9.0 以降ではさらにいくつかの特性を向上させる目的でジャーナリングも追加された。)

ccdはRAID0/1相当の機能しか持たず、またルートパーティションのミラーリングに対応していない。

脚注[編集]

  1. ^ HP-UXにおいてVxVM/VxFSが無償というのは、OE単位でのライセンシーとなり、OS購入時にVERITAS製品のライセンス料を払っているという事になる。VERITASの戦略上、この価格が0に設定されているため、無償とされている。
  2. ^ Solarsi 8 までは OS 拡張(有償)であった
  3. ^ Chapter 19 GEOM: Modular Disk Transformation Framework (HTML)” (英語). FreeBSD ハンドブック. 2008年3月3日閲覧。
  4. ^ en:GEOM Wikipedia 英語版の記事
  5. ^ Dawidek, Pawel (2007年 4月 6日). “ZFS committed to the FreeBSD base (メーリングリストのアーカイブ)” (英語). 2008年3月3日閲覧。