写点什么

Force12.io 为 Apache Mesos 创建“微伸缩”框架

2015 年 10 月 09 日

Force12.io 日前发布了一款运行在 Apache Mesos 集群管理器之上的微伸缩容器原型示例。他们声称,在不同负载的情况下给定模拟的需求,启动和停止「优先级1」和「优先级2」的容器要比原来的autoscaling 方法更加的快速。

能够有效的自动扩展计算机资源是一件非常有挑战的事情,尤其是各家企业都具有不同的使用需求和负载类型。举例来说,Netflix 曾经讨论过如何在使用传统的 autoscaling 方法之外另辟蹊径,Netflix 创建了一名为 Scryer 的项目,此项目利用机器学习技术来假设、预测当前和未来的需求,并预先调整计算平台底层的可用资源。Netflix 还谈到过为了更加灵活的扩展性,他们还创建一个新的平台,是基于 Mesos 的,项目名称为 Titan ,而且还创建了一个定制的 Mesos 框架- Fenzo

Force12.io 过去一段时间一直都活跃于这个领域,最近公布了一个基于 Mesos 的 autoscaling 调度器的 http://force12.io/ ">] 演示程序,他们声称此调度器具备‘microscaling’的能力,而术语 microscaling 相比于传统的 autoscaling 所提供的,则粒度更细的和更加及时的扩展。Force2.io 的调度器运行在 Apache Mesos 之上,基于 Mesosphere 的 Marathon 框架,能够基于模拟(随机)的需求启动和停止优先级 1(高优先级)和优先级 2(低优先级)的容器。此调度器的实现方法非常的类似于 John Wilkes 在 QCon 伦敦 2015 上所公开讨论的 Google 内部项目 Borg 集群管理器。

InfoQ 近日采访了 Force12.io 的首席架构师 Ross Fairbanks ,就其他们在 Mesos 调度器所作的工作和 Microscaling 的前景进行了讨论。

InfoQ:Ross,非常感谢您今天能够腾出时间接受 InfoQ 的采访,麻烦您简要的介绍下自己,以及您在 Force12.io 博客上记录的实验动力何在?

Fairbanks: 我叫 Ross Fairbanks, 是 Force12.io 的首席架构师,Force12.io 是一家致力于实时的容器伸缩的初创公司。我的部分背景是曾在零售电商行业呆过,有工作在大型流量站点的经验,这一点导致我对自动伸缩非常的感兴趣,但是在虚拟机(VM)下实现这点很困难,增加容量的前置时间往往要好几分钟。这就需要诸如迅速扩展而慢慢的缩小这类解决办法。

所以容器的快速启动和关闭的属性是最为吸引我们的。基于容器可以在秒级甚至是亚秒级的时间内增加和缩减容量。所以我们在 AWS 的 EC2 容器服务和 Apache Mesos 上构建了演示环境以展示这一概念。现在我们正在努力开源我们的解决方案,届时大家也可以将之运行在自己的基础设施环境中。

InfoQ:我们看到你使用术语 microscaling 而不是 autoscaling。这背后有何原因?

Fairbanks: 我们试图要和传统的 autoscaling 区别开来,传统的 autoscaling 添加和缩减的能力都是以分钟计算的,基于 microscaling,能够让用户更加有效的利用现有资源而且伸缩容器仅需要几秒甚至是亚秒。

Microscaling 能够很好的适应微服务架构,微服务架构是能够做到不同的流量模式有不同的服务。一个来自零售的例子就是,当市场的邮件发出去之后,搜索服务就会忙起来,但与此相反,而 fulfilment 系统只有在订单出货后才会忙起来。

我们认为这两项技术是可以在一起工作的,尤其是在公有云环境中。Microscaling 可用于快速响应高峰期的需求,通过 autoscaling 增加的额外的虚拟机的容量来实现。Netflix 早就在 AWS 上使用他们的 Titan 这么做了,而且他们还开源了他们的 Mesos 框架 Fenzo 。Force12 希望能够让更多的企业组织都达到此级别的服务器利用率。Force12 亦是平台无关的,我们打算支持所有主流的容器调度器。

InfoQ:相比于其它替代方案,什么是您选择构建在 Mesos 和 Marathon 之上的原因?

Fairbanks: 我们视 Force12 为一个容器调度器,能够和其它的调度器很好的协作,主要方向是 Microscaling。Marathon 是一个能够支持容错的高级调度器,而且拥有良好的 REST 应用程序接口,能够让我们很容易的整合它。为了能够让协作调度成为现实,我们认为需要调度的标准,而且这是我们与社区之间通力合作的事情。

InfoQ:在 Force12.io 的博客上提到您对 Mesos 集群作了特别的配置、调优,这背后的动机是什么?以及这些变更能否适用于实验之外?

Fairbanks: 我们的 Mesos 集群是运行在 EC 2 之上的 CoreOS 实现的。我们使用 Fleet 来启动 Mesos、Marathon 和 ZooKeeper,我们还使用了 Consul 来用于服务发现。我们还发布了整个步骤的代码,它可以运行在本地的 3 台 Vagrant 虚拟机环境中。我们还和 Packet.net 就此展开合作,而且我们还打算迁移我们的 Mesos 演示环境到他们的硬件服务器中,从而测试 Microscaling 在高性能硬件中的极限。

对于调优,我们首先是将 Marathon 启动任务配置为并行启动,而不是它默认的顺序启动。我们还减少了默认的分配间隔,从 1 秒降低到 100 毫秒。其它方面最大的更改是,在我们的 CoreOS 集群中运行了本地的 Docker 注册处,我们曾发现不论是在 Mesos 下还是在 ECS 中,Docker 注册处的选择和位置是一个非常关键的因素,关于此我们在博客 Mesos 演示环境中作了更加细致的描述。

InfoQ:现在许多云供应商均提供容器解决方案(ECS、GKE、Triton 等等),你认为你的研究他们会感兴趣吗?

Fairbanks: 我们认为会的,作为 microscaling 可以运行在任何的容器集群中,且是以“数据中心操作系统”(DCOS)的方法来实现的。我们认为企业会迁移到“DCOS”,他们将开始更加的关注衡量服务器的利用率,他们会增加这方面的投入,从而让 microscaling 实现成本的大幅度节省。

InfoQ:您对 microscaling 的未来是怎么看的?它多久可以能够实际的大规模的商用(我们知道亚马逊已经发布了 AWS lambda,一个概念上非常类似的产品)?

Fairbanks: 要让 microscaling 得到普遍的使用,我们认为首先容器能够在大量的企业中用于生产环境。我们相信这将在接下来的 12 到 18 个月就能够实现。其中一些企业会更快的选择容器在生产环境中的使用,通常是因为他们需要那些由微服务架构带来的好处,例如 autonomous 团队。我们希望和这些早期的采用者展开合作,能够尽快的让 microscaling 准备好在生产环境中使用。

InfoQ:非常感谢你今天抽空接受我们的采访,还有其他和我们 InfoQ 读者分享的吗?

Fairbanks: 我们很快就会发布我们的第一个开源解决方案版本,如果你在 Twitter 关注我们(我们的 Twiteter 账号是 @force12io ),你会及时的收到发布的消息。我们真心希望能够获得来自社区的反馈。

关于 Force12.io 团队正在进行的工作的更多细节,请访问其官方blog 。Apache Mesos 的网站为开发者提供了如何创建自己的Mesos 框架的文档。在Youtube 频道 MesosConf 2015 大会上可以找到 Mesos 相关主题的各种讨论(从入门介绍到高级框架构建)。 MesosCon EU 大会也将于 10 月 8 号-9 号在都伯林举行。

查看英文原文: Force12.io create a ‘Microscaling’ Framework for Apache Mesos


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015 年 10 月 09 日 19:001231
用户头像

发布了 34 篇内容, 共 10.1 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

如何使用ClickHouse实现时序数据管理和挖掘?

京东科技开发者

数据库 数据采集 数据库管理工具

全球台式机CPU市场二八分定型,英特尔仍旧占据全球最大份额

新闻科技资讯

ml-agents项目实践(一)

行者AI

模型训练

干货速递,百度BML自动超参搜索技术原理揭秘与实战攻略!

百度大脑

为PostgreSQL的表自动添加分区

PostgreSQLChina

数据库 postgresql 开源

阿里云技术专家解读:2021 年六大容器技术发展趋势

阿里巴巴云原生

云计算 阿里云 容器 云原生 k8s

OpenYurt 入门 - 在树莓派上玩转 OpenYurt

阿里巴巴云原生

阿里云 开源 容器 云原生 中间件

通过 Oracle 变量更新公司名称

Flychen

揭秘人民日报创作大脑:百度大脑智能创作平台助力打造“十八般武艺”

百度大脑

视频混剪怎么准备素材?会声会影视频消音操作步骤详解!

奈奈的杂社

视频剪辑 视频后期 混剪 视频消音

性能测试思考分析

andy

全球台式机CPU市场份额AMD超越Intel?别再混淆视听,误导消费者了!

新闻科技资讯

量化机器人管理系统开发|市值管理机器人模式系统开发

W13902449729

市值管理机器人开发 市值管理系统开发

原始时代对分布式架构的探索

李海明

中国用户规模最大教育科技独角兽作业帮再获投资机构青睐

Geek_459987

真牛!成功跳槽百度工资从15K涨到28K,附赠课程+题库

欢喜学安卓

android 程序员 面试 移动开发

实物资产卡片多数量拆分流程整理2021.01.06

Flychen

大作业2

走走,停停……

涨知识!Android面试真题解析火爆全网,搞懂这些直接来阿里入职

欢喜学安卓

android 程序员 面试 移动开发

波场链智能合约DAPP系统开发技术

薇電13242772558

智能合约 dapp

阿里巴巴2020首发136道Java高级岗面试题(含答案)

Crud的程序员

Java 程序员 程序员面试

前端异常监控 Sentry 的私有化部署和使用

智联大前端

前端 监控 异常 sentry 错误

深入讲解拉链表,还怕面试官问?

大数据老哥

大数据 数据模型 数仓项目

大作业一

走走,停停……

3轮技术面+总监面+HR面轻松砍下阿里口碑Offer!

Java架构追梦

Java 架构师 面试题总结 阿里巴巴面试 口碑Offer

简述CAP原理

andy

接口测试--获取动态参数进阶

测试人生路

接口测试

获奖公布|构建基于容器技术,承载数据类有状态工作负载的数据云平台,技术挑战有哪些?

花斯基

话题讨论 活动专区

这些面试题你会吗?为什么有人说Android开发不再吃香?最全的BAT大厂面试题整理

欢喜学安卓

android 程序员 面试 移动开发

使用Github Actions部署静态网站

玉龙BB

GitHub Pages Hugo Github Actions

有奖话题 | 2021 新年Flag,牛转乾坤!

InfoQ写作平台官方

话题讨论 活动专区

Force12.io为Apache Mesos创建“微伸缩”框架-InfoQ