# 仮想化 — 1台のマシンを、仕切って複数に使う

> レベル: 初級 ／ 対象: 大人
> 出典: Kotowary — https://kotowary.com/learn/units/virtualization?level=beginner&audience=adult
サーバを動かす土台には、もう1つ大事な考え方があります。1台のマシンを**仕切って複数として使う**——**仮想化**です。

## これは何をする係？

仮想化とは、1台の**物理マシン**を、ソフトウェアの力で**複数の仮想マシン（※1 VM）**に分けて使う技術です。

たとえるなら、**1つの建物を壁で仕切って、複数の部屋として貸す**イメージ。建物（＝物理マシン）は1つでも、部屋（＝VM）ごとに別の人が、別の使い方をできます。各部屋には独立した鍵があり、隣の部屋の中は見えません。

**登場人物メモ**:

- **※1 VM（仮想マシン）** — 物理マシンの中に作った、独立した1台分の「仮想の部屋」
- **※2 資源** — CPU・メモリ・ストレージなど、マシンが持つ計算の元手

## なぜ仕切るのか

わざわざ仕切るのには、はっきりした理由があります。

1. **資源を無駄なく使える** — 1台を持て余さず、余った力を別のVMに回せる
2. **環境を分離できる** — 部屋ごとに分かれるので、片方が壊れても隣に影響しにくい
3. **すぐ作って壊せる** — ソフトなので、必要なときに増やし、要らなくなれば消せる

昔は「アプリごとに物理マシンを1台ずつ」用意しがちで、多くのマシンが力を余らせていました。仮想化はその**無駄をまとめて解消**したのです。

## どこで使われている？

- **クラウド** — [クラウド](/learn/units/cloud)で借りるサーバの多くは、実は誰かの物理マシンを仮想化したVMです
- **手元のPC** — 1台のPCの中に、別のOSをVMとして入れて試す
- **コンテナの土台** — もっと軽い仕切り方である[コンテナ／Docker](/learn/units/docker)も、この「分けて使う」発想の延長にあります

つまり仮想化は、今どきのサーバ運用の**土台の考え方**なのです。

## ⚠️ 気をつけたいこと

- **入れすぎると重い** — 1台に詰め込みすぎると、部屋同士が資源を取り合って遅くなる
- **土台が倒れると全滅** — 物理マシン1台が壊れると、その上のVMがまとめて止まる
- **中身は本物のマシン** — VMも1台分のOSを持つので、更新や管理の手間は物理マシンと同じだけかかる
