从Hadoop到Kubernetes:Pinterest在AWS EKS上的可扩展Spark架构

从Hadoop到Kubernetes:Pinterest在AWS EKS上的可扩展Spark架构

💡 原文英文,约600词,阅读约需2分钟。
📝

内容提要

Pinterest将Hadoop数据平台替换为基于Kubernetes的Moka系统,运行Spark于AWS EKS。Moka支持容器化作业隔离和ARM实例,提升调度效率并降低基础设施成本。Pinterest还开发了新服务,使用Apache YuniKorn进行调度,迁移存储至S3,并整合Apache Celeborn以维持性能。Moka通过资源管理和动态优先级调度优化数据处理工作负载。

🎯

关键要点

  • Pinterest将Hadoop数据平台替换为基于Kubernetes的Moka系统,运行Spark于AWS EKS。
  • Moka支持容器化作业隔离,支持ARM实例,提升调度效率并降低基础设施成本。
  • Pinterest选择Kubernetes以支持容器编排和安全性,适应现代基础设施实践。
  • Moka通过容器化隔离整合不同安全需求的工作负载,减少多个集群的需求。
  • Pinterest开发了新服务,如Archer用于作业提交,采用Apache YuniKorn进行调度,迁移存储至S3。
  • Moka的初始设计中,Spinner将调度工作流分解为单个作业提交,并发送至Archer。
  • Pinterest使用Spark Operator在Kubernetes上原生执行Spark,并利用Apache YuniKorn进行批量调度。
  • YuniKorn提供基于队列的调度、应用配额和抢占,动态优先级调度优化资源管理。
  • Archer跟踪作业状态,系统将日志上传至S3,用户可通过Moka UI访问作业界面和历史日志。

延伸问答

Pinterest为什么要从Hadoop平台迁移到Moka系统?

Pinterest迁移到Moka系统是为了更好地适应现代基础设施实践,提升调度效率,降低基础设施成本,并支持容器化作业隔离。

Moka系统如何提高调度效率?

Moka系统通过使用Apache YuniKorn进行调度,支持容器化作业隔离,优化资源管理,从而提高调度效率。

Pinterest在Moka中使用了哪些新服务?

Pinterest在Moka中开发了Archer用于作业提交,并采用Apache YuniKorn进行调度,同时将存储迁移至S3。

Moka系统如何处理不同安全需求的工作负载?

Moka通过容器化隔离整合不同安全需求的工作负载,减少了对多个集群的需求。

Moka系统的初始设计是怎样的?

Moka的初始设计中,Spinner将调度工作流分解为单个作业提交,并通过Archer提交至Spark启用的EKS集群。

YuniKorn在Moka中扮演什么角色?

YuniKorn在Moka中提供基于队列的调度、应用配额和抢占,动态优先级调度优化资源管理。

➡️

继续阅读