我有一台我用作服务器的小机器(AMD Athlon 64 X2 2.1 GHz,3GB DDR2,320GB磁盘空间)
我想转换它作为一个虚拟机pipe理程序来承载许多小的Linux虚拟机(每个虚拟机128MB和256MB的内存之间,只是为了一些testing(我是IT学生)),但我不知道什么解决schemeselect需要承载Apache,Mysql / Postgresql,Samba等许多服务器软件),我试了很多:
VMWare服务器 :一点也不差,与所有其他VMWare解决scheme(工作站,市场)兼容,性能良好,但Web用户界面确实很麻烦,而且看起来不是很“可脚本化”。
XenServer :pipe理界面非常好,但是我在Linux VM(Ubuntu Server在VMWare服务器上安装超过30分钟,而不是〜15分钟)
ProxmoxVE / OpenVZ :真的很好的解决scheme,适合99%的情况下,低内存开销,快速,完美! 但是没有很多兼容的发行版本(例如最后的Ubuntu服务器),但是对我来说这不是一个真正的问题,真正的问题是内核,它有点被locking,我想创build一个iSCSI目标虚拟机,但是这可能是因为这需要在这种types的虚拟化(容器)上不允许的内核修改。
你推荐我什么?
谢谢
我花了去年使用OpenVZ,目前正在康柏2320D(Atom 330,2GB内存,250GB硬盘)上使用XenServer。 你的小机器比我的好。 我将分享一些从我的博客中学到的经验教训。
我将假定您只是计划运行Linux客户操作系统。
OpenVZ和Xen最大的区别在于内存pipe理。 他们做不同的事情。 我不知道确切的区别,但是我无法在OpenVZ上顺利运行带有64MB RAM的简单服务器,但是我可以在一个64MB的Xen虚拟机上运行一个web服务器+ mysql + php。 这可能与Xen中的交换function有关,OpenVZ上没有此function。
那么,还有networking的问题。 configurationXen更直接。 在我的情况下,我必须在networking上有几个广播能力的虚拟机。 使用OpenVZ,这涉及到在Xen上创build多个网桥configuration,而不是venet0(在他们的wiki上有详细logging),这是默认完成的,就像一个真正的网卡应该如何工作。
最后是configuration问题。 试图找出多lessprivvmpages和其他设置的OpenVZ是一场噩梦。 告诉Xen使用XXMB的内存很容易,可以用它来完成。 另一方面,OpenVZ允许您在Xen不可用的情况下超额销售可用的内存量。
我会给VMWare ESXi一个镜头。 你仍然应该能够find3.5i,它在less于4个RAM的机器上工作。 根据我的经验,ESXi的使用比Xen的使用更为简单,似乎对Xen的要求有所提高。
VMWare和XenServer之间的速度应该是相似的。 但是,这取决于很多事情,比如说什么样的驱动器来呈现客人。 例如,VirtIO驱动器将比qemu模拟ide或scsi驱动器快得多。 但客户操作系统必须支持VirtIO驱动程序。 Ubuntu Server 9.04和更新的支持virtio。
另一个可能需要考虑的选项是KVM 。 它与Xen类似,它使用qemu和libvirt,可以通过许多相同的工具(如virt-manager或convirt)进行控制。 但是,它只是一个在Linux中加载的模块,而不是一个独立的pipe理程序。
我目前在我的笔记本电脑上使用KVM和virt-manager作为我的testingIT实验室。
安装VMware Server后,将浏览器指向https:// yourserver:8333 / client / VMware-viclient.exe,然后安装VMware Infrastructure Client。 现在你不必依赖那个可怕的网页界面(如果你的基础操作系统是windows的话)。
一些其他的免费选项,你可能会检查出VMware Player和VirtualBox 。 VMware Playerfunction非常全面,现在可以创build具有最新版本的虚拟机。 实际上与Workstation类似,但我不认为它可以让你做快照。
我倾向于坚持使用VMware产品,但是我曾经使用VirtualBox的次数让我对性能和灵活性印象深刻。
如果你是Windows商店,Hyper-V(当然是R2)以及一些基于Windows的iSCSI目标解决scheme将共享存储提供给pipe理程序集群(如StarWind fe)应该可以做到。 所有的东西都可以免费运行。 如果你想运行一些Linux Xen应该是一个不错的select。 我会远离容器的东西,因为它从我的angular度来看并不是很成熟,但是…除非你是为了testing和开发而不是为了生产而做的:)
-ichiro
我build议你使用VirtualBox运行在像Debian或Ubuntu Server(或类似的)的轻量级服务器发行版上。 VirtualBox为您提供了几个选项,可以使用/不使用gui来运行,而且SDK可以通过Python在Linux上编写脚本。
我build议从virtualbox.org下载版本,而不是在版本中的OSE版本。 它增加了一些很好的function,如USB支持。