仮想マシン(VM)
CPU、メモリ、ディスクなどを仮想的に備え、OSとアプリケーションを動かす実行環境である。ハイパーバイザが物理サーバの資源を割り当て、複数の環境を管理する。
イマシルちゃんの解説
一台のサーバの中に、別々のコンピュータとして使える環境を作ることができるよ。
それが仮想マシンで、VMとも呼ぶんだ。
それぞれに仮想的なCPUやメモリ、ディスクを用意してOSを動かすよ。
土台のハイパーバイザが、実際の機器の資源を各VMへ割り当てるの。
一つをWebサーバ、もう一つを検証用というように、用途の違う環境を分けて使えるんだ。
ただし同じ物理サーバの能力を共有するので、片方の負荷が増えるともう片方の処理も遅くなる場合があるよ。
この解説はわかりやすかったですか?
より深い解説
一台のコンピュータに相当する構成
ここでいうVMは、OS全体を動かすシステム仮想マシンである。CPU、メモリ、ディスク、ネットワークアダプタなどをゲストOSに提供する。
| 構成要素 | 役割 |
|---|---|
| 仮想CPU | OSが命令を実行するためのCPUとして見える |
| 仮想メモリ | OSとアプリケーションが使う記憶領域を提供する |
| 仮想ディスク | ファイルなどの形でOSやデータを保存する |
| 仮想NIC | 仮想ネットワークや外部ネットワークへ接続する |
| ゲストOS | 仮想マシンの中で動くOSである |
割り当てた仮想CPUの数と物理CPUのコア数は、常に一対一で専有する関係ではない。仮想ディスクも、保存方式によって実際に消費する容量が変わる。論理的な割当量と物理側の使用量を分けて管理する。
起動と接続を管理する
仮想化管理コンソールでは、VMの作成、起動、停止、資源の変更などを行う。VDIではデスクトップ用OSを動かすVMが仮想PCとなり、利用者へ遠隔の操作環境を提供する。
仮想NICを仮想スイッチへ接続し、ゲストOS側へIPアドレスや経路を設定するとネットワーク通信が可能になる。ホストが通信できることと、個々のVMが正しいLANへ接続されていることは別である。
隔離と保存データの扱い
VMごとにOSやメモリを分けられるが、共有フォルダ、仮想ネットワーク、管理権限などを通じた接続は残り得る。感染が疑われるVMは通信経路を隔離して調査し、物理ホストを共有する正常なVMへの影響も確認する。
ある時点の状態を記録するスナップショットは、変更前へ戻す用途に使える。ただし元の保存先への依存が残る場合があり、独立したバックアップと同じではない。ホストやストレージの故障に備えるには、保存先と復元手順も設計する。