Netflix再开源Titus 每周管理数百万容器

Netflix在开源社区持续耕耘,之前才与Google共同发布开源金丝雀自动化测试工具Kayenta,而后又再度开源内部容器管理平台Titus,Netflix表示,视频串流、演播室技术、内容编码以及大数据等应用,全都需要用到Titus,每周激活容器高达300万个。

Titus提供了方便的计算资源管理模式,以容器工具支持开发人员维护应用程序,并提供笔记本到生产环境一致的开发体验。

Netflix提到,市面上有许多容器管理平台,像是Kubernetes、Mesosphere DC/OS以及Amazon ECS,也有一些网络公司使用Apache Mesos来解决容器管理的课题,而Titus正是以Apache Mesos为基础建构,并且为Netflix高扩展性需求做了优化。

Titus是Netflix为自家量身订做的容器管理平台,它深度与AWS以及Netflix基础架构集成。 Netflix提到,Titus有先进的ENI(Elastic Network Interface)和安全群组管理支持,不仅完整支持Netflix网络结构,同时也符合了现存的服务调度逻辑。而这能让Netflix把ENI以及IP当作资源处理,并确保在EC2 VPC API调用率限制下大规模部署。

通过IAM角色支持,Amazon EC2元数据代理能安全的交付EC2应用程序,而该代理还能让Titus产生不同应用的容器特殊元数据视图。

Canton, GA, USA – October 4, 2015 Netflix, hulu, and hbo subscription streaming video service accessed through a Apple tv and displayed on a hd tv. These application are paid services popular with cable cutters as an alternative to paying for cable.

Titus使用AWS的自动负载服务,来提供容器集群自动扩展的功能,他们也为负载平衡器与AWS合作设计IP目标群组(Target Groups),而这些群组完整支持IP堆栈容器以及AWS负载平衡服务。

而综合以上这些功能,Netflix让容器化应用程序,能够透明的集成内部应用程序以及AWS。

他们为了将应用程序转移到容器上,Netflix选择了一条在虚拟机以及容器间的道路,提供开发人员与现存系统相似的操作方法,他们决定使用Netflix云计算平台技术,让该平台也能识别容器。为此他们激活了开源多云持续交付平台Spinnaker,并在服务探索Eureka、遥测系统Atlas以及性能洞察技术中支持。

Netflix每天执行一千多个应用程序,大大小小种类非常多样,有些像是媒体编码工作流量非常庞大,有些是面对用户的关键服务,有一些则是内存以及GPU负担吃重的工作,像是算法训练,而还有一些是网络相关的串流处理。

过去3年,Titus从支持批次处理工作,到执行应用程序。现在Titus每天为了支撑这些服务,要激活50万个容器以及20万个集群,每周高达300万个容器,每个月交替数十万台EC2虚拟机。 Netflix提到,市面上的这些容器管理平台或许可以帮他们解决一些问题,但是无法应对这样的规模,Titus目标则是满足Netflix复杂的可扩展性需求。