オーバーコミット【overcommitment】

概要

オーバーコミットとは仮想化環境において各仮想マシン(VM)に割り当てるCPUメモリなどのリソースの合計が、物理マシンの実際の搭載量を超えることを許容する運用方式。限られたハードウェア資源でより多くのVMを稼働させるために用いられる。
オーバーコミットのイメージ画像

仮想化環境では、一台の物理サーバ上で複数のVMが同時に動作する。各VMにはCPUの実行時間やメインメモリが割り当てられるが、すべてのVMが常に最大負荷で稼働することは少なく、時間帯や処理の種類によって需要は変動し、利用されない「遊び」が生じる。オーバーコミットはこの余剰を前提として、物理的な上限を超える量のリソースを論理的に割り当てることで、同一ホスト上の収容効率を高める。

主な対象はCPUメモリの二種類である。「CPUオーバーコミット」では、物理コア数を上回る仮想CPU(vCPU)を複数のVMに割り当て、タイムシェアリングによって実行時間を細かく分配する。「メモリオーバーコミット」では、VM間で重複するデータ領域を共有する「メモリバルーニング」(memory ballooning)や、一時的にストレージへ退避させるスワップ処理などを組み合わせて物理メモリ容量の不足を補う。LinuxカーネルKVMVMwareといった主要な仮想化基盤がこれらの機構を備えており、クラウドサービスでも標準的に活用されている。

一方、複数のVMが同時に高負荷となり実際の使用量が物理リソースの上限に達すると、リソースの競合が発生する。CPUでは実行待ち時間の増加による処理遅延、メモリではスワップの多発やOOMキラーによるプロセスの強制終了といった影響が生じる。特にメモリのオーバーコミットは過剰に設定すると応答性能や安定性を大きく損なうため、物理容量に対する割当総量の比率である「オーバーコミット率」を、実際の負荷傾向や利用率の監視にもとづいて適切に管理することが求められる。

(2026.6.15更新)
 
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。