第5章 ストレージ構成(ZFS / LVM / Ceph の基礎)
章のゴール
本章では、Proxmox VE で利用される主要なストレージ方式(LVM、ZFS、Ceph)の役割と特徴を整理し、 読者が自分のラボや小〜中規模環境に対して、どの方式を選ぶべきか判断できるようになることを目標とします。 本章の画面・操作例は Proxmox VE 9.1(9.x 系)を前提とします。
この章で分かること / 分からないこと
- 分かること:
- LVM / ZFS / Ceph のざっくりした違いと、選び分けの考え方
- 単一ノードと小規模クラスタでの「現実的な」使い分け
- 分からないこと(後続章または別パスで扱います):
- 具体的な構築コマンドやチューニング(環境差が大きいため)
- Ceph の詳細設計(ネットワーク/故障ドメイン/性能設計など)
用語メモ(最小)
- ストレージ(Proxmox の用語): VM ディスク、ISO、バックアップ等を置く「保管場所」の定義(ローカル/共有/外部など)
- バックエンド: 実体として使う仕組み(LVM、ZFS、Ceph など)
Proxmox VE におけるストレージの考え方
Proxmox VE では、「ストレージ」は仮想マシンやコンテナのディスクイメージ、ISO イメージ、バックアップなどを保管する論理的な単位として扱われます。 ローカルディスクを利用するストレージ、ネットワーク越しのストレージ、分散ストレージなど、複数の方式を組み合わせることができます。
本書のラボでは、次のような観点でストレージ方式を選びます。
- 単一ノードで完結するか、複数ノードで共有したいか
- 性能と冗長性のバランスをどこまで求めるか
- 運用の複雑さやトラブルシュートの難易度
LVM ベースのローカルストレージ
LVM(Logical Volume Manager)は、Linux 標準のボリューム管理機能です。 Proxmox VE では、ローカルディスク上に LVM を構成し、その上に仮想マシンのディスクを作成する構成を利用できます。
LVM を選ぶ場面
- 単一ノードのラボや、小規模な検証環境でシンプルに始めたい場合
- 既に LVM ベースでディスクを管理している環境を活用したい場合
メリット:
- セットアップが比較的簡単で、Linux の基本に馴染みがあれば理解しやすい
- 追加ディスクの増設や拡張が行いやすい
注意点:
- ローカルストレージであるため、他ノードとの共有には工夫が必要
- スナップショットやシンプロビジョニングの機能は、ZFS と比較すると限定的
ZFS ベースのローカルストレージ
ZFS は、コピーオンライト方式のファイルシステム兼ボリュームマネージャで、スナップショットやチェックサムによるデータ保護機能を備えています。 Proxmox VE では、インストール時に ZFS を選択してホストのシステムディスクから ZFS を利用したり、データ用ディスクに ZFS プールを作成して VM を配置することができます。
ZFS を選ぶ場面
- スナップショットやロールバックを多用したいラボ環境
- データ保護や自己修復機能を重視したい場合
メリット:
- スナップショットやクローンが高速に行える
- データの整合性チェックや自己修復機能がある
注意点:
- メモリ使用量が比較的多く、ホストのメモリに十分な余裕が必要
- 設定やチューニング項目が多く、慣れないとトラブルシュートに時間が掛かる
Ceph による分散ストレージの概要
Ceph は、分散オブジェクトストレージ/ブロックストレージを提供するソフトウェアで、Proxmox VE と組み合わせることで、 複数ノードから共有できる仮想マシン用ストレージを構成できます。
本書のラボでは、3 ノードクラスタを前提に、教育的な規模で Ceph を利用するパターンを取り上げます。
Ceph を選ぶ場面
- 複数ノード間で仮想マシンのディスクを共有し、ライブマイグレーションや HA を活用したい場合
- 将来的にノード数や容量を段階的に増やしたい場合
メリット:
- ノード間でストレージを共有でき、クラスタ構成と相性が良い
- 複数ディスク・複数ノードにデータを分散し、障害時の冗長性を確保できる
注意点:
- 小規模ラボでは、リソース要件(CPU・メモリ・ネットワーク)が負担になる場合がある
- 設計・運用が複雑であり、本番導入前には十分な検証が必要
LVM / ZFS / Ceph の比較(概要)
| バックエンド | 代表的な用途 | 主なメリット | 注意点 |
|---|---|---|---|
| LVM | 単一ノードのシンプルなラボ構成 | セットアップが容易で慣れ親しんだ仕組みを活用できる | クラスタ構成での共有には工夫が必要、スナップショット機能は限定的 |
| ZFS | スナップショットを多用するラボ、データ保護を重視する環境 | 高速なスナップショット/クローン、整合性チェックと自己修復 | メモリを多く消費し、設定・チューニング項目が多い |
| Ceph | 3 ノード以上のクラスタで共有ストレージを提供したい環境 | ノード間での共有と冗長性を両立しやすい | リソース要件と設計の複雑さがあり、小規模ラボでは負荷になることがある |
ラボ構成ごとのストレージ選択パターン
Part 0 で紹介したラボパターンに対応させて、ストレージ構成の例を整理します。
パターン A(単一ノードラボ)
- ホストローカルの LVM もしくは ZFS を利用し、シンプルな構成で VM を配置する
- バックアップは別ディスクや外部ストレージに退避し、必要に応じて復元する
パターン B(3 ノードクラスタラボ)
- 共有ストレージとして教育目的の Ceph クラスタを構成し、VM ディスクを配置する
- 追加でローカル ZFS や LVM を組み合わせ、用途ごとにストレージを分ける
これらの関係は、diagrams/part2/ch5/storage-layout.svg の図として概略を示します。
よくある設計・運用上の注意点
- すべてを「最強の構成」にしようとせず、ラボの目的に合ったシンプルさを優先する
- バックアップ先は、本番環境と同様に「別障害ドメイン」に置く意識を持つ
- 性能評価を行う場合は、ネスト構成やラボ特有の制約が結果に影響することを前提に読む
本章で整理した考え方をベースに、後続のストレージ・クラスタ・バックアップの章で具体的な設定手順や運用パターンを掘り下げていきます。