これは興味深い質問です...
決定的な答えがあるとは思いませんが、このトピックを取り巻くベストプラクティスが時間とともにどのように変化したかについて、歴史的な背景を説明できます。
2007年以降、VMware環境全体にさまざまな形式で展開された数千のLinux VMをサポートする必要がありました。展開へのアプローチは進化しており、他のエンジニアによって構築されたシステムを継承およびリファクタリングするユニークな(時には不幸な)経験がありました。
昔...
当時(2007年)、初期のVMwareシステムはベアメタルシステムと同様にパーティション分割されていました。VMware側では、VMのデータを構成するために2GBの分割ファイルを使用していましたが、複数のVMDKの概念についても考えていませんでした。
仮想インフラストラクチャ...
ESX 3.5および初期のESX / ESXi 4.xリリース(2009〜2011)では、Linuxを使用し、モノリシックなシックプロビジョニングされたVMDKファイルの上に通常のパーティションとしてパーティション分割されました。ストレージを事前に割り当てなければならなかったため、実際のハードウェアと同様の方法でLinuxの設計を考える必要がありました。オペレーティングシステム用に36GB、72GB、146GBのVMDKを作成し、通常の/、/ boot、/ usr、/ var、/ tmpをパーティション分割してから、「data」または「growth」パーティションに別のVMDKを追加しました(/ home、/ opt、またはアプリケーション固有のもの)。繰り返しますが、この時代の物理ハードディスクサイズのスイートスポットは146GBでした。また、(NFSを使用しない限り)事前割り当てが必要だったため、スペースを節約する必要がありました。
シンプロビジョニングの出現
VMwareは、以降のESXi 4.xリリースでシンプロビジョニングに関するより優れた機能を開発しました。これにより、新しいシステムのインストール方法が変わりました。5.0 / 5.1で追加されたすべての機能セットにより、新しいタイプの柔軟性により、より創造的なデザインが可能になりました。念頭に置いて、これは、vCPUの数と個々のVMにコミットできるRAMの量の点で、仮想マシンの機能強化に対応していました。過去よりも多くの種類のサーバーとアプリケーションを仮想化できました。これは、コンピューティング環境が完全に仮想化され始めていたためです。
LVMはひどい...
VMレベルでの完全なホットアド機能が導入され一般的になった頃(2011〜2012)、私はクライアントのVMの稼働時間をなんとかして(愚か)維持しようと努力していました。そのため、これには、オンラインのVMware CPU / RAMの増加と、既存のVMDKでのリスクのある LVMディスクのサイズ変更が含まれていました。この環境のほとんどのLinuxシステムは、LVM上にext3パーティションを持つ単一のVMDKセットアップでした。これはひどいものでした。なぜなら、LVMレイヤーは操作に複雑さと不必要なリスクを追加したからです。たとえば、/ usrのスペースが不足すると、最終的にシステムをバックアップから復元することを意味する一連の不適切な決定が発生する可能性があります...
パーティションの盗聴...
私はこの機会にこれを変えようとしました。私はLinuxのパーティションスノブに少し慣れており、監視と運用上のニーズのためにファイルシステムを分離する必要があると感じています。また、特にVMwareと、あなたが求めていることを実行する機能に関しては、LVMも嫌いです。そこで、VMDKファイルの追加を、成長する可能性のあるパーティションに拡張しました。/ opt、/ var、/ homeは、必要に応じて独自の仮想マシンファイルを取得できます。そして、それらはrawディスクになります。時々、これは特定のサイズの小さいパーティションをその場で拡張する簡単な方法でした。
オバマケア...
非常に知名度の高いクライアントのオンボーディングにより、非常に目に見えるアプリケーション環境を作成するために使用されるLinux VMリファレンステンプレートの設計を行いました。アプリケーションのセキュリティ要件には独自のマウントセットが必要だったため、開発者と協力して非成長パーティションを1つのVMDKに詰め込み、成長の可能性がある特定の要件(暗号化、暗号化、そのため、最終的にこれらのVMは5つ以上のVMDKで構成されましたが、将来のデータのサイズ変更と保護に最高の柔軟性を提供しました。
私が今日すること...
今日、Linuxおよび従来のファイルシステムの私の一般的な設計は、1つのシンVMDK(パーティション化)上のOS、およびそれ以外のディスクリートVMDKです。必要に応じてホットアドします。ZFSのような高度なファイルシステムの場合、OS用のVMDKの1つであり、ZFS zpoolとして機能し、サイズ変更、追加のZFSファイルシステムへの分割などが可能なVMDKです。