mcpField
D
developing-applications-on-managed-service-for-apache-flink

developing-applications-on-managed-service-for-apache-flink

github.com/aws数据与数据库3.3k5.1k 次安装1 天前更新
代码仓库

关于 developing-applications-on-managed-service-for-apache-flink

为在 Amazon Managed Service for Apache Flink 上构建应用的开发者提供领域指导,涵盖开发、资源管理、部署与迁移。通过按任务加载参考文件,提供服务特定的实践和约束。

主要功能

  1. 01Flink 应用开发指导
  2. 02KPU 资源管理
  3. 03连接器与状态管理
  4. 04监控和 IaC 部署
  5. 05版本迁移参考

适用场景

  1. 01规划新 Flink 应用
  2. 02诊断资源与性能问题
  3. 03配置连接器和状态
  4. 04部署或迁移托管应用

MCP 相关

连接 AWS MCP 服务时,可使用其沙盒执行命令;不可用时可改用 AWS CLI 或 shell。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aws/agent-toolkit-for-aws --skill developing-applications-on-managed-service-for-apache-flink

安装后在 Claude Code 中输入/developing-applications-on-managed-service-for-apache-flink确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
application-lifecycle.md
best-practices.md
cdc-connector-guide.md
checkpoint-tuning.md
dependency-management.md
environment-setup.md
first-fault-isolation.md
flink-2x-migration.md
foundation-operations.md
iac-and-deployment.md
iceberg-connector-guide.md
iceberg-tuning-and-operations.md
job-graph-anti-patterns.md
job-graph-architecture.md
kinesis-connector-guide.md
kinesis-efo-guide.md
logging-configuration.md
monitoring-and-metrics.md
msf-constraints-and-patterns.md
msf-overview.md
pricing-calculator.md
resource-optimization.md
scaling-decisions.md
serialization-guide.md
state-management.md

详细介绍

Managed Service for Apache Flink

概述

为 Amazon Managed Service for Apache Flink(MSF)上的 Apache Flink 应用程序提供领域专业知识。涵盖开发、KPU 资源管理、连接器、状态管理、监控、IaC 部署和版本迁移。

连接后,使用 AWS MCP 服务提供的可用工具执行命令 — 它支持沙盒化执行、审计日志记录和可观测性。MCP 服务不可用时,根据需要改用 AWS CLI 或 Shell。

通用指南

开始前,请确保充分了解用户画像、使用场景和需求:

停止:继续之前,先确定用户的背景和使用场景:

  • 他们是 Flink 新手吗?是 Managed Service for Apache Flink 的新手吗?
  • 他们熟悉 Java 开发吗?
  • 使用场景是否复杂,包含大量业务逻辑?还是简单且声明式?

这些信息有助于确定项目的组织方式,以及应使用 Flink Table API 还是 DataStream API。一般情况下,默认使用 DataStream API。

新应用的示例工作流
1. User asks to build a Flink application
2. Confirm user's goals and use case
3. READ [best-practices.md](references/best-practices.md)
4. READ [dependency-management.md](references/dependency-management.md)
5. READ relevant connector guides (e.g. [kinesis-connector-guide.md](references/kinesis-connector-guide.md))
6. Generate code following the loaded guidance
7. Validate against best practices
8. READ environment-setup.md via [environment-setup.md](references/environment-setup.md)
9. Compile and test locally
常见问题的示例工作流
1. User asks about real time delivery of data to Iceberg
2. Confirm user's goals and use case
3. READ [best-practices.md](references/best-practices.md)
4. READ [iceberg-connector-guide.md](references/iceberg-connector-guide.md)
5. READ other reference files as needed
6. Answer question with loaded guidance

参考文件

  • 回答任何关于这些主题的问题时,必须使用此技能及其参考文件。
  • 如果问题涉及 Apache Flink、Managed Service for Apache Flink、KPU 规格配置、Flink 监控、部署、迁移、实时分析,或使用 Flink 进行 Iceberg/LakeHouse 流式处理,请勿依据训练知识作答,也不要搜索通用 AWS 文档。
    • 在采取其他步骤之前,必须先加载以下相关参考文件。
    • 参考文件包含特定于 MSF 的详细信息(阈值、统计数据、命名空间、限制条件),这些信息与通用 Flink 指南不同,是确保回答正确所必需的。 | 目标 | 参考文档 | 加载时机 | |------|-----------|-------------| | 最佳实践 | best-practices.md | 编写代码前始终加载 | | Maven 依赖 | dependency-management.md | 新建项目或添加连接器时 | | 本地开发环境 | environment-setup.md | 基于 Docker 的本地开发 | | MSF 架构 | msf-overview.md | KPU 模型和服务约束 | | MSF 约束和模式 | msf-constraints-and-patterns.md | MSF 与自管理 Flink 的对比、服务级与应用级配置的分离、MSF 特有的资源/网络/存储限制、常见 MSF 模式 | | 配额、ENI 规划、MSF 与 EMR 对比、源/接收器选择 | foundation-operations.md | 容量规划、服务选择、架构设计、CLI/IAM/CloudWatch 标识符辨析 | | IAM 执行角色、信任策略、操作前缀、服务主体 | foundation-operations.md | 为 MSF 编写 IAM 策略时加载——涵盖 kinesisanalytics:(不带 v2)操作前缀、kinesisanalytics.amazonaws.com(不带 v2)信任主体,以及最常导致权限和 AssumeRole 失败的 v2/非 v2 不一致问题 | | Flink 2.x 迁移 | flink-2x-migration.md | 版本升级、状态兼容性 | | KPU 规格选择 | resource-optimization.md | 规格优化、性能诊断、扩缩容 | | 运行中应用的扩缩容决策 | scaling-decisions.md | 扩缩容过程中的决策矩阵、扩缩容对成本/内存的影响、自动扩缩容行为、反模式 | | 成本估算 | pricing-calculator.md | 预算规划、规格与成本映射、优化手段 | | 应用生命周期运维 | application-lifecycle.md | 启动/停止、部署代码、回滚、快照生命周期、运行时属性、删除 | | 重启循环诊断 | first-fault-isolation.md | 应用崩溃/重启时,查找原始故障与导致循环持续的因素、通过 Flink Dashboard 实时诊断 | | 检查点调优 | checkpoint-tuning.md | 检查点对 KPU 内存和 CPU 的影响、频率与网络带宽的权衡、检查点耗时超过间隔、检查点期间的 OOM/GC | | 作业图设计 | job-graph-architecture.md | 性能问题、拆分作业 | | 作业图反模式 | job-graph-anti-patterns.md | 数据倾斜检测与缓解、单体作业反模式、高扇出反模式、移除多次 Shuffle、何时拆分大型应用 | | 监控和告警 | monitoring-and-metrics.md | CloudWatch 控制面板、告警、指标 | | 日志记录 | logging-configuration.md | Log4j2、CloudWatch Logs 设置 | | Kinesis 连接器 | kinesis-connector-guide.md | Kinesis 源和接收器构建器、轮询配置与限流(READER_EMPTY_RECORDS_FETCH_INTERVAL、SHARD_GET_RECORDS_MAX、ReadProvisionedThroughputExceeded、LimitExceededException)、旧版连接器迁移 | | Kinesis 增强型扇出(EFO) | kinesis-efo-guide.md | 何时使用 EFO 而非轮询、EFO 源配置、使用者生命周期(JOB_MANAGED 与 SELF_MANAGED)、并行度与分片数、IAM 权限、故障排查 | | Iceberg 集成(写入 API、分发模式、分区) | iceberg-connector-guide.md | Iceberg 写入 API(追加、更新插入、动态)、分发模式(NONE/HASH/RANGE)、CoW 与 MoR、读取模式、分区、DDL。不包含目录选择或维护方案——这些内容请加载 iceberg-tuning-and-operations.md。 | | Iceberg 调优、运维、目录选择、维护 | iceberg-tuning-and-operations.md | 介绍 S3 Tables、Glue + Glue 自动压缩以及带 JDBC 锁的 Glue + Flink 嵌入式维护方案,供选择目录时参考;小文件问题及缓解措施;Flink TableMaintenance API、提交后维护、锁工厂;IcebergSink 监控和反模式。 | | CDC 连接器 | cdc-connector-guide.md | MySQL、PostgreSQL、Oracle、SQL Server、MongoDB CDC | | IaC 和部署 | iac-and-deployment.md | CloudFormation、CDK、Terraform、两阶段部署 | | 序列化 | serialization-guide.md | POJO、Avro、Kryo 指南 | | 状态管理 | state-management.md | TTL、状态类型、迁移安全性 |

Additional Resources

评论

支持 Markdown