我正在尝试在“监禁”某些应用程序之间做出决定,并且我知道 KVM 与 LXC 的权衡以及如何使用它们。
最近,我再次遇到 UML(用户模式 Linux),并且想知道它在安全性和资源消耗(或开销,如果你愿意的话)方面如何比较。
我在哪里可以找到这样的比较,或者这里有人知道如何比较吗?
基本上:
- 磁盘 I/O 和 CPU 开销是多少?
- 隔离有多严格,以及主人对客人所发生的事情的安全程度如何?
答案1
- 最佳磁盘 I/O:LXC > KVM > UML。 LXC 没有开销可言,KVM 添加了一个间接层,因此速度会更慢(但您也可以将它与原始磁盘一起使用),UML 会慢得多。
- 最少的 CPU 开销:LXC > KVM > UML。 LXC 没有开销,KVM 开销很小,UML 开销较大。
- 严格分离和安全:UML > KVM > LXC。与 krowe 的上述陈述相反,如果您希望安全性高于一切,那么 UML 就是最佳选择。您可以在受限的 chroot 环境中以完全无特权的用户身份运行 UML 内核进程,并进行任何您想要的强化。逃离虚拟机需要首先找到内核错误,即使这样,您最多也只能获得主机上普通用户进程的特权。现在,如果您关心性能……KVM 是一个更好的选择。 LXC 将为您提供最佳性能,但也是 3 者中最不安全的。