仮想化
KVMとは?
KVM is full hardware virtualisation built into the Linux kernel, giving each guest its own kernel and hardware-enforced isolation from other tenants. Because a KVM guest runs its own kernel, it can load kernel modules, run non-Linux operating systems, use real swap and support nested virtualisation.
KVMが重要な理由
KVMゲストは独自のカーネルで実行されるため、カーネルモジュールのロード、非Linuxオペレーティングシステムの実行、実際のスワップの使用、ネストされた仮想化のサポートが可能です。KVMゲストに割り当てられたメモリは実際に予約されるため、これがコンテナベースの仮想化との実質的な違いです。
実践でのKVM
KVMサーバーを実行する場合、最初に確認するのはゲストの/proc/cpuinfoです。ホストのフラグと一致しない場合、完全なKVMではなく準仮想化のショートカットを目にしている可能性があります。メモリ割り当ては実際の予約で設定します。オーバーコミットすると、ホストがアイドル状態でもゲストのOOMキラーが作動します。ネストされた仮想化を誤って設定すると、ハードウェア支援ページングが失われ、ゲストの速度が大幅に低下します。これを間違えると、再起動なしには回復できないパフォーマンスを失います。
KVMについて人々が誤解していること
KVMはOpenVZやLXCと同じだと思っている人がいます。どちらもLinuxカーネルを使用するためです。正しくは、KVMは各ゲストに独自のカーネルを与えますが、コンテナはホストのカーネルを共有します。カーネルモジュールのロードや非Linux OSの実行はKVMでのみ可能です。名前空間共有による分離はハードウェアで強制されません。
KVM — よくある質問
KVMはパフォーマンスにどのような意味を持ちますか?
KVMのハードウェア仮想化は、各ゲストが独自のカーネルを持つことを意味し、CPUとメモリのパフォーマンスはネイティブに近くなります。メモリは実際に予約され、共有されません。コンテナと比較して、予測可能で分離されたスループットが期待できます。
KVMでWindowsを実行できますか?
はい、KVMゲストは独自のカーネルを実行するため、Windowsなどの非Linuxオペレーティングシステムを実行できます。ISOをアップロードし、VNCコンソールを接続する必要があります。Windows Serverライセンスは、特定の地域でオプションの追加機能として利用できます。
KVMが登場する箇所
- 実際に使える最も安いVPSは何ですか? 月額約4ドルで、本物のKVM仮想化上で1 vCPU、1 GB RAM、20 GB NVMeを購入できます。これは、WireGuard VPN、DNSリゾルバー、Torリレー、小さなボット、静的サイトに十分な容量です。この価格以下では、仮想マシンではなく過剰販売されたコンテナを購入している可能性が高いです。…
- VPSプロバイダーはどう選べばいいですか? 5つのことを確認する:仮想化タイプ(KVMであってOpenVZではない)、コアが専用かどうか、サーバーが置かれている管轄区域、プロバイダーが収集する本人確認データ、そして誰かがあなたについて苦情を申し立てたときに何が起きるか。価格は比較するのが最も簡単で、最初の1ヶ月を過ぎれば最も重要でない可能性が高い。…
- 我可以在VPS上安装任何操作系统吗? 在KVM上,可以。OnionVPS提供Ubuntu、Debian、AlmaLinux、Rocky、Fedora、Arch、Alpine、NixOS、FreeBSD、OpenBSD、Windows Server、Proxmox等模板,你也可以上传自定义ISO并安装任何可启动的系统。在基于容器的虚拟化(如Open…
- 什么是KVM虚拟化? KVM(基于内核的虚拟机)是内置于Linux内核的完整硬件虚拟化,利用处理器扩展使每个客户机运行自己的内核并具有硬件强制的隔离。与OpenVZ或LXC(共享主机内核)不同,KVM客户机可以加载内核模块、运行任何操作系统并使用真实交换空间。…
- OnionVPSは他のVPSプロバイダーと何が違うのですか? 4つのこと:あらゆる種類の本人確認がないこと、カードや銀行が関与しない暗号通貨のみの支払い、真のオフショア管轄区域を含む116か国138のロケーション、そして接続ログを生成しないアーキテクチャ。これにKVMのみの仮想化、含まれるDDoS保護、すべての階層でのポート25のオープンを組み合わせています。…
- すべてのプランに含まれるものは? 完全なrootアクセス、カスタムカーネル対応のKVM仮想化、カスタムISOアップロード、帯域外VNCコンソール、IPv4アドレス1つ、ルーティングされたIPv6 /64、常時稼働のDDoS軽減、スナップショット3つ無料、セルフサービスの逆引きDNS、完全なREST APIとTerraformプロバイダー、そし…
仮想化の詳細
- OpenVZ
- OpenVZはコンテナベースの仮想化であり、すべてのインスタンスがホストカーネルを共有するため、ゲストはカーネルモジュールをロードしたり、異なるオペレーティングシステムを実行したりできません。
- LXC
- LXCはLinuxネイティブのコンテナ化であり、ホストカーネルを共有しながら、名前空間とcgroupsでプロセスを分離します。
- ハイパーバイザー
- ハイパーバイザーとは、仮想マシンを作成・実行し、物理CPU、メモリ、I/Oを割り当てるソフトウェアレイヤーです。
- 嵌套虚拟化
- ネスト仮想化により、仮想マシン自体が仮想マシンを実行できるようになり、プロセッサの仮想化拡張機能がゲストに公開されます。
- vCPU
- vCPUは、ゲストに提示される仮想プロセッサであり、物理コアまたはスレッド上のスケジューリング時間によって支えられています。
- cloud-init
- cloud-initは、プラットフォームが提供するメタデータを使用して、仮想マシンを初回起動時に構成するための標準的なメカニズムです。