SuperAPI AI 工具集

cdk-infrastructure

部署与运维

查看项目

更新于 10-15 20:07

技能介绍

用途:本技能面向使用 TypeScript 编写 AWS CDK 基础设施的场景,覆盖 CDK 构造、DynamoDB 表、ECS/Fargate 服务、Lambda 函数与 S3 存储桶等资源的创建与修改。

主要能力与架构:整个应用由单一 CDK 栈 PlatformStack 提供,位于 infrastructure/ 目录,包含 bin/infrastructure.ts 入口、lib/platform-stack.ts 主栈、config.ts 配置加载器及约 39 个可复用构造(网络、身份、数据、RAG、制品、MCP 沙箱、AgentCore、推理 API、应用 API、微调、SPA、区域等)。应用代码通过 AWS API 带外发布(ECR 推送后更新 ECS 服务,或更新 Lambda 代码与 AgentCore Runtime)。CDK 部署较少,仅用于基础设施变更;日常代码变更由 backend.yml 走 AWS API。

关键用法:使用 loadConfig、getResourceName、getStackEnv、applyStandardTags 等集中式配置工具;资源命名用 getResourceName(config, 'user-quotas')。SSM 参数采用 /{projectPrefix}/{category}/{resource-type} 分层命名,仅供 ECS 任务与 Lambda 运行时读取,同栈内跨构造引用应使用类型化 props。当构造暴露表或存储桶而后端通过 os.environ 读取时,必须把该名称接入每个运行该代码的计算环境变量,否则会因默认回退名称导致运行时 502,建议添加环境变量映射单元测试。DynamoDB 统一 PK+SK、按请求计费、启用时间点恢复。ECS/Fargate 健康检查、自动扩缩容与断路器,采用占位镜像引导后经 update-service 推送真实镜像。Lambda 使用 ARM64 与最小权限角色。S3 阻断公共访问、启用版本控制与生命周期规则。

命令:cd infrastructure; npm ci; npx cdk synth; npx cdk deploy {prefix}-PlatformStack; npx cdk diff。

限制与约束:AgentCore 名称使用下划线而非连字符;Secrets Manager ARN 需包含通配符后缀;删除策略在生产为 RETAIN、开发为 DESTROY;严禁硬编码密钥。更多配置、表、服务、Lambda、桶与 IAM 模式见 references/ 目录(资料未提供其具体内容)。