SSD Nodes Learn 🎉 VPS $4.99/月〜
ガイド Matt Connor著者 Matt Connor ・更新日 2026-08-05

VPSとは?仕組みとできることをやさしく解説

VPSは、1台の物理サーバーをハイパーバイザーで分割した仮想マシンです。rootログインや専用リソースでできることと、共有される部分の限界を解説します。

VPS とは何ですか?

VPS(仮想専用サーバー)は、データセンターにある 1 台の物理コンピューターを分割した領域を、専用のマシンであるかのように借りるサービスです。そのコンピューター上のソフトウェアが複数の独立したサーバーに分割し、そのうち 1 台を利用します。専用のメモリ、ディスク、IP アドレス、そして好きなソフトウェアをインストールできる root ログインが用意されます。VPS は常時稼働し、インターネット上のパブリックアドレスで接続を受け付けます。

3 つの単語に分けると、サービスの内容が分かります。Server は稼働し続け、ネットワーク経由でリクエストに応答するコンピューターです。Virtual は、ソフトウェアによって作られていることを意味します。利用するサーバーは、より大きな物理マシンを分割した領域です。Private は、その領域を自分だけが利用できることを意味します。自分のファイルや実行中のプログラムが、隣の領域を借りている利用者から見えることはありません。

これまで root 権限を持ったことがない場合、最後の点が最も重要です。VPS は、自分がマシンの管理者になる最初の種類のホスティングです。何も設定されていませんが、何をするかを妨げるものもありません。

ハイパーバイザーが分割するものと共有するもの

分割を行うプログラムはハイパーバイザーと呼ばれます。ハイパーバイザーは、ホストと呼ばれる物理マシン上で動作します。ハイパーバイザーは各顧客に、プロセッサ、メモリ、ディスク、ネットワークカードという仮想ハードウェア一式を割り当てます。その仮想ハードウェアにオペレーティングシステムをインストールすると、実際のコンピューターを所有しているかのように起動します。このゲストシステムが VPS です。Linux ホストでは KVM (kernel-based virtual machine) が一般的なハイパーバイザーです。Xen、VMware ESXi、Microsoft Hyper-V も同じ役割を担います。

メモリとディスクは容量で分割されます。プロセッサは時間で分割されます。この違いが、後から発生する意外な現象の多くを説明します。割り当てられたメモリは、他のゲストが使用できません。ディスクはホストのストレージ上にあるファイルまたは論理ボリュームであり、削除するまで使用できます。仮想コアはホストの実コアに割り当てられた待ち行列です。ハイパーバイザーは 1 秒間に数千回、次に実行するゲストを決定します。

1 つのコマンドで、購入した仮想化方式を確認できます。

systemd-detect-virt
uname -r

通常の VPS では systemd-detect-virtkvm を出力します。これは、完全なハイパーバイザーが、自分専用のカーネルを起動したことを意味します。コンテナ仮想化では lxcopenvz、または container を出力します。この方式では、サーバーはホスト自身のオペレーティングシステム内にある隔離領域であり、カーネルは同じマシン上の他のすべての顧客と共有されます。ベアメタルでは none を出力します。この違いは実際の影響を伴います。共有カーネルは変更できないカーネルだからです。モジュールを読み込めないため、WireGuard VPN モジュールのようなカーネル内機能は Operation not supported で失敗します。また、uname -r は、自分で選択できずアップグレードもできないバージョンを報告します。

ここでいう virtual とは何ですか?

サーバーがソフトウェアで構成されているため、料金を支払んだ約 1 分後には利用できる状態になります。ハードウェアをラックに設置してもらう必要はありません。テンプレートイメージから構築されるため、再構築すれば数分でクリーンな Ubuntu に戻せます。物理サーバーへのインストールなら大きな損害になるミスでも、最大で半日の作業で復旧できます。多くのプロバイダーの管理パネルでは、リスクのある操作の前にディスクのスナップショットを作成できます。再起動してプランのサイズを変更したり、基盤のホストで作業が必要になったときに、ゲストを別のハードウェアへ移動したりすることもできます。

価格も同じ理由で決まります。1 台の物理マシンを同時に複数の顧客で利用するため、VPS の料金がこの水準になる理由は、サーバー全体を借りる場合と比較すると分かります。

この利点には、ハードウェアを共有するという側面もあります。そのため、近隣の利用者の負荷も自分の問題になります。以下の制限に関するセクションに、その負荷を測定するコマンドを示します。

ここでいう private とは何ですか?

private とは、分離されていることを意味します。どの程度分離されるのかを具体的に確認しておく価値があります。自分専用の kernel、root filesystem、user account、process list、firewall rule、IP address が提供されます。同じ host 上の別の顧客は、あなたの process を一覧表示したり、ファイルを読み取ったりできません。相手の guest から、あなたの memory や virtual disk へ到達する経路がないためです。電源を共有しているだけの、2 つの別々の operating system です。

Shared hosting は逆の仕組みです。数百の別の Web site を提供している machine 上の directory、control panel、そして provider が選んだ software が提供されます。そこには apt install がありません。package を install すると machine 全体が変更されますが、その machine 全体を変更する権限はないためです。Shared hosting と VPS の比較では、この違いを詳しく説明しています。一言でいえば、shared hosting は account を借りるサービスであり、VPS は computer を借りるサービスです。

VPS の仕様表を 1 行ずつ確認する

VPS は、数値を並べた短い仕様表として販売されます。以下では、プロバイダーが広告に掲載する中価格帯プランを例として使います。これは 2026 年 8 月時点で一般的な公開値であり、見積もりではありません。

ChartA typical mid-range VPS plan, as advertised
The data behind this chart
[
  {
    "plan": "Example mid-range VPS",
    "vcpu_cores": 4,
    "ram_gb": 16,
    "nvme_gb": 160,
    "bandwidth_tb": 8,
    "ipv4_addresses": 1
  }
]

この 1 行が、製品の全仕様です。左から順に読みます。

4 vCPU。 vCPU(virtual central processing unit)は、ハイパーバイザーが割り当てるホストのプロセッサーの 1 スレッドです。プランに専有と明記されていない限り、そのスレッドを予約するのではなく、他の利用者と共有します。サーバー内では、nproc4 を出力し、lscpu がモデル名を表示します。このモデル名は、ホストの実 CPU の場合も、ホストの設定によっては汎用の QEMU モデルの場合もあります。

16 GB の RAM。 メモリは固定予約であり、同時に固定上限でもあります。free -h の値が購入した容量より少し小さく、16 GB プランでは約 15Gi になるのは、Linux が使用可能な容量を数える前に、カーネルと複数の予約済みメモリ領域が差し引かれるためです。メモリを使い切っても、ホストから借りることはできません。

160 GB の NVMe。 NVMe(non-volatile memory express)は、ホスト内部でドライブを接続する方式です。旧来のプランで使われていた SATA SSD より大幅に高速です。割り当てられた容量は通常、KVM では /dev/vda のような仮想ディスクとして表示されます。df -h /160 GB より少し小さい値を示します。空き容量はさらに少なくなります。ext4 はデフォルトで、ファイルシステムの 5 パーセントを root 用に確保するためです。SSD VPS における SSD の実際の意味購入したディスクを確認する方法 で、さらに詳しく説明しています。

8 TB の転送量。 これは月間に転送できるデータ量で、通常は送信方向だけを集計します。転送量とポート速度は別の値です。ポート速度は、多くの場合 1 Gbit/s です。上限を超えると、プロバイダーによって追加料金が発生するか、速度制限が適用されます。そのため、動画をホストする前にこの項目を確認してください。sudo apt install vnstatvnstat -m を使うと、インストールした日からの自分の使用量を確認できます。

1 個の IPv4 アドレス。 サーバーを借りている間は、そのアドレスを使用できます。ドメインをそのアドレスに向け、任意のポートでトラフィックを受け付けられます。通常は、プロバイダーの管理画面で逆引き DNS レコードも設定できます。メールサーバーはこのレコードを確認します。非常に安価なプランでは、複数の利用者が 1 つの共有アドレスを使う場合があります。これは NAT VPS と呼ばれます。その場合、ip -4 addr show10.0.0.5 のようなプライベートアドレスを表示し、外部から受け付けられるポートも制限されます。

次の 4 つのコマンドで、実際の割り当てを確認できます。

nproc
free -h
df -h /
ip -4 addr show

上記の丸めによる差を超えて、いずれかの値が仕様表と一致しない場合は、そのマシン上で構築を始める前にサポートへ問い合わせてください。

実際の運用での root アクセス

root は Linux の管理者アカウントで、ユーザー ID は 0 です。root で id -u を実行すると、0 と表示されます。root はシステム全体にパッケージをインストールし、1024 未満のポートを開き、カーネルモジュールを読み込み、カーネルを置き換え、ディスク上の任意のファイルを読み取り・編集できます。1024 未満のポートはカーネルが特権プロセス用に予約しているため、一般ユーザーは port 80 で Web サーバーを起動できません。また、root は不注意なコマンド 1 つでシステムを破壊できます。その操作を代わりに取り消してくれる人はいません。

実際の違いは明確です。共有ホスティングでは、ソフトウェアの導入をサポートチケットで依頼します。VPS では、次のように入力します。

sudo apt update
sudo apt install -y nginx
systemctl status nginx

systemctl status nginx は 1〜2 秒以内に active (running) を出力し、ブラウザーでサーバーの IP アドレスを開くと、nginx のデフォルトページが表示されます。ステータスに failed と表示された場合は、journalctl -u nginx -n 50 を実行して末尾の行を確認してください。サービスが起動を拒否した理由が記録されています。一般的な原因は、設定ファイルのタイプミス、または別のプログラムがすでに port 80 で待ち受けていることです。

root はセキュリティ境界全体でもあり、プロバイダーが生成したパスワードで提供されます。新しいサーバーで最初に行うセッションは、アプリケーションをインストールするタイミングではありません。一般ユーザーを作成し、SSH key によるログインへ移行し、ポートの前段にファイアウォールを配置してください。新しい VPS で最初の 10 分間に行うことには、そのチェックリストを順番にまとめています。SSH key の基本ではログイン自体を説明し、ufw firewall の基本ではポートを説明し、最小権限のユーザーでは以後サービスをどのユーザーで実行すべきかを説明します。パスワードログインが有効でファイアウォールがないサーバーには、1 日に数千件の推測攻撃が届きます。journalctl -u ssh -f を使うと、その試行を監視できます。

VPS の制限は何ですか?

プロセッサは共有されており、その共有状況を測定できます。 Steal time は、仮想 CPU が実行可能な状態で待機していた時間のうち、ハイパーバイザーが物理コアを別のゲストに割り当てたために何も実行できなかった時間の割合です。

vmstat 1 5

最後の列、st が steal time です。共有ホストでは、短時間に 1〜2 パーセントになるのは正常です。自分のプロセスがアイドル状態なのに、継続して 2 桁の値を示す場合、ホストのリソースが過剰に割り当てられています。待機がサーバーの外部で発生しているため、サーバー内部のチューニングでは解決できません。VPS を適切にベンチマークする方法では、プロバイダーに問い合わせる前に、その状況を証明する方法を説明しています。Steal は KVM と Xen のゲストで報告されます。コンテナ仮想化では常に 0 のままで、何も判断できません。

メモリは固定されており、上限に達すると突然停止します。 メモリの割り当てに失敗すると、カーネルの OOM(out of memory)killer がプロセスを選び、SIGKILL で終了させます。

sudo dmesg -T | grep -i "out of memory"

次の 1 行で、原因不明に見える障害の理由が分かります。

Out of memory: Killed process 2412 (mysqld) total-vm:2183104kB, anon-rss:1897224kB, file-rss:0kB

SIGKILL を受けたプロセスにはログを書き込む機会がないため、通常、アプリケーション自身のログには何も記録されません。原因はカーネルログにのみ残ります。VPS イメージの多くには swap ファイルがないため、メモリの上限に達しやすくなります。そのため、小さな swap ファイルを追加することが一般的な最初の変更です。

ディスクは高速ですが、共有されています。 ホストの NVMe は高速ですが、割り当てられた領域は、入出力処理を必要とする他のすべてのゲストと競合します。負荷の少ない時間帯に取得したベンチマーク結果は、同じマシンがピーク時にも同じ性能を出すことを保証しません。

ハードウェアに触れることはできません。 デバイスを接続することはできません。USB デバイス、キャプチャーカード、グラフィックカードはいずれも利用できません。プランで意図的にパススルーが提供される場合を除きます。これは別の、より高価な製品である GPU 付き VPS に該当します。

それは 1 台しかありません。 VPS は単一のマシンです。ホストに障害が発生すると、ホストが復旧するまでサーバーも停止します。自分でフェイルオーバーを構築しない限り、切り替えは行われません。バックアップは利用者の責任であるため、VPS からの restic バックアップをセットアップ項目に含める必要があります。プロバイダーのスナップショットは便利ですが、保護対象と同じインフラ上に保存されるため、バックアップではありません。

サポートの範囲はハイパーバイザーまでです。 アンマネージドプランでは、プロバイダーがハードウェア、ネットワーク、仮想化層を正常に保ちます。オペレーティングシステム以降のすべては利用者の責任であり、セキュリティ更新も含まれます。マネージドホスティングとアンマネージドホスティングでは、その境界を説明しています。Ubuntu の unattended upgradesは、最初に有効にする最小限の実用的な設定です。

VPS と混同されやすいものとの比較

仮想マシンは一般的な概念であり、VPS はその商用形態の1つです。VPS は月額でレンタルする仮想マシンで、オペレーティングシステム、パブリックアドレス、ネットワークがあらかじめ接続されています。VPC(virtual private cloud)は、大規模なクラウド内に構成されたプライベートネットワークであり、サーバーはその内部に配置されます。そのため、VPC はまったく別の問いに答えるものです。VPS と VM と VPC の比較では、3つの用語を正しく区別しています。

専用サーバーは、ハイパーバイザーも他の利用者も存在しない、物理マシン全体です。月額費用は数倍になります。steal time やディスク競合が実際のボトルネックになった場合は、専用サーバーが適しています。VPS と専用サーバーの比較では、判断のポイントを説明しています。

VPN(virtual private network)は、VPS と2文字が共通しているだけで、それ以外に共通点はありません。VPN はマシン間の暗号化トンネルです。VPS はマシンであり、その代表的な用途の1つが自分専用の VPN を実行することです。ここから混同が生じます。VPS と VPN の比較では、この2つの用語を整理しています。

所有するハードウェア、または自宅のマシン上で動作する Proxmox などのハイパーバイザーを使うと、費用に対してより多くのリソースを利用できます。一方、住宅向けの接続は、多くのサービスから不審な接続として扱われます。Proxmox と VPS の比較では、性能、騒音、稼働時間と月額費用を比較します。

VPS では何を動かせますか?

率直に言えば、Linux で動作するものなら何でも実行できます。よくある用途は、データベースを備えた Web サイト、プライベート VPN、ゲームサーバー、ステータス監視、メールサーバー、メディアライブラリ、またはノートパソコンを閉じている間も処理を続けるコーディングエージェントです。実行するものはすべてポートで待ち受けるため、次に学ぶ価値がある概念は Linux におけるポートとは何か です。また、VPS でできること には、各用途に必要なリソースも含めた、より詳しい一覧があります。

FAQ

VPSは仮想マシンと同じものですか?

VPSは、企業からレンタルする仮想マシンです。オペレーティングシステム、パブリック IP アドレス、月額料金が付属します。基盤となる技術は同じです。ただし、用語の範囲が異なります。「仮想マシン」はハイパーバイザー上で動作するゲスト全般を指し、自分のノート PC 上で動作するものも含みます。一方、「VPS」は購入するサービスを指します。VPCはまた別のもので、サーバーではなく、クラウドプロバイダー内のプライベートネットワークです。

VPSを使うにはLinuxの知識が必要ですか?

少し必要ですが、残りは使いながら学べます。最初に必要なのは、ssh で接続すること、cdls で移動すること、nano でファイルを編集すること、apt でソフトウェアをインストールすること、journalctl でログを読むことです。アンマネージドVPSでは、更新とファイアウォールを自分で管理することが前提です。それが負担であれば、マネージドプランまたはコントロールパネルを利用できます。月額料金は高くなりますが、一部の作業を任せられます。

VPSのRAMが、プランの表示より少ないのはなぜですか?

Linuxが報告するのは使用可能メモリであり、プランが表示するのは割り当てメモリです。free -h の合計を計算する前に、カーネルイメージと複数の予約済みメモリ領域が差し引かれます。そのため、16 GBのプランでは通常、約15Giと表示されます。数百メガバイトの差は想定内です。数ギガバイトの差がある場合は通常ではないため、サポートに問い合わせる価値があります。

steal timeとは何ですか。気にする必要はありますか?

steal timeは、仮想CPUが実行可能な状態でありながら待機した時間の割合です。ハイパーバイザーが物理コアを別のゲストに割り当てたことが原因です。vmstat 1st 列に表示されます。共有ハードウェアで一時的に1〜2%になるのは正常です。自分の負荷が低い状態で、2桁の値が継続する場合は、物理ホストのリソースが過剰に割り当てられています。サーバー内部からホストのスケジューラーは制御できないため、別のホストまたは別のプランへの変更が必要です。

1台のVPSで複数のサービスを実行できますか?

はい。rootを使えるのはそのためです。VPSは汎用マシンであり、メモリに収まり、各サービスが別々のポートで待ち受ける限り、サービスを共存させられます。通常、最初に制約になるのはメモリで、次にディスク速度が制約になります。メールは例外的に扱いが難しくなります。メールの配送はIPアドレスの評判に左右され、ホスティングプロバイダーの新しいアドレスは、大手メールシステムから最初は信頼されていないことが多いためです。