在最近的Strange Loop大会上,Netflix 工程经理、OpenConnect 工具团队负责人 Robert Fernandes 就 Netflix 内部的 OpenConnect 内容交付网络运营事宜发表了演讲。
这个演讲对 Netflix 转向使用内部 CDN Open Connect 以及这次转变给运营团队带来的挑战进行了总结。Open Connect 团队负责处理与向订阅者交付内容相关的事宜,包括技术运营、库存管理和合作伙伴管理。他们强烈感觉到需要自动化这些活动,但不同的团队各自构建了独立的应用程序,这给部署带来了新的挑战。Fernandes 谈到了他们计划如何应对这些挑战。
Netflix 的大多数服务都运行在 AWS 上。Netflix 在 2007 年开始提供流媒体服务,到 2009 年已经建立了一个叫作 Netflix Content Control Plane (NCCP)的内部控制中心。NCCP 将最终用户引导到正确的边缘(CDN 位置),而实际的内容交付是由第三方提供商完成的,如 Akamai、Level 3 Communications 和 Limelight Networks。该团队于 2011 年迁移到内部 CDN,并将其称为 Open Connect,随之而来的是基础设施管理工作。
Netflix 应用程序客户端(移动、桌面等)在请求视频时通常会接收到 3 个域名。OpenConnect 向应用程序提供内容和静态资源,比如 JavaScript。CDN 由定制服务器 Open Connect Appliance (OCA)组成,它们都是缓存服务器。它们运行在装有 nginx 的 FreeBSD 版本上。总共有两种缓存服务器,一种是相对较慢的 HDD,用于批量存储目录,一种是基于闪存的服务器,配备了固态硬盘,具备相对较高的吞吐量,主要用于服务热点内容。Netflix 的内容服务器使用了 10000 多个设备,部署在全球 1000 多个站点中。一些站点由 ISP 负责管理服务器,一些站点则由 Netflix 直接控制和管理硬件。
Open Connect 团队的职能被分为开发、运营、网络管理和非技术职能(如合作伙伴管理和交付)。各个团队都从解决自己领域的问题开始,最后得到的是单体应用,Open Connect Tools 团队就是为了缓解这种局面而成立的。它负责警报、监控、配置管理、部署自动化、库存管理、日志和指标,以及合作伙伴自助服务。负责控制平面的团队更关注 CDN 的内容布局、地理布局、路由和安全性。演讲并没有深入探讨应用程序或自动化技术细节。他们未来的计划是使用进一步“分层方法”处理微服务,并提出可以在团队之间共享的公共解决方案。
原文链接:
Managing Global CDN Operations at Netflix
评论