AWS Data on EKS 提供数据工作负载蓝图

AWS 发布 Data on EKS (DoEKS) 开源项目

AWS 发布了名为 Data on EKS (DoEKS) 的开源项目,旨在为在 Amazon Elastic Kubernetes Service (EKS) 上部署数据工作负载提供模板、指导文档和最佳实践。虽然其主要关注点是在 Amazon EKS 上运行 Apache Spark,但也提供了其他数据工作负载的蓝图,如 RayApache AirflowArgo WorkflowsKubeflow

DoEKS 的核心内容

DoEKS 基于 Amazon EKS Blueprints 项目,提供了以下内容:

  • 基础设施即代码 (IaC) 模板:支持 Terraform 和 AWS CDK。
  • 示例作业:帮助用户快速上手。
  • AWS 资源参考:提供与 AWS 服务的集成建议。
  • 性能基准报告:帮助用户优化工作负载。

解决方案分类

DoEKS 的解决方案分为五大类:

  1. 数据分析
  2. 人工智能/机器学习 (AI/ML)
  3. 分布式数据库
  4. 流处理平台
  5. 调度工作流模式

功能与集成

DoEKS 提供了以下功能与集成:

  • 可观测性和日志配置:帮助用户监控和调试工作负载。
  • 多租户处理:支持在共享环境中运行多个工作负载。
  • 集群自动扩展器选择:优化资源利用。
  • 开源工具和 Kubernetes 操作符:与 AWS 托管服务集成,提供更全面的解决方案。

特定模式:EMR on EKS with Karpenter

DoEKS 提供了一个特定模式,用于部署 EMR on EKS with Karpenter。该模式包括以下步骤:

  1. 创建 EKS 集群控制平面和一个托管节点组。
  2. 节点组跨多个可用区,处理系统关键 Pod(如 Cluster Autoscaler、CoreDNS、可观测性和日志)。
  3. 启用 EMR on EKS,并提供一些默认配置。

用户可以通过提供的 Terraform 模板快速部署该模式:

git clone https://github.com/awslabs/data-on-eks.git
cd data-on-eks/analytics/terraform/emr-eks-karpenter
terraform init
export AWS_REGION="us-west-2"
terraform plan
terraform apply

Argo Workflows 模式

DoEKS 还提供了 Argo Workflows on EKS 的模式,帮助用户在 Amazon EKS 上使用 Argo Workflows 编排并行作业。该模式包括通过 Spark 操作符和 Amazon SQS 消息创建 Spark 作业的步骤。

流处理平台和分布式数据库蓝图

DoEKS 正在开发流处理平台和分布式数据库的蓝图:

  • 流处理平台:将涵盖 Apache KafkaApache FlinkApache Pulsar
  • 分布式数据库:将包括 Apache CassandraAmazon DynamoDBApache Presto

PostgreSQL 工作负载管理

DoEKS 提供了使用 CloudNativePG 在 Kubernetes 上管理 PostgreSQL 工作负载的详细指南,包括存储选择、监控设置以及备份和恢复处理。推荐使用 Amazon Elastic Block Store (EBS) 卷,特别是 io2/io1gp3/gp2 类型。相关示例以 YAML 文件形式提供,用户可以通过 kubectl 命令快速部署。

项目状态与维护

DoEKS 项目基于 Apache 2.0 许可证开源,并非 AWS 官方支持的服务,而是由 AWS 解决方案架构师和 DoEKS Blueprints 社区维护。

阅读 23
0 条评论