私の質問はこのトピックに似ています。LVMはデータ損失のリスクを高めますか?しかし、満足のいく答えが見つかりませんでした。
したがって、質問は、3つの物理ディスクで構成されるボリュームグループ(VG)がある場合、LVMはデータ/ファイルをどこに保存しますか?ディスクに障害が発生した場合はどうなりますか?ディスクを取り外し、LVMにVGから物理ディスクを取り外すように指示した後、他のディスクを引き続き使用できますか?したがって、実際の質問は、LVMがファイルを1つのディスクに保存するのですか、それともLVMがファイルを分割して3つのディスクに分割するのですか?最初のオプションは正しくありません。 3GBファイルがあるとき、私のVGは3GBが利用可能であることを示していますが、実際には各ディスクに1GBのスペースしか残っていないからです。それでは後者は本当ですか?しかし、これは、故障したディスク以外の一部のデータが確実に失われるという意味ですか?
答え1
まず、VG自体はデータを保存できません(もちろん可能ですが、そのように使用する機会はほとんどありません)。 2つ目は、LVMがディスクを見ずに物理ボリュームを見ることです。
通常、データは論理ボリュームの下で定義されたパーティションに保管されます。 VGは、複数のPVに複数のLVを含めることができます。役に立つWikimediaの写真:
![LVM ソリューション](https://upload.wikimedia.org/wikipedia/commons/b/ba/LVM1.svg)
これで、LVの設定方法によって、リニアボリューム、ストライプボリューム、またはミラーボリュームが異なります。通常、LVは順番にPVに配置されますが、LVMがそれを特定のPVに配置するように強制することもできます。
PVを含むディスクに障害が発生した場合は、次の2つの主な状況が発生する可能性があります。
- PVにLVが含まれていない場合、LVMはPVが見つからないというメッセージを表示しますが、他のLVに保存されているデータは安全です。
- 失われたPVに論理ボリュームの一部が存在する場合、LVで定義されたファイルシステムは必ず腐食するでしょう。今状況によって異なりますファイルシステム失われるデータの量と残りのデータを回復するのがどれほど難しいかを使用します。
もちろん、LVMをストライプモードに設定した場合、失敗した各ディスクはすべてのファイルシステムすべてのLVが破損しています。
LVMの内部についてもっと知りたい場合は、RedHat Magazineに良い記事があります。 https://web.archive.org/web/20150213040147/http://www.redhat.com/magazine/009jul05/features/lvm2/
答え2
データがどこに行くかを決定するのは実際にはLVMの責任ではありません。ただし、特定の構成では、データの配布をある程度制御できます。
LVM論理ボリュームには3種類あります。 1つ目はリニアボリューム、2つ目はストライプボリューム、3つ目はミラーボリュームです。線形マッピングを設定すると、一連の物理拡張領域が論理ボリュームの領域に割り当てられます。~のため。ファイルシステムでは、これは連続的な「ディスク」のように見えます。
ファイルシステムは、データがあると思う場所にデータを保存する責任があります。多くのファイルシステムは連続的な方法でデータを保存しようとするため、リニアボリュームの場合、ファイルが1つの物理ボリュームに収まる場合と一致しない場合があります。
ストライプロールの場合、状況は若干異なります。 LVMは実際にデータをストリップに分割し、それを別のPVに並列に書き込みます。
ミラーリングは、異なるデバイスに同じデータコピーを保持します。
したがって、設定によってPV3が失敗すると、PV3に物理的に存在するファイルのみが失われる(線形)、2つのストライプを超えて拡張されたすべてのファイルが破損したり(ストライピング)、破損しない可能性があります(ミラー)。
答え3
LVMの動作はlvm.conf(CentOS 5の場合は/ etc / lvm /にあります)で構成されています。
通常、LVMは各PVにメタデータを保存します(設定ファイルのメタデータセクションを参照)。
そして、次のLVM情報のバックアップがあります。サポート- 部分/etc/lvm/lvm.conf。
このデフォルト設定では、PVが失われるとデータが失われるかどうかはすべてVG / LV設定によって異なります(ミラーリングしてもデータは失われません)。