微博DCP弹性调度的需求是快速迭代实现内网私有云计算资源统一管理调配,公有云上获得计算资源,实现快速自动化资源调度与应用部署。我们要解决的问题主要有服务池动态伸缩、单机容器灰度、多实例部署、故障自动恢复、定制的调度算法与策略、容量评估、跨IDC调度等。
如上图所示,不可避免的问题是,业界任一调度框架Mesos、kubernetes、Swarm都不能是解决微博业务现状面临的资源调度问题的“银弹”。所以我们设计了一个调度适配层生态圈系统Roam。封装调度框架提供通用Rest API,适配不同资源管理框架。同时自实现特定的调度伸缩策略等。本文将主要介绍新浪微博混合云架构上的可扩展、可插拔式统一弹性调度平台的建设。