我做软件(主要是networking)开发,而且我单独工作,所以我必须应付很多系统pipe理员types的工作,以便设置不同的web /应用程序/数据库/源代码控制服务器堆栈,更不用说我自己的开发环境。
最近我一直在寻找一种方法来虚拟化这些不同的问题,使我的设置更易于pipe理。 理想情况下,我将login到一个瘦客户端(使用我的Xsession,emacs和ssh),使服务器无头运行,并像在现实世界中一样使用它们。 我的目标是最终在版本控制下得到这一切…
最重要的是我还有一些担忧:
性能,因为我没有杀手机器,每个服务器都有一个完全虚拟化的操作系统,可能会减慢它的爬行速度。
和便携性,即能够重新使用这些configuration尽可能小调整时,我把它们移动到VPS或其他本地盒子。
考虑到这一点,我已经基本上将其缩小到os级别的虚拟化。
OpenVZ似乎是要走的路,但后来我发现了LXC和Linux V-Server,现在我感到困惑。
所以无论如何,对于长时间的咆哮抱歉,我想问问你们,如果你有这些虚拟化解决scheme的经验,也许可以提供一些最适合我的需求的见解吗?
欢呼!
它们是相似的虚拟化forms – 仅在操作系统级别。 这比完全虚拟化有几个优点。
rsync来备份任何机器。 您也可以通过简单复制目录来轻松复制一台机器。 OpenVZ和VServer的区别似乎只是一个类似的东西的不同口味。 您可以轻松地在两个系统之间移动您的虚拟机,详见其网站。 与其他两个更成熟的系统相比,LXC看起来更新。
对于类似的情况,我对KVM的运气非常好。 是的,这是一个完整的机器虚拟化解决scheme,但如果内核在KVM中处于空闲状态,则不会使用除RAM之外的任何资源。 (对于任何虚拟化解决scheme,您希望添加尽可能多的RAM)
请注意,Apache,Mysql或类似的无头Linux可以运行256 MB的RAM,只要加载是你和一个testing脚本,而不是一个完整的生产站点。