11月24日-26日,由ACM SIGOPS ChinaSys主办的第十三届ChinaSys会议在清华三亚国际数学论坛举行。在24日上午的报告环节,阿里巴巴集团系统软件事业部资深技术专家侯前明(花名林轩)从阿里内部Pouch应用现状、阿里容器的技术演进和实践,以及未来Pouch容器技术的开源路线和未来规划三个方面做了精彩分享。
ChinaSys是计算机系统及相关领域的研究者、学术团体和工程师组成的一个社区,宗旨是为本领域的研究者和从业者提供资源共享、思想交换的一个非正式交流论坛,并促进与工业界的交流。自第一届ChinaSys于2011年在深圳举办以来,迄今已举办12届,众多国内外著名学者都参加过ChinaSys并做报告,例如中科院计算所徐志伟研究员、华中科技大学金海教授、ACM SIGOPS主席Robbert von Rennesse和加州大学圣芭芭拉分校谢源教授等。
作为众多计算技术及应用的根基,计算机系统研究偏向于实践,强调解决问题的整体能力。此次为期3天的会议吸引了来自清华大学、上海交大和中科院计算所等学术界的系统研究者,以及阿里巴巴、腾讯和海南农商行等工业界的系统研发人员和用户,大家就容器、云计算、大数据、安全和网络等计算机系统研究热点领域展开讨论和交流。
林轩在ChinaSys2017会议报告现场
作为阿里集团云化战略的重要技术支撑,阿里容器技术Pouch已在集团基础设施中扮演极其重要的角色。目前已覆盖集团内部包括电商、搜索和广告等在内的绝大部分在线业务场景,和电商应用、数据库、大数据和流计算等重要技术栈。
阿里容器的技术演进和实践始于2011年,当时,Linux内核之上的namespace、cgroup等技术开始成熟,阿里即基于LXC研发了容器技术T4,并以产品形态对内提供服务。此举被视为阿里对容器技术的第一次探索,也为阿里的容器技术积淀了最初的经验;两年后Docker横空出世,其镜像技术解决了困扰行业多年的“软件封装”问题。从2015年起,T4在自身容器技术的基础上,逐渐吸收社区中的Docker镜像技术,并沉淀出自有容器技术品牌Pouch,随着技术的不断打磨,Pouch已成为一款轻量级的容器技术,拥有快速高效、兼容性高,资源占用少,稳定性高等特性,帮助阿里内部业务更快交付,同时提高超大规模数据中心的物理资源利用率。
但目前容器生态领域的一些特点导致技术落地成为问题:容器引擎虽已成熟,但对企业传统应用的侵入性高;有一些容器技术做到轻便的同时,损失了部分的安全性与隔离性;在超大规模场景下,容器镜像的分发往往会导致网络性能问题等。这些问题都导致企业走向云化,拥抱Cloud Native方面存在现实阻力,阿里巴巴期望将自己在内部纷繁复杂的业务云化过程中积累的经验和能力,通过Pouch容器技术分享给众多行业用户。
除了共同制定行业标准,协助容器技术落地外,将Pouch容器技术源码开源也是一个重要手段。就在11月18日的中国开源年会上,阿里已正式宣布基于 Apache 2.0 协议开放Pouch源码,并预计通过5个月的社区打磨,于 2018 年3月底发布第一个大版本。目前Pouch 的代码也已经在 GitHub 公开,可以点击 https://github.com/alibaba/pouch查看详情。
此外,阿里基础技术研究和学界合作也走在了前列,在今年的云栖大会上,阿里Pouch技术团队即宣布浙江大学SEL实验室已成为第一个合作伙伴。通过和浙大的联手,阿里技术团队和来自学界的研究人员将在Pouch项目中对Kubernetes支持和增强容器运行时等领域展开密切合作。
从2017年3月宣布NASA计划,到7月推出首个全球性科研合作项目“AIR”计划,再到10月阿里达摩院(DAMO)的宣告成立,阿里巴巴希望以此搭建学术界和工业界的合作平台,联合双方优势共同促进前沿技术的发展,推进计算机科学领域基础性、前瞻性、突破性的研究,构建全新的阿里巴巴基础设施技术生态,解决社会经济发展中的“新技术”难题,驱动未来发展。