分享

Kylin on Kubernetes 在 eBay 的实践

Apache Kylin 在 eBay 已经运行了 5 年多,并于 2019 年整体迁移到了 eBay 的 Kubernetes 平台 Tess 上,开启了 Kylin on Kubernetes 的时代,系统的可用性和扩展性显著提升,资源的管理与监控也更加简便。目前 Kylin on Kubernetes 已贡献至社区,欢迎多多尝试,一起优化。

01前言

Apache Kylin 是一个开源的、分布式的分析型数据仓库,提供 Hadoop/Spark 之上的 SQL 查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由 eBay 开发并贡献至开源社区。它能在亚秒内查询巨大的表。

Kubernetes 是用于自动部署,扩展和管理容器化应用程序的开源系统。它将组成应用程序的容器组合成逻辑单元,以便于管理和服务发现。Kubernetes 源自 Google 15 年生产环境的运维经验,同时凝聚了社区的最佳创意和实践。

把 Kylin 平台迁移到 Kubernetes 后,可以利用 Kubernetes 优势,让 Kylin 的部署,扩展和维护的成本变得更小。同时这个集成方案也把 Kylin 变成了一种更加原生的云服务。使得用户在云平台上,多了 Kylin 作为 OLAP 计算服务的一种选择。

Kylin 在 eBay 已经运行了 5 年以上,起初直接运行在物理服务器上。此前经历过一次扩容,当时是通过多部署几台物理服务器来实现的。但由于 Data Center 的迁移和 Tech Refresh 的需求,我们便在 2019 年年初,开始了把 Kylin 迁移到云上的计划。并于上半年把  Kylin  整体迁移到了 eBay 的 Kubernetes 平台 Tess 上,开启了 Kylin on Kubernetes 的时代。这个方案的计划和实施主要由 allenma,kyotoYaho,mingmwang,sanjulian 等负责,我们已经把这个方案贡献回社区。相关 PR 请参考:https://github.com/apache/kylin/pull/1182

02镜像

关于镜像,我们选择了 Kubernetes 推荐的 Docker:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux 或 Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何影响。

关于 Kylin 的 Docker,为了解耦我们把它分为了两个 Dockerfile: Hadoop-client 和 Kylin,Kylin 的 Dockerfile 是基于 Hadoop-client 的。考虑到构建速度的原因,我们会把相应的安装包和源文件等存放在本地目录。

1. hadoop-client
2020-05-19_222334.jpg

Kylin服务(service)如何部署?Kylin 服务器(pod)如何部署?

可下载文档:
Kylin on Kubernetes 在 eBay 的实践 .pdf (830.88 KB, 下载次数: 8)

已有(1)人评论

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条