Мапа інфраструктури
Хто за що відповідає на рівні платформ.
flowchart TB
user([👤 Користувач])
tg_app([Telegram client])
subgraph cf[☁️ Cloudflare]
dns[DNS + proxy + CDN<br/>Authenticated Origin Pulls для Strapi]
end
subgraph aws[AWS · account 952854879948 · eu-central-1]
direction TB
amplify[Amplify<br/>abitly-dev-frontend · studsearch-prod-frontend]
ecs[ECS Fargate<br/>abitly-prod-backend: API + tg-bot · abitly-prod-frontend<br/>ALB abitly-prod-shared]
eb[Elastic Beanstalk<br/>studsearch-prod-env]
ec2[EC2<br/>abitly-prod-strapi · abitly-dev-backend · abitly-shared-typesense]
lambda[Lambda<br/>analytics collector · SSM-redeploy · DB backup]
rds[(RDS Postgres<br/>studsearch-prod SHARED · abitly-dev-pg)]
cache[(ElastiCache Valkey<br/>abitly-prod-cache · abitly-dev-cache)]
s3[(S3<br/>media · pipelines · analytics lake · backups)]
ssm[SSM Parameter Store<br/>/abitly/* · /studsearch/*]
cp[CodePipeline × 5]
ecr[ECR · abitly/{backend,frontend,strapi,tg-bot}]
end
subgraph railway[Railway · workspace Abitly]
rw_tg[Abitly-Telegram<br/>Mini App / Webapp]
end
subgraph do[Digital Ocean]
droplet[Droplet<br/>Prometheus + Loki + Grafana<br/>abitly-monitoring]
end
user --> dns
dns --> amplify
dns --> ecs
dns --> ec2
dns --> eb
tg_app --> ecs
tg_app --> rw_tg
rw_tg --> ecs
ecs --> rds
ecs --> cache
ecs --> ec2
eb --> rds
ec2 --> rds
cp --> ecr --> ecs
ssm --> ecs
ssm --> ec2
ssm --> eb
lambda --> s3
ec2 --> droplet
ecs --> droplet
Як читати
Section titled “Як читати”- Користувач → Cloudflare → AWS для веб-трафіку.
- Telegram bot → AWS ECS (
abitly-prod-tg-bot, long-poll до Telegram), Mini App → Railway (Abitly-Telegram); Mini App → Abitly API на ECS (cross-platform call). - CodePipeline будує docker-образи в ECR і оновлює ECS task definitions.
- SSM Parameter Store — конфіг-плейн, читається ECS / EC2 / EB і слухається Lambda
abitly-prod-ssm-redeploy. - Метрики/логи йдуть з ECS і EC2 в Digital Ocean Droplet через scrape.
Деталі
Section titled “Деталі”- Уся інфра як код (Terraform) → iac — джерело правди за цією мапою.
- AWS-сервіси та що на яких → hosting.
- БД, кеш, search → databases.
- Public DNS → domains-dns.
- Конкретні pipeline-и і Lambda → deploy-pipeline.
- Observability → observability.
Поза цією мапою
Section titled “Поза цією мапою”В тому ж AWS-акаунті працює незалежний yangon-* стек (4 ECS-сервіси + RDS + ElastiCache + Lambda + Terraform). До Abitly/Studsearch не належить, тут не документується.