当前在Hadoop技术的发展中,如何把Docker技术应用于Hadoop平台的建立,尤其是对于Hadoop on Docker规模部署问题的解决,一直是一个备受关注的技术难点。因此,本次的中国Hadoop技术峰会中,首次实现一键规模部署的Hadoop on Docker及其DEMO演示,也成为了大会中的一大热点话题。
下午两点,星环首席工程师吕侣在Hadoop系统架构分论坛发表了题为《Hadoop on Docker-from development to production》的演讲,展示了星环科技自主研发的产品Transwarp operating system(TOS)在Hadoop on Docker领域做出的优化与突破。
在过去,Hadoop on Docker大数据平台的部署,只在单机情况下实现过,而且过程繁琐,耗时很长。虽然类似Pivotal方案也实现过一键部署,但是单机的小规模部署对于Hadoop这样的大数据平台并不具有实际意义。(如下图所示)此前,具有真正应用意义的多机部署也从未真正实现过。那么,如何借助Docker作为优化手段,在大规模多机器的情况下进行一键部署,是目前Hadoop系统架构方面最受关注的技术热点之一。
过去,几百台规模集群的Hadoop on Docker的部署,从未有人实现过,这也是Hadoop on Docker难以落地应用的主要原因之一。而一键规模化部署则更是绕过了Hadoop on Docker在市场的适应期,降低了安装和使用的成本,使企业用户可以更早更快地使用该技术,是在Hadoop技术发展和推广中举足轻重的一个技术突破。
在实现规模化部署的前提之下,吕侣首先将Hadoop on Docker的研发目标定位于简化部署、支持大数据应用与普通应用以及减少性能损耗等几方面,在明确了研发方向以后指出了过去一些方案的弱点在于单机化。随即他展示了星环科技产品TOS的最新演示,可以看到TOS在支持大规模部署的前提下实现了“一键部署”流程,平均部署时间只要七分半。同时,吕侣也提出了TOS替代YARN的必要性在于裸机部署和资源隔离问题两方面。(下图为TDH一键部署界面)
Hadoop on Docker一键部署DEMO详见(http://v.qq.com/page/v/x/p/v0160jnmnxp.html)
这是国内首次完成基于Docker实现的Hadoop平台大规模一键部署,也是第一次完成能够应用于落地方案的、具有实际意义的部署简化。在此之上,大规模部署的时间也在TOS的支持下达到了八分钟以内,可以说是简洁与高效并存的优化与技术突破。Transwarp Operation System (TOS)统一调度系统容器和用户容器,分配所有节点包括CPU/内存/磁盘在内的各种资源。应用可以通过指定TOS调度策略来影响最终的调度结果。
所有TDH组件都单独通过自动化CI生成,内部的二进制代码和环境变量在运行时不可改。镜像附带默认配置,也可以通过环境变量或者挂载配置卷定制。
镜像数据分离。将数据保持在数据卷中,当需要更新镜像时,可以直接杀掉老容器,将数据卷挂载在新容器中恢复服务。
统一提供集群级别的DNS、日志收集和监控模块,并保障这些模块的HA。
调度计算节点时获取相关数据的位置,尽量利用本地资源。容器和容器知晓相对的位置关系(如在同一主机上),以便利用本地读写特性。
和之前的两种部署方式相比,星环的部署通过引入TOS,将资源虚拟化、平台化,不但解决了Hadoop本身的部署,并且还可以在同一个集群中,同时部署其他非Hadoop的应用,比如MySQL和Redis。并且在维护和升级过程中,可以通过简单替换镜像来完成,并且通过引入灰度升级,可以将线上系统的更换风险降到最低。
可以看到,TOS支持私有集群与公有云,实现一键部署统一流程,在对Docker的支持上进一步完善,减小性能损耗。是笔者在现有IT市场所看到的最完善的Hadoop on Docker解决方案。