First batch
This commit is contained in:
156
CLOUD.md
156
CLOUD.md
@@ -38,6 +38,22 @@
|
||||
- **Data gravitace** — pohyb dat mezi cloudy je drahý a pomalý
|
||||
- **Monitoring** — jeden pane of glass napříč cloudy (Grafana, Datadog)
|
||||
|
||||
### Cloud Adoption Frameworks (CAF)
|
||||
|
||||
Každý hlavní poskytovatel má vlastní Cloud Adoption Framework pro strukturovaný přístup k adopci cloudu:
|
||||
|
||||
| Poskytovatel | Rámec | Zaměření |
|
||||
|-------------|-------|----------|
|
||||
| AWS | AWS CAF | 6 perspektiv: Business, People, Governance, Platform, Security, Operations |
|
||||
| Azure | Microsoft CAF | 8 metodik: Strategy, Plan, Ready, Migrate, Innovate, Govern, Manage, Secure |
|
||||
| GCP | Google CAF | 4 pilíře: Learn, Scale, Modernize, Operate |
|
||||
|
||||
Multi-Cloud Administration Guide (Mulder, 2024) doporučuje kombinovat CAF rámce napříč poskytovateli pro jednotné governanční modely, zejména v oblastech:
|
||||
- **Interoperabilita** — standardizace API a IaC napříč cloudy (Terraform, Pulumi)
|
||||
- **Data governance** — jednotná politika pro data residency a životní cyklus dat
|
||||
- **Compliance automation** — automatizované audity napříč cloudy (AWS Config, Azure Policy, GCP Org Policies)
|
||||
- **Access management** — federace identit a centralizované RBAC
|
||||
|
||||
## Migrační strategie — 6 Rs
|
||||
|
||||
| Strategie | Popis | Náročnost | Typický scénář |
|
||||
@@ -128,7 +144,7 @@ Obdoby: Azure Well-Architected Framework, GCP Architecture Framework
|
||||
| **Storage optimized** | I4i, im4gn | 1:4 + NVMe | Transactional DB, data warehousing, Kafka | i4i.large ~$0.138/h |
|
||||
| **GPU / ML** | P5, g5, trn1 | GPU attach | AI training (P5), inference (g5), ML (trn1) | g5.xlarge ~$1.006/h |
|
||||
|
||||
Viz [HARDWARE.md](HARDWARE.md#gpu-v-serverech) pro detail GPU modelů a konfigurací.
|
||||
Viz [GPU.md](GPU.md) pro detail GPU modelů a konfigurací.
|
||||
|
||||
### Úložiště
|
||||
|
||||
@@ -169,6 +185,29 @@ Region ┌───────────────────────
|
||||
└──────────────────────────────┘
|
||||
```
|
||||
|
||||
## Disaster Recovery strategie
|
||||
|
||||
### DR strategie na AWS (od nejméně po nejvíce připravené)
|
||||
|
||||
| Strategie | RTO | RPO | Náklady | Popis |
|
||||
|-----------|-----|-----|---------|-------|
|
||||
| **Backup & Restore** | hodiny | 24 h | Nízké | Pravidelné zálohy dat do S3/Glacier, obnova v DR regionu |
|
||||
| **Pilot Light** | desítky minut | minuty | Střední | Minimální běžící kopie (DB, core služby), škálování při failover |
|
||||
| **Warm Standby** | minuty | sekundy | Vysoké | Běží zmenšená kopie produkce, škálování při failover |
|
||||
| **Active-Active (Multi-Region)** | sekundy | < 1 s | Velmi vysoké | Plně aktivní ve více regionech, traffic routing (Route53, Global Accelerator) |
|
||||
|
||||
Klíčové knihy k tématu:
|
||||
- **Engineering Resilient Systems on AWS** (Schwarz, Moran, Bachmeier, 2024) — praktické laby pro resilience vzory: back off and retry, multi-Region failover, circuit breaker, chaos engineering pomocí AWS Fault Injection Simulator
|
||||
- **Building Resilient Architectures on AWS** (2025) — data security, backup strategie, automace recovery plánů
|
||||
|
||||
### Chaos Engineering
|
||||
|
||||
Cílené vnášení poruch do systému pro ověření odolnosti:
|
||||
- **AWS Fault Injection Simulator (FIS)** — spravované fault injection pro EC2, ECS, EKS, RDS
|
||||
- **Nástroje**: Chaos Mesh (Kubernetes), Gremlin, Litmus
|
||||
- **Postup**: definice hypotézy → provedení experimentu → měření dopadu → zlepšení systému
|
||||
- **Bezpečnost**: experimenty v izolovaném prostředí, safety controls, automatic rollback
|
||||
|
||||
## Cloud design patterns
|
||||
|
||||
### Strangler Fig
|
||||
@@ -202,6 +241,50 @@ Ukládání stavu jako sekvence událostí (eventů), ne aktuálního stavu.
|
||||
- Výhody: audit trail, time travel, CQRS kompatibilita
|
||||
- Implementace: EventStoreDB, Kafka (log), DynamoDB + CDC
|
||||
|
||||
### Další cloudové patterny (Wilder — Cloud Architecture Patterns)
|
||||
|
||||
| Pattern | Kategorie | Popis |
|
||||
|---------|-----------|-------|
|
||||
| **Horizontally Scaling Compute** | Škálovatelnost | Přidávání/odebírání instancí dle zátěže, elasticita |
|
||||
| **Queue-Centric Workflow** | Škálovatelnost | Decoupling komponent přes fronty (SQS, RabbitMQ), zpracování asynchronně |
|
||||
| **Auto-Scaling** | Škálovatelnost | Automatické škálování na základě metrik (CPU, memory, request count) |
|
||||
| **MapReduce** | Big Data | Distribuované zpracování dat (Hadoop, EMR, BigQuery) |
|
||||
| **Database Sharding** | Big Data | Horizontální partition dat napříč databázemi |
|
||||
| **Busy Signal** | Failure Handling | Graceful degradace při přetížení (HTTP 503, throttling, backpressure) |
|
||||
| **Node Failure** | Failure Handling | Detekce a automatické zotavení z výpadku výpočetního uzlu |
|
||||
| **Colocation** | Distribuovaní uživatelé | Umístění compute blízko datům pro snížení latence |
|
||||
| **Valet Key** | Distribuovaní uživatelé | Delegovaný přístup ke storage (SAS tokeny, S3 presigned URLs) |
|
||||
| **Multi-Site Deployment** | Distribuovaní uživatelé | Aktivní nasazení ve více geografických lokalitách |
|
||||
|
||||
## Evolutionary Architecture
|
||||
|
||||
Definice (Ford, Parsons, Kua, 2022): *Evoluční architektura podporuje řízenou, inkrementální změnu napříč více dimenzemi.*
|
||||
|
||||
### Fitness Functions
|
||||
|
||||
Automatizované kontroly architektonických charakteristik — obdoba testů pro architekturu:
|
||||
|
||||
| Typ | Popis | Příklad |
|
||||
|-----|-------|---------|
|
||||
| **Atomic** | Kontroluje jednu metriku | Cyclomatic complexity < 10 |
|
||||
| **Holistic** | Kontroluje celkový systém | Latence end-to-end < 200 ms |
|
||||
| **Triggered** | Spouštěná událostí (CI/CD commit, deployment) | Ověření API kontraktu |
|
||||
| **Continous** | Běží nepřetržitě v produkci | Monitoring dependency freshness |
|
||||
| **Static** | Analýza kódu bez běhu | SonarQube, ESLint |
|
||||
| **Dynamic** | Analýza za běhu | Load testy, chaos experimenty |
|
||||
|
||||
### Principy evoluční architektury
|
||||
|
||||
1. **Inkrementální změna** — malé, bezpečné změny díky CI/CD, deployment pipelines, zralému DevOps
|
||||
2. **Fitness funkce** — automatizovaná ochrana architektonických charakteristik (škálovatelnost, performance, bezpečnost)
|
||||
3. **Správa couplingů** — vědomá práce s propojením komponent (affinity, volatility, cykly)
|
||||
4. **Evoluční data** — databázové migrace jako first-class občan (evoluční schemata, expand-contract pattern)
|
||||
|
||||
### Antipatterny
|
||||
- **Big Design Up Front (BDUF)** — snaha navrhnout vše předem, ignoruje změny
|
||||
- **No Design at All** — absence architektonického myšlení, čistě emergentní design
|
||||
- **Premature Standardization** — zavedení standardů dříve, než je známe domény
|
||||
|
||||
## Hybrid cloud konektivita
|
||||
|
||||
Viz také: [NETWORKING.md](NETWORKING.md) — síťová architektura (VPN, BGP, VPC design).
|
||||
@@ -298,6 +381,68 @@ Organization Node
|
||||
- **Resource Manager** — hierarchie: Organization → Folder → Project → Resources
|
||||
- **Project limits** — max 30 projektů (lze navýšit), resources per project 10k
|
||||
|
||||
## 12-Factor App metodologie
|
||||
|
||||
Metodologie pro building cloud-native aplikací (Heroku, 2011), rozšířená knihou **Multi-Cloud Handbook for Developers** (Natarajan, Jacob, 2024).
|
||||
|
||||
| # | Faktor | Popis | Cloudová implementace |
|
||||
|---|--------|-------|----------------------|
|
||||
| 1 | **Codebase** | Jeden repozitář, mnoho deploymentů | Git + CI/CD pipeline |
|
||||
| 2 | **Dependencies** | Explicitní deklarace závislostí | package.json, requirements.txt, Docker image |
|
||||
| 3 | **Config** | Konfigurace v proměnných prostředí | Secrets Manager, Parameter Store, env vars |
|
||||
| 4 | **Backing services** | Závislé služby jako připojené zdroje | RDS, S3, Redis — připojení přes connection string |
|
||||
| 5 | **Build, release, run** | Striktní oddělení fází sestavení | CI/CD pipeline (GitHub Actions, GitLab CI) |
|
||||
| 6 | **Processes** | Aplikace jako bezstavové procesy | Horizontální škálování, session v Redis |
|
||||
| 7 | **Port binding** | Služba exportuje port, není vložena do serveru | Express, FastAPI, Spring Boot na vlastním portu |
|
||||
| 8 | **Concurrency** | Škálování pomocí procesního modelu | Horizontal Pod Autoscaler (K8s), EC2 Auto Scaling |
|
||||
| 9 | **Disposability** | Rychlý start a graceful shutdown | Health checks, SIGTERM handling, preStop hooks |
|
||||
| 10 | **Dev/Prod parity** | Co nejmenší rozdíl mezi prostředími | Docker, IaC (Terraform), stejné backing services |
|
||||
| 11 | **Logs** | Logy jako event streamy | stdout/stderr → CloudWatch, ELK, Datadog |
|
||||
| 12 | **Admin processes** | Administrativní úlohy jako one-off procesy | DB migrace, data backfill — spuštěno v izolaci |
|
||||
|
||||
### Rozšíření pro multi-cloud (Multi-Cloud Handbook for Developers)
|
||||
- **API-first design** — konzistentní API rozhraní napříč cloudy (REST, gRPC)
|
||||
- **Domain-Driven Design (DDD)** — ohraničené kontexty mapované na cloudové služby
|
||||
- **Service Mesh** — Istio, Linkerd pro observabilitu, traffic management a security napříč cloudy
|
||||
- **GitOps** — declarativní deployment s ArgoCD/Flux napříč Kubernetes clustery v různých cloudech
|
||||
|
||||
## Azure Cloud Native Architecture (mapová příručka)
|
||||
|
||||
Na základě **The Azure Cloud Native Architecture Mapbook (2nd ed.)** (Eyskens, 2025) — 40+ architektonických map napříč doménami:
|
||||
|
||||
### Domény architektonických map
|
||||
|
||||
| Doména | Klíčové služby Azure | Architektonické vzory |
|
||||
|--------|---------------------|----------------------|
|
||||
| **Infrastructure** | VNet, Azure Firewall, ExpressRoute, VPN Gateway | Hub-and-spoke, Virtual WAN, Private Link |
|
||||
| **Applications** | App Service, API Management, Service Bus, Functions | Event-driven, Strangler Fig, Backend for Frontend |
|
||||
| **Data** | Cosmos DB, SQL Database, Synapse, Data Lake | CQRS, Event Sourcing, Polyglot Persistence |
|
||||
| **Container Orchestrators** | AKS, Azure Container Apps, ACA | Sidecar, Ambassador, Adapter (service mesh) |
|
||||
| **AI** | Azure OpenAI, Cognitive Services, ML Studio | RAG, model fine-tuning, MLOps |
|
||||
| **Security** | Entra ID, Defender for Cloud, Key Vault, Sentinel | Zero Trust, Defense in depth, JIT Access |
|
||||
|
||||
### Využití Cloud Adoption Framework na Azure
|
||||
- **Strategy** — business case, katalog aplikací, racionalizace portfolia
|
||||
- **Plan** — landing zone design, governance baseline, subscription taxonomy
|
||||
- **Ready** — implementace landing zones (ALZ), Azure Policy, Networking, Identity
|
||||
- **Migrate** — assessment (Azure Migrate), rehost/replatform, test a cutover
|
||||
- **Govern** — cost management, policy enforcement, compliance monitoring
|
||||
|
||||
## Srovnání cloudových poskytovatelů
|
||||
|
||||
Na základě **Cloud Computing: AWS, Azure, Google Cloud** (Sario, 2025):
|
||||
|
||||
| Oblast | AWS | Azure | GCP |
|
||||
|--------|-----|-------|-----|
|
||||
| **Compute** | EC2, Lambda, ECS/EKS | VMs, Functions, AKS | GCE, Cloud Functions, GKE |
|
||||
| **Storage** | S3, EBS, EFS | Blob, Disk, Files | Cloud Storage, Persistent Disk, Filestore |
|
||||
| **Databáze relační** | RDS (MySQL, PG, SQL Server, Oracle, MariaDB) | SQL Database, MySQL/PostgreSQL | Cloud SQL (MySQL, PG, SQL Server) |
|
||||
| **Databáze NoSQL** | DynamoDB, ElastiCache | Cosmos DB, Redis Cache | Firestore, Bigtable, Memorystore |
|
||||
| **Message queue** | SQS, SNS | Service Bus, Queue Storage | Pub/Sub, Tasks |
|
||||
| **Observabilita** | CloudWatch, X-Ray | Monitor, Application Insights | Cloud Monitoring, Cloud Trace |
|
||||
| **AI/ML** | SageMaker, Bedrock | Azure ML, OpenAI | Vertex AI, AutoML |
|
||||
| **Cena (compute)** | On-demand, Reserved, Spot, Savings Plan | Pay-as-you-go, Reserved, Spot | On-demand, Committed Use, Spot |
|
||||
|
||||
## Best practices
|
||||
|
||||
- Používejte **infrastructure as code** (Terraform, Pulumi, CDK)
|
||||
@@ -313,3 +458,12 @@ Odkazy, knihy a standardy: [sources/cloud/sources.md](sources/cloud/sources.md)
|
||||
- **Cost tagging** — assign tags pro chargeback/showback (Environment, Team, Cost Center, Application)
|
||||
- **Automated compliance** — AWS Config, Azure Policy, GCP Org Policies pro guardrails
|
||||
- **Multi-account strategie** — AWS Control Tower, Azure Landing Zones, GCP Resource Hierarchy
|
||||
|
||||
### Doporučená literatura
|
||||
|
||||
| Kniha | Autoři | ISBN | Popis |
|
||||
|-------|--------|------|-------|
|
||||
| The AI Cloud Infrastructure Blueprint | Thummarakoti, Vududala, Madupati, Kaushik | 978-1-041-16642-9 | End-to-end průvodce návrhem, deploymentem a správou AI systémů na cloudových platformách. Pokrývá public/private/hybrid/multi-cloud modely pro AI, infrastrukturu pro ML trénování a inferenci, MLOps. Cílová skupina: architekti, data scientists, DevOps. |
|
||||
| AWS for Solutions Architects (3rd ed.) | Shrivastava, Srivastav, Thakur | 978-1-83664-193-3 | Praktický průvodce AWS architekturou — compute (EC2, Lambda), storage (S3, EBS), databáze (RDS, DynamoDB), networking, security, Well-Architected Framework, migrace, cost optimization. Vhodné pro přípravu na AWS Solutions Architect certifikaci. |
|
||||
|
||||
*Poslední revize: 2026-06-03*
|
||||
|
||||
Reference in New Issue
Block a user