いくつかのサーバーをLinuxに移行する必要があります。評価する必要がある重要な側面のひとつは、新しいホストシステムに弾力性のあるストレージ容量が必要であることです。当然、いくつかの基礎研究を行っていると、LVMに出くわしました。
lvmを使用することによるパフォーマンスの低下はありますか?もしそうなら、どうすればそれを測定できますか?
私が今考えているのは、LVMと仮想化されたLinuxボックスを実行するホストOSとしてLinuxを使用することです(ゲストOSにもLVMを追加する必要がありますか?)。
承認された回答:
LVMは、実際に邪魔にならないように設計されています。ユーザースペースの観点からは、ディスク上にある「仮想的なもの」の別のレイヤーのように見えます。実際のI / Oに到達する前、またはそこから移動する前に、すべてのI/Oがこれを通過する必要があることを想像するのは自然なことです。ハードウェア。
しかし、そうではありません。カーネルはすでに 「これをファイルに書き込む」などの高レベルの操作をデバイスドライバーに接続し、デバイスドライバーがディスク上の実際のブロックに接続するマッピング(または実際にはマッピングのいくつかのレイヤー)が必要です。
LVMが使用されている場合、そのルックアップは変更されますが、それだけです。 (とにかく発生する必要があるため、少し異なる方法で実行しても、パフォーマンスへの影響はごくわずかです。)実際にファイルを書き込む場合、ビットは、そうでない場合と同じように、物理メディアへの直接パスを取ります。強い>
LVMがパフォーマンスの問題を引き起こす可能性がある場合があります。 LVMブロックが基盤となるシステムと適切に連携していることを確認する必要があります。これは、最新のディストリビューションでは自動的に発生するはずです。また、このようなバグの影響を受ける古いカーネルを使用していないことを確認してください。ああ、LVMスナップショットを使用すると、パフォーマンスが低下します(アクティブなスナップショットごとにパフォーマンスが低下します)。ただし、ほとんどの場合、影響は非常に小さいはずです。
最後に:どのようにテストできますか?標準のディスクベンチマークツールはbonnie++です。 LVMでパーティションを作成し、テストして、それを消去し、(同じ場所で、他の要素を同一に保つために)プレーンなファイルシステムとベンチマークを再度作成します。それらはほぼ同一である必要があります。
関連:OSXアクティビティモニター(エネルギー)は、平均エネルギー影響が大きい終了したターミナルアプリを示していますか?