编者按:《百度云说》是刊登百度云管理层及产品、技术专家系列观点文章的专栏。在这些文章中,将逐步揭秘百度云对行业、市场、生态、技术、产品和解决方案的实践与思考。我们希望通过这样的方式,让您更加了解百度云,同时促进行业交流,更好地服务用户。

本期《百度云说》邀请到的嘉宾是百度云主任架构师、百度云技术委员会主席吕毅。现负责百度云整体的技术把握,曾作为创始人,构建和应用百度集群操作系统Matrix。Matrix是国内领先的成功构建、并大规模应用的基于轻量虚拟化技术支持的超大规模资源调度和管理的集群操作系统,是百度云架构、百度业务平台的基石。访谈全文如下。

Q:百度Matrix集群操作系统是在什么背景下诞生的?

吕毅:云计算相比于传统IT最大的优势就是在成本和效率层面实现了质的飞跃。Matrix正是百度自身在追求成本和效率更加高效的大背景下诞生的,是内部孵化且在业界具有领先地位的云计算产品。百度是在2010年开始对内部云的虚拟化技术进行尝试,2012年正式开始立项做Matrix集群操作系统,以此来解决数据中心资源利用率不均衡、故障处理效率低以及配置管理复杂等挑战。目前,Matrix已经全面覆盖百度内部业务,并成为百度云的关键组件。

Q:百度Matrix从立项到现在经历了哪几个发展阶段?

吕毅:2012年-2015年是Matrix发展的第一阶段,这期间百度数据中心效率提升明显,资源利用率得到大幅提升,获得了很好的收益。

2015年-2017年是Matrix发展的第二阶段。由于大数据的大量生成以及AI的快速发展,大数据处理和模型训练增长迅猛,从而对资源的需求大幅增加。为了结合业务发展需要和成本控制,从2015年开始启动大规模的混合部署,对资源管理、调度以及对上层业务的支持提出了更高的要求。Matrix在这个阶段很好地满足了业务需求,并得以实现大规模混布。目前,Matrix支撑了所有内部业务的交付,混合部署也成为百度默认的资源交付方式。同时,从业务角度看,混合资源和非混合资源的影响感知非常小,极大地节省了成本。

Q:百度Matrix最为核心的功能有哪些?

吕毅:Matrix架构是可以与Google Borg/Omega架构来对标的,通过分层调度器来满足业务多样性调度需求,通过共享状态的方式达到资源的最大化利用。据悉,目前Matrix管理着国内最大的容器集群系统。

此外,Matrix还具备完善的调度生态,提供面向批量作业和服务的不同调度系统,能够满足业务高效吞吐和低延迟稳定性的需求。在此基础上,在百度内部提供了完整的服务托管体系,面向业务提供多样的服务管理功能,结合研发和测试过程的优化,极大的提升业务的研发效率。

简单来讲,对客户来说,只需要提供物理机,初始安装Matrix集群操作系统后,剩下的就是通过Matrix实现对上层应用服务的发布、部署、资源管理,以及整体资源优化。

Q:从功能的角度,Matrix未来会朝着什么方向演进?

吕毅:从开源来看,DockerImage已经成为容器部署的标准。因此,在容器角度上,Matrix在内核基础上继续定制优化容器技术,并继续完善配套的管理机制。

从技术栈来看,最底层是虚拟机和物理机,Matrix会优化管理整个集群的物理资源,包括物理资源的故障恢复以及分区域管理;往上是包括容器的编排和调度如何更加高效;最上层是服务管理层,涉及到服务的分级发布、服务管理等,如何更通用和易用,以及如何更好的优化CI/CD,持续提升业务的迭代效率。

最后,单独提到容器技术,如何持续提高容器的安全性(隔离),实现真正多租户的混合部署,逐步和虚机技术实现更好的融合。Matrix将继续借鉴和回馈K8s/Docker社区,并结合百度自身对容器技术改进和理解,进一步完善自身功能,持续对内部和外部客户输出。

Q:Matrix在当前阶段的发展目标是什么?

吕毅:Matrix当前阶段的目标优化内部,同时对外赋能,百度公有云以及基于Matrix对外提供各种云服务,而一些企业级客户其实在内部的私有云同样有着类似的需求。尤其是现在越来越多企业都有着大数据处理以及提升企业AI能力的需求,这其实和百度早期非常接近,希望能够利用我们在集群操作系统的经验,包括服务管理、容器技术以及其他开源技术的实现,结合百度云的大数据和AI能力,整体打包做成客户解决方案,满足企业客户的发展需求。

Q:Matrix这种非常强大的集群管理系统比较适合什么类型的客户?

吕毅:服务器数量只要达到上百台的企业级客户就可以采用Matrix。业务规模较小时,其实资源管理和调度相对较为简单;当业务规模较大时,不引入容器技术就会导致上层管理系统的设计和实现复杂度增大,尤其是在混合部署下差异更高。引入容器技术,随着规模增长,客户就会感受到容器本身效率会对业务产生的影响,这就需要集群操作系统来管理复杂的环境,规范和优化业务。

Q:企业级客户如果想采用Matrix的话,切入点会在哪里?

吕毅:从我们现阶段接触的客户需求来看,我们会首先辅助企业内部构建一套基于容器技术的系统,来优化企业内部原有的业务。现在很多企业对于大数据和AI的诉求是非常强劲的,这对于Cloud的能力提出了更高的要求,因此百度首先会在Cloud部分提出相应的解决方案,满足企业内部应用容器技术上迁移。

其次,百度可以为企业提供大数据和AI的定制化解决方案,最后整体面向企业进行ABC的交付,很好地满足企业的大数据和AI业务需求。

Q:Matrix对外赋能是否随着业务和客户的发展而变化?

吕毅:企业级市场的核心就是以客户业务需求为导向,Matrix也一致秉持这个发展理念。Matrix会沿着通用化的发展路线对外输出,保持基础核心功能层不变,在深度分析客户需求之后结合百度的经验,抽象出相对通用化的系统和解决方案,再结合客户的业务需求进行定制。此外,百度会继续在内部坚持技术创新,包括加大对Kubernetes、Docker等社区的贡献,持续优化Matrix的核心功能。

Q:目前采用Matrix产品的经典客户案例是?

吕毅:我们对外不单独交付Matrix,Matrix是作为百度对外交付解决方案的一部分。目前国内已经有很多客户在百度交付的解决方案中用到了Matrix技术。比如,百信银行,作为国内第一家互联网银行,是一家建立在云上面的银行,并且集ABC能力于大成的新时代银行,百信银行采用了来自百度的云架构技术,在分布式集群架构上构建起了银行的核心业务系统,非常具有前瞻性和领先性。

文章授权转载自百度云 ')}