我有一台小型机器(AMD Athlon 64 X2 2.1 GHz、3GB DDR2、320GB 磁盘空间),用作服务器,
我想将其转换为 Hypervisor 来托管许多小型 Linux 虚拟机(每个 VM 的 RAM 在 128MB 到 256MB 之间,仅用于一些测试(我是 IT 学生)),但我不知道选择什么解决方案(我需要托管许多服务器软件,如 Apache、Mysql/Postgresql、Samba 等),我尝试了很多:
VMWare 服务器:还不错,与所有其他 VMWare 解决方案(Workstation、Marketplace)兼容,性能良好,但 Web UI 确实存在缺陷,而且看起来不太“可脚本化”。
Xen服务器:管理界面确实很好,但在 Linux VM 上的表现很差(Ubuntu 服务器安装需要 30 多分钟,而在 VMWare 服务器上只需约 15 分钟)
ProxmoxVE/OpenVZ:非常好的解决方案,适用于 99% 的情况,内存开销低,速度快,简直完美!但是没有很多兼容的发行版(例如最后一个 Ubuntu 服务器),但这对我来说不是真正的问题,真正的问题是内核,它有点锁定,我想创建一个 iSCSI 目标 VM,但这是不可能的,因为这需要修改内核,而这种类型的虚拟化(容器)不允许修改内核。
你有什么推荐给我的吗?
谢谢
答案1
去年我一直在使用 OpenVZ,目前在 Compaq 2320D(Atom 330、2GB RAM、250GB HDD)上使用 XenServer。您的小的机器比我的更好。我将分享一些从我的机器中学到的经验教训。博客。
我假设您只计划运行 Linux 客户操作系统。
OpenVZ 和 Xen 之间最大的区别在于内存管理。它们的做法不同。我不知道确切的区别,但我无法在 OpenVZ 上顺利运行具有 64MB RAM 的简单服务器,但我可以在 64MB Xen VM 上运行 Web 服务器 + mysql + php。这可能与 Xen 中的交换功能有关,而 OpenVZ 上没有该功能。
然后,还有网络问题。配置 Xen 更简单。就我而言,我必须在网络上拥有多个支持广播的 VM。使用 OpenVZ,这涉及进行多个桥接配置,而不是 venet0(其 wiki 上有详细记录),而在 Xen 上,默认情况下会这样做,就像真正的网卡应该如何工作一样。
最后,还有配置问题。试图弄清楚特权页面和其他 OpenVZ 的设置简直是一场噩梦。只需告诉 Xen 使用 XXMB 内存即可。另一方面,OpenVZ 允许您卖空可用的内存量,而 Xen 没有。
答案2
我会尝试 VMWare ESXi。您仍然可以找到 3.5i,它适用于内存少于 4 GB 的机器。根据我的经验,ESXi 比 Xen 同类产品更易于使用,后者的要求似乎更高一些。
答案3
VMWare 和 XenServer 之间的速度应该差不多。但这取决于很多因素,比如您向客户机提供的驱动器类型。例如,VirtIO 驱动器将比 qemu 模拟的 ide 或 scsi 驱动器快得多。但客户机操作系统必须支持 VirtIO 驱动程序。Ubuntu Server 9.04 及更新版本支持 virtio。
你可能想要研究的另一个选择是虚拟机。它与 Xen 类似,使用 qemu 和 libvirt,并且可以通过许多相同的工具(如 virt-manager 或 convirt)进行控制。但它只是您在 Linux 中加载的一个模块,而不是独立的虚拟机管理程序。
我目前在我的笔记本电脑上使用 KVM 和 virt-manager 作为我的测试 IT 实验室。
答案4
如果您使用的是 Windows 系统,Hyper-V(当然是 R2)和一些基于 Windows 的 iSCSI 目标解决方案(将共享存储提供给虚拟机管理程序集群,如 StarWind fe)应该可以解决问题。所有东西都可以免费运行。如果您想运行 Linux,Xen 应该是一个不错的选择。我会远离容器,因为在我看来它还不够成熟……除非您这样做是为了测试和开发,而不是为了生产 :)
一郎