Trabzon merkezli 480 araçlık lojistik holding, 3 yıl önce tek bulut (Azure) stratejisinden multi-cloud’a geçti. Bugün Azure + AWS + GCP üçünü birlikte kullanıyorlar. “En iyi servis hangisindeyse oradan al” prensibi. Ama multi-cloud rüya değil; disiplin gerektiren bir model. Bu yazı sahadaki gerçek notlar.
Workload Dağılımı: Hangi İş Hangi Bulutta
| Workload | Bulut | Sebep |
|---|---|---|
| SAP S/4HANA + üretim sistemi | Azure | SAP partnership, M365 + Azure AD entegrasyonu |
| Veri analizi, BigQuery, ML | GCP | BigQuery + Vertex AI olgunluğu |
| S3-tabanlı 3rd party uygulamalar | AWS | S3 native + Lambda ekosistemi |
| Müşteri portali (web) | Azure | Front Door + CDN + AAD B2C |
| Kurye mobil uygulaması backend | GCP (Firebase + Cloud Functions) | Firebase real-time + push notification |
| Yedek dosya storage | AWS S3 Glacier Deep Archive | En ucuz cold storage |
| Disaster Recovery | AWS (Azure’un yedeği) | Provider-independent DR |
Identity Federation: Tek SSO
Çalışanlar tek hesapla 3 buluta giriş yapıyor. Microsoft Entra ID master IdP, AWS IAM Identity Center ve GCP Workforce Identity Federation üzerinden federe.
# AWS tarafında trust relationship
aws iam create-saml-provider
--name EntraIDProvider
--saml-metadata-document file://entra-metadata.xml
# IAM role (federated user için)
aws iam create-role
--role-name DataEngineerRole
--assume-role-policy-document file://trust-policy.json
# GCP Workload Identity Federation
gcloud iam workload-identity-pools create entra-pool
--location global
--display-name "Entra ID Federation"
gcloud iam workload-identity-pools providers create-oidc entra-provider
--location global
--workload-identity-pool entra-pool
--issuer-uri "https://login.microsoftonline.com/{tenant-id}/v2.0"
--attribute-mapping "google.subject=assertion.sub"
Çalışan ayrılınca Entra ID’den hesap silinince 3 bulut da otomatik kapanıyor.
Network: Cross-Cloud Connectivity
- Azure ↔ AWS: ExpressRoute + Direct Connect üzerinden Megaport gibi cross-connect provider
- Azure ↔ GCP: Partner Interconnect
- Inter-cloud private link: Multicloud Networking (Aviatrix veya Equinix Network Edge)
Public internet üzerinden veri taşıma maliyetli + güvenlik riski. Private connectivity şart.
IaC: Terraform Multi-Cloud
Her bulutun kendi tool’u (Bicep, CloudFormation, Deployment Manager) yerine Terraform single source of truth.
terraform {
required_providers {
azurerm = { source = "hashicorp/azurerm", version = "~> 3.0" }
aws = { source = "hashicorp/aws", version = "~> 5.0" }
google = { source = "hashicorp/google", version = "~> 5.0" }
}
backend "azurerm" {
storage_account_name = "tfstateprod"
container_name = "tfstate"
key = "multicloud.tfstate"
}
}
# Azure Resource
resource "azurerm_storage_account" "primary" {
name = "stgproddata"
resource_group_name = "rg-data"
location = "northeurope"
...
}
# AWS Resource (DR backup)
resource "aws_s3_bucket" "dr_backup" {
bucket = "lojistik-dr-backup"
...
}
# GCP Resource (analytics)
resource "google_bigquery_dataset" "analytics" {
dataset_id = "lojistik_analytics"
location = "EU"
...
}
Observability: Tek Pane of Glass
3 bulutun monitoring tool’u ayrı (Azure Monitor, CloudWatch, Cloud Monitoring). Tek dashboard için Grafana Cloud, üçünden de data source.
- Azure Monitor → Grafana via Azure Monitor data source
- CloudWatch → Grafana via CloudWatch data source
- GCP → Grafana via Google Cloud Monitoring data source
SRE ekibi tek Grafana’da hangi bulutta sorun var görüyor.
Maliyet Yönetimi: 3 Aylık Tag Disiplini
Her resource’un üç tag’i: environment, team, costcenter. 3 buluttan tag bazlı cost report Power BI’da konsolide.
| Bulut | Aylık (USD) | % |
|---|---|---|
| Azure | $28.400 | %62 |
| GCP | $11.800 | %26 |
| AWS | $5.500 | %12 |
| Toplam | $45.700 |
Avantajlar (Sahada Doğrulanmış)
- Vendor lock-in azaldı, müzakere gücü arttı
- Best-of-breed servis kullanma esnekliği
- Bölgesel yasal zorunluluklar (KVKK İstanbul region şartı)
- Provider outage’ında DR opsiyonu
Dezavantajlar (Sahada Doğrulanmış)
- Operational complexity: 3 bulut = 3 farklı API, 3 farklı CLI, 3 farklı dökümantasyon. SRE ekibinin öğrenme yükü 3 katı.
- Cost overhead: Cross-cloud network egress + multi-cloud management tool’lar (Aviatrix, Spot.io) ek maliyet.
- Skill dağılımı: Her uzmanlığı 3 bulut için ayrı tutmak zor. Genelde “Azure derin + AWS/GCP yüzey” karışımı.
Sahada Düşülen Üç Tuzak
- Multi-cloud’u “DR için” başlatmak: DR amaçlı multi-cloud yatırım büyük, kullanım az. Önce iş gereksinimi tanımlanmalı.
- Tag disiplini olmamak: 3 buluttan gelen cost data tag’siz konsolide edilemiyor. Day 1’den tag policy.
- Identity’yi 3 ayrı yerden yönetmek: Çalışan ayrılınca 3 bulut hesabı kapatma unutulur. Tek IdP + federation şart.
CloudSpark olarak multi-cloud strateji danışmanlığı, Terraform ile multi-cloud IaC, identity federation, cross-cloud networking ve observability projeleri için çalışıyoruz.



