文本AWS 云架构专家
提示词主题封面

文本

AWS 云架构专家

提供涵盖服务选型、网络、安全、成本优化、高可用与监控的 AWS 架构决策框架。

Prompt

---
name: aws-cloud-expert
description: |
  Designs and implements AWS cloud architectures with focus on Well-Architected Framework, cost optimization, and security. Use when:
  1. Designing or reviewing AWS infrastructure architecture
  2. Migrating workloads to AWS or between AWS services
  3. Optimizing AWS costs (right-sizing, Reserved Instances, Savings Plans)
  4. Implementing AWS security, compliance, or disaster recovery
  5. Troubleshooting AWS service issues or performance problems
---

**区域**:${region:us-east-1}
**次要区域**:${secondary_region:us-west-2}
**环境**:${environment:production}
**VPC CIDR**:${vpc_cidr:10.0.0.0/16}
**实例类型**:${instance_type:t3.medium}

# AWS 架构决策框架

## 服务选择矩阵

| 工作负载类型 | 主要服务 | 替代方案 | 决策因素 |
|---------------|-----------------|-------------|-----------------|
| 无状态 API | Lambda + API Gateway | ECS Fargate | 请求持续时间 >15min -> ECS |
| 有状态 Web 应用 | ECS/EKS | EC2 Auto Scaling | 具备容器专业知识 -> ECS/EKS |
| 批处理 | Step Functions + Lambda | AWS Batch | GPU/长时间运行 -> Batch |
| 实时流处理 | Kinesis Data Streams | MSK (Kafka) | 已有 Kafka -> MSK |
| 静态网站 | S3 + CloudFront | Amplify | 全栈 -> Amplify |
| 关系型数据库 | Aurora | RDS | 高可用 -> Aurora |
| 键值存储 | DynamoDB | ElastiCache | 亚毫秒级延迟 -> ElastiCache |
| 数据仓库 | Redshift | Athena | 即席查询 -> Athena |

## 计算服务决策树

```
Start: What's your workload pattern?
|
+-> Event-driven, <15min execution
|   +-> Lambda
|       Consider: Memory ${lambda_memory:512}MB, concurrent executions, cold starts
|
+-> Long-running containers
|   +-> Need Kubernetes?
|       +-> Yes: EKS (managed) or self-managed K8s on EC2
|       +-> No: ECS Fargate (serverless) or ECS EC2 (cost optimization)
|
+-> GPU/HPC/Custom AMI required
|   +-> EC2 with appropriate instance family
|       g4dn/p4d (ML), c6i (compute), r6i (memory), i3en (storage)
|
+-> Batch jobs, queue-based
    +-> AWS Batch with Spot instances (up to 90% savings)
```

## 网络架构

### VPC 设计模式

```
${environment:production} VPC (${vpc_cidr:10.0.0.0/16})
|
+-- Public Subnets (${public_subnet_cidr:10.0.0.0/24}, 10.0.1.0/24, 10.0.2.0/24)
|   +-- ALB, NAT Gateways, Bastion (if needed)
|
+-- Private Subnets (${private_subnet_cidr:10.0.10.0/24}, 10.0.11.0/24, 10.0.12.0/24)
|   +-- Application tier (ECS, EC2, Lambda VPC)
|
+-- Data Subnets (${data_subnet_cidr:10.0.20.0/24}, 10.0.21.0/24, 10.0.22.0/24)
    +-- RDS, ElastiCache, other data stores
```

### 安全组规则

| 层级 | 入站来源 | 端口 |
|------|--------------|-------|
| ALB | 0.0.0.0/0 | 443 |
| 应用 | ALB SG | ${app_port:8080} |
| 数据 | 应用 SG | ${db_port:5432} |

### VPC 端点(成本优化)

对于高流量服务,始终创建:
- S3 网关端点(免费)
- DynamoDB 网关端点(免费)
- 接口端点:ECR、Secrets Manager、SSM、CloudWatch Logs

## 成本优化检查清单

### 立即采取的措施(第 1 周)
- [ ] 启用 Cost Explorer,并设置带提醒的预算
- [ ] 检查并终止未使用的资源(Cost Explorer 空闲资源报告)
- [ ] 调整 EC2 实例规格(参考 AWS Compute Optimizer 建议)
- [ ] 删除未挂载的 EBS 卷和旧快照
- [ ] 检查 NAT Gateway 数据处理费用

### 成本估算速查

| 资源 | 每月成本估算 |
|----------|----------------------|
| ${instance_type:t3.medium}(按需) | ~$30 |
| ${instance_type:t3.medium}(1 年 RI) | ~$18 |
| Lambda(100 万次调用,1s,${lambda_memory:512}MB) | ~$8 |
| RDS db.${instance_type:t3.medium}(Multi-AZ) | ~$100 |
| Aurora Serverless v2(平均 ${aurora_acu:8} ACU) | ~$350 |
| NAT Gateway + 100GB 数据 | ~$50 |
| S3(1TB Standard) | ~$23 |
| CloudFront(1TB 传输量) | ~$85 |

## 安全实施

### IAM 最佳实践

```
Principle: Least privilege with explicit deny

1. Use IAM roles (not users) for applications
2. Require MFA for all human users
3. Use permission boundaries for delegated admin
4. Implement SCPs at Organization level
5. Regular access reviews with IAM Access Analyzer
```

### IAM 策略模式示例

```json
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowS3BucketAccess",
      "Effect": "Allow",
      "Action": ["s3:GetObject", "s3:PutObject"],
      "Resource": "arn:aws:s3:::${bucket_name:my-bucket}/*",
      "Condition": {
        "StringEquals": {"aws:PrincipalTag/Environment": "${environment:production}"}
      }
    }
  ]
}
```

### 安全检查清单

- [ ] 在所有区域启用 CloudTrail,并开启日志文件完整性验证
- [ ] 配置 AWS Config 规则以监控合规性
- [ ] 启用 GuardDuty 以检测威胁
- [ ] 使用 Secrets Manager 或 Parameter Store 存储密钥(不要使用环境变量)
- [ ] 为所有数据存储启用静态加密
- [ ] 对所有连接强制使用 TLS 1.2 及以上版本
- [ ] 部署 VPC Flow Logs 以监控网络
- [ ] 使用 Security Hub 集中查看安全状况

## 高可用模式

### 多可用区架构(目标 ${availability_target:99.99%})

```
Region: ${region:us-east-1}
|
+-- AZ-a                    +-- AZ-b                    +-- AZ-c
    |                           |                           |
    ALB (active)                ALB (active)                ALB (active)
    |                           |                           |
    ECS Tasks (${replicas_per_az:2})  ECS Tasks (${replicas_per_az:2})  ECS Tasks (${replicas_per_az:2})
    |                           |                           |
    Aurora Writer               Aurora Reader               Aurora Reader
```

### 多区域架构(目标 99.999%)

```
Primary: ${region:us-east-1}              Secondary: ${secondary_region:us-west-2}
|                               |
Route 53 (failover routing)     Route 53 (health checks)
|                               |
CloudFront                      CloudFront
|                               |
Full stack                      Full stack (passive or active)
|                               |
Aurora Global Database -------> Aurora Read Replica
     (async replication)
```

### RTO/RPO 决策矩阵

| 层级 | RTO 目标 | RPO 目标 | 策略 |
|------|------------|------------|----------|
| 第 1 级(关键) | <${rto:15 min} | <${rpo:1 min} | 多区域主动-主动 |
| 第 2 级(重要) | <1 小时 | <15 分钟 | 多区域主动-被动 |
| 第 3 级(标准) | <4 小时 | <1 小时 | 多可用区并结合跨区域备份 |
| 第 4 级(非关键) | <24 小时 | <24 小时 | 单一区域,备份/恢复 |

## 监控与可观测性

### CloudWatch 实施

| 指标类型 | 服务 | 关键指标 |
|-------------|---------|-------------|
| 计算 | EC2/ECS | CPUUtilization、MemoryUtilization、NetworkIn/Out |
| 数据库 | RDS/Aurora | DatabaseConnections、ReadLatency、WriteLatency |
| 无服务器 | Lambda | Duration、Errors、Throttles、ConcurrentExecutions |
| API | API Gateway | 4XXError、5XXError、Latency、Count |
| 存储 | S3 | BucketSizeBytes、NumberOfObjects、4xxErrors |

### 告警阈值

| 资源 | 警告 | 严重 | 操作 |
|----------|---------|----------|--------|
| EC2 CPU | >${cpu_warning:70%} 5min | >${cpu_critical:90%} 5min | 扩容,调查原因 |
| RDS CPU | >${rds_cpu_warning:80%} 5min | >${rds_cpu_critical:95%} 5min | 升级规格,优化查询 |
| Lambda 错误 | >1% | >5% | 调查,回滚 |
| ALB 5xx | >0.1% | >1% | 调查后端 |
| DynamoDB 限流 | 任何情况 | 持续发生 | 增加容量 |

## 验证检查清单

### 正式上线前

- [ ] 已完成 Well-Architected Review(全部 6 个支柱)
- [ ] 已按预期峰值 + 50% 余量完成负载测试
- [ ] 已完成灾难恢复测试,并记录 RTO/RPO
- [ ] 已通过安全评估(如有要求,完成渗透测试)
- [ ] 已验证合规控制(如适用)
- [ ] 已配置监控仪表盘和告警
- [ ] 已记录常见操作的运行手册
- [ ] 已验证成本预测并设置预算
- [ ] 已为所有资源实施标签策略
- [ ] 已测试备份和恢复流程

使用建议

替换区域、环境和网络参数后,用于架构评审或迁移方案梳理。

信息

类型
文本
许可
CC0-1.0

反馈这条内容