Отримайте професійну допомогу в архітектурі AWS: від міграції та оптимізації витрат до впровадження високої безпеки згідно з Well-Architected Framework.
---
name: aws-cloud-expert
description: |
Проектує та впроваджує хмарні архітектури AWS з акцентом на Well-Architected Framework, оптимізацію витрат та безпеку. Використовуйте для:
1. Проектування або аудиту архітектури інфраструктури AWS
2. Міграції робочих навантажень в AWS або між сервісами AWS
3. Оптимізації витрат AWS (right-sizing, Reserved Instances, Savings Plans)
4. Впровадження безпеки AWS, комплаєнсу або аварійного відновлення
5. Усунення несправностей сервісів AWS або проблем з продуктивністю
---
**Регіон**: ${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
## Матриця вибору сервісів
| Тип навантаження | Основний сервіс | Альтернатива | Фактор рішення |
|---------------|-----------------|-------------|-----------------|
| Stateless API | Lambda + API Gateway | ECS Fargate | Тривалість запиту >15 хв -> ECS |
| Stateful web app | ECS/EKS | EC2 Auto Scaling | Досвід роботи з контейнерами -> ECS/EKS |
| Batch processing | Step Functions + Lambda | AWS Batch | GPU/тривале виконання -> Batch |
| Real-time streaming | Kinesis Data Streams | MSK (Kafka) | Наявність Kafka -> MSK |
| Static website | S3 + CloudFront | Amplify | Full-stack розробка -> Amplify |
| Relational DB | Aurora | RDS | Висока доступність -> Aurora |
| Key-value store | DynamoDB | ElastiCache | Затримка ElastiCache |
| Data warehouse | Redshift | Athena | Ad-hoc запити -> Athena |
## Дерево рішень щодо обчислювальних ресурсів
```
Старт: Яка модель вашого навантаження?
|
+-> Event-driven, виконання Lambda
| Враховуйте: пам'ять ${lambda_memory:512}MB, одночасні виконання, холодні старти
|
+-> Тривалі контейнери
| +-> Потрібен Kubernetes?
| +-> Так: EKS (керований) або self-managed K8s на EC2
| +-> Ні: ECS Fargate (serverless) або ECS EC2 (оптимізація витрат)
|
+-> Потрібні GPU/HPC/Custom AMI
| +-> EC2 з відповідним сімейством інстансів
| g4dn/p4d (ML), c6i (compute), r6i (memory), i3en (storage)
|
+-> Пакетні завдання, черги
+-> AWS Batch зі Spot інстансами (економія до 90%)
```
## Мережева архітектура
### Патерн дизайну 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 (якщо потрібно)
|
+-- 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, інші сховища даних
```
### Правила Security Group
| Рівень | Вхідний трафік від | Порти |
|------|--------------|-------|
| ALB | 0.0.0.0/0 | 443 |
| App | ALB SG | ${app_port:8080} |
| Data | App SG | ${db_port:5432} |
### VPC Endpoints (Оптимізація витрат)
Завжди створюйте для високонавантажених сервісів:
- S3 Gateway Endpoint (безкоштовно)
- DynamoDB Gateway Endpoint (безкоштовно)
- Interface Endpoints: ECR, Secrets Manager, SSM, CloudWatch Logs
## Чек-лист оптимізації витрат
### Негайні дії (Тиждень 1)
- [ ] Увімкнути Cost Explorer та налаштувати бюджети зі сповіщеннями
- [ ] Переглянути та видалити невикористовувані ресурси (звіт Cost Explorer про простоюючі ресурси)
- [ ] Провести Right-sizing інстансів EC2 (рекомендації AWS Compute Optimizer)
- [ ] Видалити неприкріплені томи EBS та старі знімки (snapshots)
- [ ] Перевірити витрати на обробку даних NAT Gateway
### Швидка оцінка витрат
| Ресурс | Орієнтовна вартість на місяць |
|----------|----------------------|
| ${instance_type:t3.medium} (on-demand) | ~$30 |
| ${instance_type:t3.medium} (1yr RI) | ~$18 |
| Lambda (1M викликів, 1с, ${lambda_memory:512}MB) | ~$8 |
| RDS db.${instance_type:t3.medium} (Multi-AZ) | ~$100 |
| Aurora Serverless v2 (${aurora_acu:8} ACU avg) | ~$350 |
| NAT Gateway + 100GB даних | ~$50 |
| S3 (1TB Standard) | ~$23 |
| CloudFront (1TB трафіку) | ~$85 |
## Впровадження безпеки
### Кращі практики IAM
```
Принцип: Найменші привілеї з явним забороною (explicit deny)
1. Використовуйте IAM ролі (не користувачів) для додатків
2. Вимагайте MFA для всіх реальних користувачів
3. Використовуйте Permission Boundaries для делегованого адміністрування
4. Впроваджуйте SCP на рівні організації (AWS Organizations)
5. Регулярний аудит доступу за допомогою 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 для секретів (не змінні оточення)
- [ ] Увімкнути шифрування (encryption at rest) для всіх сховищ даних
- [ ] Забезпечити використання TLS 1.2+ для всіх з'єднань
- [ ] Впровадити VPC Flow Logs для мережевого моніторингу
- [ ] Використовувати Security Hub для централізованого огляду безпеки
## Патерни високої доступності
### Multi-AZ архітектура (ціль ${availability_target:99.99%})
```
Регіон: ${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
```
### Multi-Region архітектура (ціль 99.999%)
```
Основний: ${region:us-east-1} Вторинний: ${secondary_region:us-west-2}
| |
Route 53 (failover routing) Route 53 (health checks)
| |
CloudFront CloudFront
| |
Full stack Full stack (passive або active)
| |
Aurora Global Database -------> Aurora Read Replica
(асинхронна реплікація)
```
### Матриця рішень RTO/RPO
| Рівень | Ціль RTO | Ціль RPO | Стратегія |
|------|------------|------------|----------|
| Tier 1 (Критичний) | <${rto:15 min} | <${rpo:1 min} | Multi-region active-active |
| Tier 2 (Важливий) | <1 година | <15 хв | Multi-region active-passive |
| Tier 3 (Стандартний) | <4 години | <1 година | Multi-AZ з міжрегіональним бекапом |
| Tier 4 (Не-критичний) | <24 години | ${cpu_warning:70%} 5хв | >${cpu_critical:90%} 5хв | Scale out, розслідування |
| RDS CPU | >${rds_cpu_warning:80%} 5хв | >${rds_cpu_critical:95%} 5хв | Scale up, оптимізація запитів |
| Lambda errors | >1% | >5% | Розслідування, відкат (rollback) |
| ALB 5xx | >0.1% | >1% | Перевірка бекенду |
| DynamoDB throttle | Будь-який | Стійкий | Збільшення ємності |
## Перевірочний чек-лист
### Перед запуском у Production
- [ ] Проведено Well-Architected Review (усі 6 стовпів)
- [ ] Навантажувальне тестування завершено з очікуваним піком + 50% запасу
- [ ] Аварійне відновлення (DR) протестовано з документованими RTO/RPO
- [ ] Оцінка безпеки пройдена (пентест, якщо потрібно)
- [ ] Контроль комплаєнсу перевірено (якщо застосовно)
- [ ] Налаштовано дашборди моніторингу та сповіщення
- [ ] Документовано Runbooks для типових операцій
- [ ] Прогноз витрат валідовано, бюджети встановлено
- [ ] Впроваджено стратегію тегування для всіх ресурсів
- [ ] Процедури бекапу та відновлення протестовано