Mac*_*cki 9 virtualization cluster high-availability ganeti proxmox
我是小型软件公司的系统管理员。我要虚拟化我们的服务器。这样做的主要原因是提供尽可能高的正常运行时间,但也可能会增加资源利用率。
我们有两台服务器。一方面,我们的开发虚拟机很少,而且还用作构建服务器(Jenkins Master,但也有 Build Executor)。在第二个中,我们得到了一些关键服务(代码存储库、问题跟踪器)。
我想使用这些机器创建两个节点集群并为每个服务创建 VM。我想使用 DRBD,因此可以在节点之间移动机器。
经过一些研究,我的候选人是 Proxmox 和 Ganeti。在我的情况下,哪一种会更好?我喜欢 Proxmox 的简单性(尤其是安装简单性),但也许使用 Ganeti 有正当理由?
Tom*_*ime 12
我不熟悉 ProxMox,但我熟悉 Ganeti,因为我在我的工作中使用它并与核心开发人员一起工作。
如果你有少量的物理机和虚拟机,那么手工做就可以了。您可以记住哪个 VM 位于哪个物理机器上,并在正确的节点上运行正确的 Xen 命令。如果您只有一台物理机器,那么您总是知道您的虚拟机在哪台机器上。
对于新用户来说,Ganeti 最明显的好处是它知道所有 VM 的位置。您可以从一位主服务器发出诸如“停止实例 foo”之类的命令,它会查找 foo 正在运行并停止它。您可以发出类似“在有可用空间的地方创建大小为 X 的 VM”之类的命令,它会找到可用空间并创建 VM。如果您有大量流失(创建和删除 VM),Ganeti 将为您节省大量时间。它还可以帮助您应对灾难:如果整个集群断电,Ganeti 将在集群通电并启动时重新启动所有 VM。(示例如下:停电:Ganeti 的真实测试)
您可以为 VM 配置(操作系统、磁盘存储配置等)设置“模板”实例。
当您拥有少量 VM 时,手动做事的问题在于,如果您成功,您将增长到 Ganeti 有意义的程度。那时您可能会忙于工作,而没有时间安装 Ganeti。这是从手动操作转向安装自动化的普遍问题:您没有时间修理漏水的水槽,因为您忙于拖地。为了防止这种情况,我建议尽早安装 Ganeti(或您选择的任何自动化)。
Ganeti 是 100% 开源的,不需要许可证。但是,如果您需要,没有可用的商业支持。我不熟悉 ProxMox,但他们的网页说它需要许可证;有些部分是开源的,但没有许可证则无法使用(来自我在他们网站上阅读的内容)。他们的网站上列出了支持计划。
Ganeti 自 2007 年起在 Google 之外提供。它背后有 5 年以上的工程经验。它已经稳定了一段时间。您可以在code.google.com/p/ganeti上找到 Ganeti 源代码和支持社区。 我不知道最近 ProxMox 是如何发布的。
小智 7
我从 2003 年开始使用 Xen。我已经使用 Ganeti 大约一年了,强烈推荐它。我从未听说过 ProxMox。
多年来,我在大小从 2 到 5 个节点不等的几个集群中手动管理 LVM、DRBD 和 Xen 配置文件——这是一场噩梦。DRBD 使事情变得非常可靠,而 Xen 使 VM 易于在节点之间迁移,但是每当一个节点出现故障时,我都会经历一个漫长而乏味的过程:创建新的 LVM 卷、配置 DRBD 并重建镜像,然后确保 Xen 和其他配置被复制......对于一个 5 节点的集群,让事情在我的脑海中直截了当有时可能会很痛苦。我一直想把这一切都写下来,但生活一直在妨碍我。
然后Ganeti出现了。它完全是为我的用例编写的——使用 Xen 和 DRBD 的 n 路集群。那些痛苦的、充满风险的操作现在在某些情况下被压缩为单个 ganeti 子命令。我喜欢它。我现在已将大部分 VM 迁移到一个大型 10 节点 ganeti 集群中。
我还将我们的 Windows 桌面迁移到 Ganeti/KVM 集群——现在只在桌面上使用 Linux,他们使用 VNC 来访问 Windows VM。这里的一大优势是更容易的快照和备份,以及将每个 Windows 应用程序沙箱化到自己的 VM 中的能力。
顺便说一下,即使您现在谈论的只是一个 2 节点集群,我很确定,一旦您看到该实用程序,您就会发现自己添加了节点并将所有可以迁移到虚拟机中。如果您的集群平台可以支持 2 个以上的节点,例如 Ganeti,那么您就可以做到。
小智 5
我不使用ganeti,但我使用proxmox并且我非常了解它。Proxmox VE 是一个完全开源的项目,所有代码都可以通过二进制文件获得。基本系统是带有自定义安装程序的 Debian 64 最小发行版,但您也可以安装 Debian 系统并添加 proxmox 存储库。该项目的主要赞助商之一是奥地利政府,这确保了该产品的开发将得到长期资助。从 2.0 版本开始,甚至开发过程也是开放的(之前它是一个封闭列表,您必须请求访问 proxmox 背后的公司)。
它具有用户友好的界面,几乎具有 vSphere 上的所有功能、集群支持(基于 corosync)、VM 高可用性 HA、界面自动备份和恢复支持。它还支持openvz容器虚拟化,无缝集成在KVM的相同基础设施和接口中,因此您可以根据您的需求选择最佳的虚拟化策略。我大约安装了 20 个 Proxmox,从单主机到带有 drbd 的 2 节点集群,再到 FC SAN 上的 5 节点集群(>80VM)。
就我对 Ganeti 的了解而言,我可以说不存在竞争。Proxmox 肯定会获胜。