是否可以让 Web 应用程序通过 Apache Mesos 使用几台服务器机器的组合硬件资源?

是否可以让 Web 应用程序通过 Apache Mesos 使用几台服务器机器的组合硬件资源?

我正在研究一个叫 Apache Mesos 的框架。我对这个框架完全陌生。

根据这个网站它可以将您的数据中心服务器和云实例组合成一个共享池,任何应用程序或框架都可以从中提取,如下所示图像

我读过一些关于这个框架的文章和教程。但我仍然不太清楚这个框架是如何工作的。

假设我有 3 台物理服务器,每台都有 4 个内核和 8GB RAM。我可以部署单个 LAMP Web 应用程序并让其使用所有服务器的组合硬件资源(12 个内核和 24GB RAM)吗?

通过参考这个教程看起来,Mesos 只能在其中一台服务器中运行 Web 应用。那么,使用 Mesos 有什么好处呢?

答案1

不。作为几乎所有情况下都适用的概括 <*>,给定的进程只能在单个硬件上运行。因此,如果您的 LAMP 应用程序不是为扩展到多个节点而构建的,那么像 Mesos 这样的产品只能购买一定程度的故障转移/HA。它不会以某种方式将两台机器的内存/CPU 捆绑在一起。

如果您的应用程序是为横向扩展而构建的,或者您拥有大量应用程序,那么像这样的框架将能够在所有可用硬件上平衡不同的进程,从而确保更充分地利用可用资源。这就是“云”产品的提供商端通常的样子。

<*> 有昂贵的系统可以提供跨多个独立服务器的 SSI(单一系统映像)。这些系统通常最适用于专门为此类平台构建的软件包。它们需要考虑这样一个事实:在机器 1 的 CPU 上运行的进程可能会访问机器 2 中的 RAM,这会比较慢,应该避免。如果您只是将一大堆披萨盒拼凑在一起并尝试运​​行 MONSTER APACHE 实例或 Microsoft Exchange,它的性能将不会像 Voltron 那样。没有魔法剑,就没有狮子。

相关内容