Apache Mesos:让你资源利用率更高、扩展性更好

Apache Mesos:让你资源利用率更高、扩展性更好

作者:Walker Rowe 2017-04-12 11:02:50

云计算

虚拟化 Apache Mesos已经成为主要企业一种流行的手段,来进行线性扩展的能力、减少浪费资源消耗,以及抽象存储、CPU和内存。

[[188263]]

Apache Mesos已经成为主要企业一种流行的手段,来进行线性扩展的能力、减少浪费资源消耗,以及抽象存储、CPU和内存。

由加利福尼亚大学伯克利分校的开发人员创建,由包括Twitter、Apple和Netflix在内的主要企业所拥护的Apache Mesos,它是一个开源软件,可以在一组机器上抽象出存储、CPU和内存 Apache Mesos的主要吸引力之一是它线性扩展,这意味着随着负载水平的增加,响应时间可以成比例地增加——基本上是***制的扩展。Mesos将自己称为“分布式系统内核”,因为它采用了Linux内核的核心原则,但却应用在不同的抽象级别。

停止浪费虚拟机资源

数据中心管理员频繁地利用虚拟机(VM),导致企业浪费大量资金用于没有使用的资源上。这个问题通常通过分区来解决,通过分配一组特定的服务器来运行特定的功能。在传统环境中,你可以使用分区来定义需求,例如需要特定数量的服务器,然后相应地分配VM和存储。在公有云中—用户以资源使用为基础计费,无法访问云操作系统——分区将更大或更小的模板用于VM配置上。

虽然这种方法足够有效了,但这对协调服务(colocate services )更实际,这一服务是Apache Mesos输入图片的所在地。分区将机器用于特定任务,例如数据库服务器,另一个则用于运行,例如Web服务器。协调更有效率,因为它允许你在VM或服务器上运行多个服务。它也降低了成本,因为在同一台服务器上运行多个服务减少了所需的服务器数量。 Mesos不是依靠分区来运行服务的,而是使用托管方式来允许软件根据需要获取资源。就技术术语而言,Mesos用自己的框架替代你正在使用的资源管理器,并实现调度和执行接口的功能。

Mesos与个人软件、Docker容器,和配置为使用Mesos作为资源管理器的大型数据集群协同工作。Apache Mesos不是VM的业务流程系统。Mesos还使用Linux控制组(也称为cgroups)来限制资源,优先处理进程并进行计算。这在公有云中很有用,因为它允许供应商根据使用的资源来对客户收费。Cgroups在传统环境中也很有用,因为它们可以限制进程,从而不会占用机器资源。

Mesos和YARN解决分区问题

Apache Hadoop还有另一个资源协调器YARN,它是Apache Hadoop MapReduce的资源管理员,执行与Mesos大致相同的功能。事实上,Myriad是一个开源项目,它可以让数据中心同时使用这两种产品。例如,如果你想使用Mesos运行容器应用,又想使用YARN来运行Hadoop,那么可以一起使用Mesos和YARN。

如果我们仔细看看雅虎重写了Hadoop添加了YARN的原因,我们就可以更好地了解Mesos和YARN的功能。

为YARN编写框架是一项复杂的任务,这更适合于大型软件产品的工程师,如Apache Spark,而不是最终用户。Hadoop的配置使得使用YARN更容易。在集群环境中,你可以简单地编辑名称节点上的配置文件,然后把整个Hadoop安装复制到日期节点上——YARN可以在不需要任何进一步更改配置的情况下工作。

Hadoop早期版本的主要问题是分区。通过分区,你可以指定插槽来运行映射作业或将作业减少到Hadoop集群中的机器上。一旦你分配了一个插槽来运行一个映射作业,你就不能使用它来运行减少作业,反之亦然。假设你已经分配了10个插槽来运行映射作业,10个插槽来在Hadoop集群的机器上减少作业。现在,我们假设Hadoop需要运行11个映射 作业,你会发现你限制了自己,因为你没有为映射 作业分配足够的插槽,而且你了不能使用任何额外的插槽分配给减少 工作。这个问题清楚地表明,我们需要一个更好的方式来共同服务,并取消分区。对此,Apache做出了回应,从而让YARN和Mesos可以排除服务。

Apache Mesos架构

Apache Mesos架构由一个主守护进程组成,可以管理每个群集节点上运行的代理守护程序。代理程序也使用了cgroup来确保它们在已分配的内存、CPU和存储空间中工作。每个代理使用一个Mesos框架运行任务。该框架由两个组件组成:调度程序——其向主机注册以接收资源;执行器——其从调度器接收这些资源并使用它们运行框架的任务。实际上,执行器 会识别出哪正在运行的应用程序资源可用。

Mesos和容器编排

像Kubernetes和Docker Swarm一样,Mesos也执行容器编排。Mesos使用三种类型的容器技术:Composing,它允许不同的容器技术一起运行;Docker和Mesos自己的容器化,这是默认配置。

Apache Mesosphere

Apache Mesosphere是向原始Apache Mesos框架添加附加功能的软件; 它包括Aurora 、Chronos和Marathon。

由Twitter开发运行无状态服务,如Java VM和Web服务器,Apache Aurora是为长期运行和cron工作而设计的框架。Apache Chronos是一个弹性分布式系统,表示作业之间的依赖关系。由Mesosphere撰写,Apache Marathon是一个可以扩展到数千个物理服务器的容器编排系统。Aurora、Chronos和Marathon都使用JSON和REST API与Mesos接口。

帮助创建Mesos的Twitter工程师之一在DockerCon上表示,他建议Mesos用户在家庭实验室中要至少使用三台机器来运行工作中的Mesos原型。Apache为有兴趣尝试Mesos的用户提供了minimesos实验和测试工具。Minimesos包括一个bash shell,你可以在其中部署Mesos Elasticsearch框架。

主流企业牛拥抱Mesos

你可以想像,像Uber那样的企业有一些重要的数据处理需求。Uber使用Apache Cassandra数据库——一个NoSQL面向列的数据库来存储位置数据。面向列的数据库一次写入一行/列组合,而不是写入整行列,因此它不会在空列中浪费空间。面向列的数据库还将列保持在一起,以便快速检索。

除了依靠Mesos跟踪数据,Uber还定期向Mesos提供代码。在2016年,Uber写了一个名为DC / OS Apache Cassandra的扩展,这使得在DC / OS上部署Mesos更容易。DC / OS协调主代理关系中的多个Mesos代理。像Mesos一样,DC / OS是分布式操作系统,但具有配置管理Marathon和Chronos等其他功能。你可以在DC / OS的顶部运行Hadoop、Spark、Cassandra等等,因为它是可扩展的。最近,DC / OS Apache Cassandra被集成到了Mesosphere DC / OS中。

Netflix也是Apache Mesos的主要用户和贡献者。Netflix表示,它运行在亚马逊弹性云计算(EC2)上,并使用Mesos提供“细粒度的资源分配到可以打包到单个EC2实例的各种大小的任务上。2015年,Netflix开发了Fenzo,这是Apache Mesos框架的开源调度程序。Fenzo管理部署的调度和资源分配,并向Mesos添加集群自动缩放功能。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/306949.html<

(0)
运维的头像运维
上一篇2025-05-26 21:47
下一篇 2025-05-26 21:49

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注