Linux 服务器虚拟化是什么意思?

Jam*_*jua 2 virtualization linux

今天,我去面试,被告知有几个月的时间,我将进行 Linux 服务器虚拟化。我有点知道虚拟化意味着什么,因为我使用 Virtualbox,但我不完全确定它与服务器的关系,或者它在典型的工作场景中通常如何使用。我能得到一些关于这个的简短解释吗?无论如何,请保持技术。

谢谢!

Gle*_*ley 6

什么是虚拟化

简而言之,虚拟化是创建虚拟(而不是物理或实际)的东西,例如操作系统、存储设备、服务器甚至网络设备(例如交换机)。

由于您专门询问 Linux 虚拟化,因此我假设您指的是服务器和台式机:

服务器虚拟化是对服务器用户的服务器资源(包括单个物理服务器、处理器和操作系统的# 和身份)的屏蔽。

桌面虚拟化是对桌面用户的桌面资源(包括单个物理桌面机器、处理器和操作系统的# 和身份)的屏蔽。

每个 - 目的是让用户不必了解和管理服务器/桌面资源的复杂细节,同时增加资源共享和利用率并保持以后扩展的能力。

虚拟化方法 (linux)

有许多不同的系统虚拟化方法,每种方法都有自己的优点和缺点。

  1. 半虚拟化:

    简而言之,为了更有效地运行,客户操作系统的内核被更改为在虚拟化环境中表现良好的内核。

    Xen、lguest 和用户模式 ​​Linux 在 x86 上进行半虚拟化。

  2. 硬件虚拟化

    Intel VT 和 AMD-V CPU 能够在非特权虚拟机中运行所有指令,并使它们表现良好。大多数情况下,大部分资源都是模拟的(如时钟)。但是,它允许更清晰地实现完全虚拟化。

    Xen 和 KVM 做硬件辅助的全虚拟化。

  3. 操作系统级虚拟化 -(容器)

    容器根本不运行虚拟机,而只是将多个用户空间环境彼此隔离开来,而一切都在一个内核下运行。(许多系统管理员认为这是一个主要原因,因为他们只需要修补或维护 1 个内核而不是许多内核。)容器系统往往具有低开销和高密度,但不同容器之间的隔离也较低。这当然是有代价的——因为容器系统只允许运行 1 个内核——但是它们确实同时支持不同容器中的各种 Linux 发行版。有许多不同的容器系统 - 例如 Solaris Zones、Linux-VServer 和 OpenVZ/Virtuozzo。OpenVZ在不同容器之间有比较完整的资源隔离,另外两个控制比较少。

希望这有助于为您提供 Linux 虚拟化的简单分类。

我建议查看 Proxmox 项目http://www.proxmox.com/products/proxmox-ve 它是开源的 - 并且允许您在同一系统上同时测试 KVM 和基于容器的虚拟化。

一定要评论这篇文章并投票。