Design ★ 18,759

azure-cloud-architect

Azure mimarisi tasarlamak için startup ve kurumsal çözümleri sunun. Azure altyapısı tasarımı, Bicep/ARM template oluşturma, Azure maliyeti optimizasyonu, Azure DevOps pipeline kurulumu veya Azure'a geçiş gibi işlemlerde kullanın. AKS, App Service, Azure Functions, Cosmos DB ve maliyet optimizasyonunu kapsar.

cd ~/.claude/skills
git clone https://github.com/alirezarezvani/claude-skills.git claude-skills

Azure Bulut Mimarı

Bicep altyapı-kod şablonlarıyla startuplar ve işletmeler için ölçeklenebilir, maliyet-etkin Azure mimarileri tasarlayın.


İş Akışı

Adım 1: Gereksinimleri Toplayın

Uygulama spesifikasyonlarını toplayın:

- Uygulama türü (web uygulaması, mobil backend, veri işlem hattı, SaaS, mikroservisler)
- Beklenen kullanıcı sayısı ve saniye başına istek
- Bütçe kısıtlamaları (aylık harcama limiti)
- Takım boyutu ve Azure deneyim seviyesi
- Uyum gereksinimleri (GDPR, HIPAA, SOC 2, ISO 27001)
- Kullanılabilirlik gereksinimleri (SLA, RPO/RTO)
- Bölge tercihleri (veri yerleşimi, gecikme)

Adım 2: Mimarisini Tasarlayın

Desen önerilerine ulaşmak için mimari tasarımcısını çalıştırın:

python scripts/architecture_designer.py \
  --app-type web_app \
  --users 10000 \
  --requirements '{"budget_monthly_usd": 500, "compliance": ["SOC2"]}'

Örnek çıktı:

{
  "recommended_pattern": "app_service_web",
  "service_stack": ["App Service", "Azure SQL", "Front Door", "Key Vault", "Entra ID"],
  "estimated_monthly_cost_usd": 280,
  "pros": ["Managed platform", "Built-in autoscale", "Deployment slots"],
  "cons": ["Less control than VMs", "Platform constraints", "Cold start on consumption plans"]
}

Önerilen desenlerden seçim yapın:

  • App Service Web: Front Door + App Service + Azure SQL + Redis Cache
  • AKS Üzerinde Mikroservisler: AKS + Service Bus + Cosmos DB + API Management
  • Sunucusuz Olay Güdümlü: Functions + Event Grid + Service Bus + Cosmos DB
  • Veri İşlem Hattı: Data Factory + Synapse Analytics + Data Lake Storage + Event Hubs

Detaylı desen spesifikasyonları için references/architecture_patterns.md adresine bakın.

Doğrulama kontrol noktası: Önerilen desen, takımın operasyonel olgunluğu ve uyum gereksinimlerine uyduğunu doğrulayın ve ardından Adım 3'e geçin.

Adım 3: IaC Şablonları Oluşturun

Seçilen desen için altyapı-kod oluşturun:

# Web uygulaması yığını (Bicep)
python scripts/bicep_generator.py --arch-type web-app --output main.bicep

Örnek Bicep çıktısı (temel web uygulaması kaynakları):

@description('The environment name')
param environment string = 'dev'

@description('The Azure region for resources')
param location string = resourceGroup().location

@description('The application name')
param appName string = 'myapp'

// App Service Plan
resource appServicePlan 'Microsoft.Web/serverfarms@2023-01-01' = {
  name: '${environment}-${appName}-plan'
  location: location
  sku: {
    name: 'P1v3'
    tier: 'PremiumV3'
    capacity: 1
  }
  properties: {
    reserved: true // Linux
  }
}

// App Service
resource appService 'Microsoft.Web/sites@2023-01-01' = {
  name: '${environment}-${appName}-web'
  location: location
  properties: {
    serverFarmId: appServicePlan.id
    httpsOnly: true
    siteConfig: {
      linuxFxVersion: 'NODE|20-lts'
      minTlsVersion: '1.2'
      ftpsState: 'Disabled'
      alwaysOn: true
    }
  }
  identity: {
    type: 'SystemAssigned'
  }
}

// Azure SQL Database
resource sqlServer 'Microsoft.Sql/servers@2023-05-01-preview' = {
  name: '${environment}-${appName}-sql'
  location: location
  properties: {
    administrators: {
      azureADOnlyAuthentication: true
    }
    minimalTlsVersion: '1.2'
  }
}

resource sqlDatabase 'Microsoft.Sql/servers/databases@2023-05-01-preview' = {
  parent: sqlServer
  name: '${appName}-db'
  location: location
  sku: {
    name: 'GP_S_Gen5_2'
    tier: 'GeneralPurpose'
  }
  properties: {
    autoPauseDelay: 60
    minCapacity: json('0.5')
  }
}

Front Door, Key Vault, Managed Identity ve izlemeyi içeren tam şablonlar, bicep_generator.py tarafından oluşturulur ve ayrıca references/architecture_patterns.md dosyasında mevcuttur.

Bicep, Azure için önerilen IaC dilidir. Bicep'i ARM JSON şablonlarına tercih edin: Bicep, ARM JSON'a derlenir, daha temiz söz dizimi sunar, modülleri destekler ve Microsoft tarafından ilk taraf olarak desteklenir.

Adım 4: Maliyetleri Gözden Geçirin

Tahmini maliyetleri ve optimizasyon fırsatlarını analiz edin:

python scripts/cost_optimizer.py \
  --config current_resources.json \
  --json

Örnek çıktı:

{
  "current_monthly_usd": 2000,
  "recommendations": [
    { "action": "Right-size SQL Database GP_S_Gen5_8 to GP_S_Gen5_2", "savings_usd": 380, "priority": "high" },
    { "action": "Purchase 1-year Reserved Instances for AKS node pools", "savings_usd": 290, "priority": "high" },
    { "action": "Move Blob Storage to Cool tier for objects >30 days old", "savings_usd": 65, "priority": "medium" }
  ],
  "total_potential_savings_usd": 735
}

Çıktı şunları içerir:

  • Servise göre aylık maliyet dökümü
  • Boyut uyarlama önerileri
  • Reserved Instance ve Savings Plan fırsatları
  • Potansiyel aylık tasarruf

Adım 5: CI/CD'yi Yapılandırın

Azure DevOps Pipelines veya GitHub Actions'ı Azure ile kurun:

# GitHub Actions — Bicep'i Azure'a dağıt
name: Deploy Infrastructure
on:
  push:
    branches: [main]

permissions:
  id-token: write
  contents: read

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: azure/login@v2
        with:
          client-id: ${{ secrets.AZURE_CLIENT_ID }}
          tenant-id: ${{ secrets.AZURE_TENANT_ID }}
          subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}

      - uses: azure/arm-deploy@v2
        with:
          resourceGroupName: rg-myapp-dev
          template: ./infra/main.bicep
          parameters: environment=dev
# Azure DevOps Pipeline
trigger:
  branches:
    include:
      - main

pool:
  vmImage: 'ubuntu-latest'

steps:
  - task: AzureCLI@2
    inputs:
      azureSubscription: 'MyServiceConnection'
      scriptType: 'bash'
      scriptLocation: 'inlineScript'
      inlineScript: |
        az deployment group create \
          --resource-group rg-myapp-dev \
          --template-file infra/main.bicep \
          --parameters environment=dev

Adım 6: Güvenlik İncelemesi

Üretime geçmeden önce güvenlik durumunu doğrulayın:

  • Kimlik: Entra ID (Azure AD) ve RBAC ile, hizmet arası kimlik doğrulaması için Managed Identity — asla kimlik bilgilerini kodda depolamayın
  • Gizlilikler: Tüm gizlilikler, sertifikalar ve bağlantı dizgileri için Key Vault
  • : Tüm alt ağlarda NSG'ler, PaaS hizmetleri için Private Endpoints, WAF'li Application Gateway
  • Şifreleme: Aktarım sırasında TLS 1.2+ protokolü, Azure tarafından yönetilen veya müşteri tarafından yönetilen anahtarlar
  • İzleme: Microsoft Defender for Cloud etkin, koruma sağlamakları için Azure Policy
  • Uyum: SOC 2 / HIPAA / ISO 27001 girişimleri için Azure Policy atamalarını

Dağıtım başarısız olursa:

  1. Dağıtım durumunu kontrol edin:
    az deployment group show \
      --resource-group rg-myapp-dev \
      --name main \
      --query 'properties.error'
    
  2. RBAC veya policy hatalarını kontrol etmek için Activity Log'u gözden geçirin.
  3. Dağıtmadan önce Bicep şablonunu doğrulayın:
    az bicep build --file main.bicep
    az deployment group validate \
      --resource-group rg-myapp-dev \
      --template-file main.bicep
    

Yaygın hata nedenleri:

  • RBAC izin hataları — dağıtan müdürün kaynak grubunda Contributor izni olduğunu doğrulayın
  • Kaynak sağlayıcı kayıtlı değil — az provider register --namespace Microsoft.Web komutu çalıştırın
  • Adlandırma çakışmaları — Azure kaynak adları sık sık genel olarak benzersizdir (depolama hesapları, web uygulamaları)
  • Kota aşıldı — Azure Portal > Abonelikler > Kullanım + kotalar aracılığıyla kota artışı talep edin

Araçlar

architecture_designer.py

Gereksinimlere dayalı mimari desen önerilerini oluşturur.

python scripts/architecture_designer.py \
  --app-type web_app \
  --users 50000 \
  --requirements '{"budget_monthly_usd": 1000, "compliance": ["HIPAA"]}' \
  --json

Giriş: Uygulama türü, beklenen kullanıcılar, JSON gereksinimleri Çıktı: Önerilen desen, hizmet yığını, maliyet tahmini, avantajlar/dezavantajlar

cost_optimizer.py

Maliyet tasarrufu için Azure kaynak yapılandırmalarını analiz eder.

python scripts/cost_optimizer.py --config resources.json --json

Giriş: Mevcut Azure kaynak envanteri içeren JSON dosyası Çıktı: Aşağıdakiler için öneriler:

  • Boşta kaynak kaldırma
  • VM ve veritabanı boyutu uyarlama
  • Reserved Instance satın almaları
  • Depolama katmanı geçişleri
  • Kullanılmayan genel IP'ler ve yük dengeleyicileri

bicep_generator.py

Mimari türünden Bicep şablonu iskeletleri oluşturur.

python scripts/bicep_generator.py --arch-type microservices --output main.bicep

Çıktı: Şunları içeren üretime hazır Bicep şablonları:

  • Managed Identity (parola yok)
  • Key Vault entegrasyonu
  • Azure Monitor için tanı ayarları
  • Ağ güvenlik grupları
  • Maliyet tahsisi için etiketler

Hızlı Başlangıç

Web Uygulaması Mimarisi (< $100/ay)

Sor: "Bir startup için 5000 kullanıcılı bir Azure web uygulaması tasarla"

Sonuç:
- Uygulama için App Service (B1 Linux)
- İlişkisel veriler için Azure SQL Sunucusuz
- Statik varlıklar için Azure Blob Storage
- CDN ve yönlendirme için Front Door (ücretsiz katman)
- Gizlilikler için Key Vault
- Tahmini: $40-80/ay

AKS Üzerinde Mikroservisler ($500-2000/ay)

Sor: "50k kullanıcıya sahip bir SaaS platformu için Azure'da mikroservis mimarisi tasarla"

Sonuç:
- 3 düğüm havuzlu AKS kümesi (sistem, uygulama, işler)
- Ağ geçidi ve oran sınırlaması için API Management
- Çok modelli veri için Cosmos DB
- Eşzamansız mesajlaşma için Service Bus
- Gözlemlenebilirlik için Azure Monitor + Application Insights
- Çoklu bölge dağıtımı

Sunucusuz Olay Güdümlü (< $200/ay)

Sor: "Siparişleri işlemek için olay güdümlü bir backend tasarla"

Sonuç:
- İşlem için Azure Functions (Tüketim planı)
- Olay yönlendirmesi için Event Grid
- Güvenilir mesajlaşma için Service Bus
- Sipariş verileri için Cosmos DB
- İzleme için Application Insights
- Tahmini: $30-150/ay hacme bağlı olarak

Veri İşlem Hattı ($300-1500/ay)

Sor: "Günde 10M olayı almak için bir veri işlem hattı tasarla"

Sonuç:
- Alım için Event Hubs
- İşlem için Stream Analytics veya Functions
- Ham veriler için Data Lake Storage Gen2
- Depo için Synapse Analytics
- Panolar için Power BI

Giriş Gereksinimleri

Mimari tasarım için bu detayları sağlayın:

Gereksinim Açıklama Örnek
Uygulama türü Neyi inşa ettiğiniz SaaS platformu, mobil backend
Beklenen ölçek Kullanıcılar, istek/saniye 10k kullanıcı, 100 RPS
Bütçe Aylık Azure limiti Maksimum $500/ay
Takım bağlamı Boyut, Azure deneyimi 3 geliştirici, orta düzey
Uyum Yasal gereksinimler HIPAA, GDPR, SOC 2
Kullanılabilirlik Çalışma süresi gereksinimleri 99.9% SLA, 1s RPO

JSON Biçimi:

{
  "application_type": "saas_platform",
  "expected_users": 10000,
  "requests_per_second": 100,
  "budget_monthly_usd": 500,
  "team_size": 3,
  "azure_experience": "intermediate",
  "compliance": ["SOC2"],
  "availability_sla": "99.9%"
}

Anti-Desenler

Anti-Desen Neden Başarısız Olur Bunun Yerine Bunu Yapın
Yeni projeler için ARM JSON şablonları Ayrıntılı, okunması zor, modül yok Bicep kullan — ARM'ye derler, temiz söz dizimi
App Settings'de gizlilikler depolamak Gizlilikler portalda görünür, döndürülemez App Settings'de Key Vault referanslarını kullan
Tek büyük AKS düğüm havuzu Farklı iş yükleri için optimize edilemez Birden fazla düğüm havuzu kullan: sistem, uygulama, işler
PaaS hizmetlerinde genel uç noktalar Saldırı yüzeyi açılır Private Endpoints + VNet entegrasyonu kullan
"Aynen olması gerekebilir" diye aşırı tedarik etmek Birinci ayda bütçe israfı Küçük başla, otomatik ölçekleme kullan, aylık boyuta göre ayarla
Her şey için paylaşılan kaynak grupları Etki alanı, RBAC kabusları Ortam başına ve iş yükü başına bir kaynak grubu
Etiketleme stratejisi yok Maliyetler ve sahiplik izlenemiyor Etiketle: ortam, sahip, maliyet merkezi, uygulama adı
Klasik kaynakları kullanmak Kullanım dışı, sınırlı özellikler Münhasıran ARM/Bicep kaynakları kullan

Çıktı Biçimleri

Mimari Tasarım

  • Sebep açıklamalı desen önerisi
  • Hizmet yığını diyagramı (ASCII)
  • Aylık maliyet tahmini ve ödünleşimler

IaC Şablonları

  • Bicep: Önerilen — ilk taraf, modül desteği, temiz söz dizimi
  • ARM JSON: Gerekli olduğunda Bicep'ten oluşturulur
  • Terraform HCL: azurerm sağlayıcısını kullanarak çoklu bulut uyumluluğu

Maliyet Analizi

  • Mevcut harcama dökümü ve optimizasyon önerileriyle
  • Öncelik işlem listesi (yüksek/orta/düşük) ve uygulama kontrol listesi

Çapraz Referanslar

Yetenek İlişki
engineering-team/aws-solution-architect AWS eşdeğeri — aynı 6 adımlı iş akışı, farklı hizmetler
engineering-team/gcp-cloud-architect GCP eşdeğeri — bulut üçlemesini tamamlar
engineering-team/senior-devops Daha geniş DevOps kapsamı — işlem hatları, izleme, konteynerizasyon
engineering/terraform-patterns IaC uygulaması — Azure'u hedef alan Terraform modülleri için kullan
engineering/ci-cd-pipeline-builder İşlem hattı inşası — Azure DevOps ve GitHub Actions'ı otomatikleştirir

Referans Belgeleri

Belge İçerik
references/architecture_patterns.md 5 desen: web uygulaması, mikroservisler/AKS, sunucusuz, veri işlem hattı, çoklu bölge
references/service_selection.md İşlem, veritabanı, depolama, mesajlaşma, ağ için karar matrisleri
references/best_practices.md Adlandırma kuralları, etiketleme, RBAC, ağ güvenliği, izleme, DR

Benzer skill'ler

brainstorming Design

Herhangi bir yaratıcı çalışmaya başlamadan önce bunu mutlaka kullanın - feature oluştururken, component inşa ederken, functionality eklerken veya davranış değiştirirken. Kullanıcı niyetini, gereksinimleri ve tasarımı implementation öncesinde araştırır.

obra/superpowers ★ 235,495
finishing-a-development-branch Design

Uygulama tamamlandığında, tüm testler geçtiğinde ve çalışmanızı nasıl entegre edeceğinize karar vermeniz gerektiğinde kullanın - merge, PR veya cleanup seçeneklerini sunarak geliştirme sürecinin tamamlanmasını rehberlik eder.

obra/superpowers ★ 235,495
receiving-code-review Design

Kod incelemesi geri bildirimi alırken, önerileri uygulamadan önce kullanın; özellikle geri bildirim belirsiz veya teknik olarak şüpheli görünüyorsa - performatif anlaşmadan veya körü körüne uygulamadan ziyade teknik titizlik ve doğrulama gerekir.

obra/superpowers ★ 235,495
requesting-code-review Design

Görevleri tamamlarken, büyük özellikleri hayata geçirirken veya merge etmeden önce çalışmanın gereksinimleri karşıladığını doğrulamak için kullanın.

obra/superpowers ★ 235,495
using-git-worktrees Design

Yeni bir feature üzerinde çalışmaya başlarken veya implementasyon planını yürütmeden önce kullanın - native araçlar veya git worktree fallback aracılığıyla izole edilmiş bir workspace sağlar.

obra/superpowers ★ 235,495
using-superpowers Design

Herhangi bir konuşma başlatırken kullanın - skill'lerin nasıl bulunacağını ve kullanılacağını belirler, clarification soruları da dahil olmak üzere HERHANGİ bir yanıt vermeden önce skill invocation gerektirir.

obra/superpowers ★ 235,495
Daha fazla: Design →