Azure Üretim Ortamı Check-listesi

06 October 2025
Summary: Bu makale, Azure’da bir üretim ortamı (production environment) kurmadan önce yapılması gereken teknik kontrolleri içerir. Ağ, güvenlik, izleme, yedekleme, CI/CD, maliyet yönetimi ve otomasyon bileşenleri adım adım incelenir.

Azure Üretim Ortamı Check-listesi

Giriş

Azure üzerinde bir sistemin üretime (production) alınması, yalnızca uygulamayı çalıştırmaktan ibaret değildir.
Gerçek bir üretim ortamı; güvenlik, performans, süreklilik, yedekleme, gözlemlenebilirlik (observability) ve maliyet optimizasyonu açısından test edilip onaylanmalıdır.

Bu doküman, Azure ortamınızı canlıya almadan önce uygulamanız gereken teknik kontrol listesini sunar.


Gereksinimler

  • Azure aboneliği (Enterprise veya Pay-As-You-Go)
  • Azure CLI 2.60+
  • PowerShell 7+
  • Bicep CLI (v0.24+)
  • Yönetici izinleri (Contributor veya Owner)
  • Mevcut Resource Group yapısı

1️⃣ Ağ ve Güvenlik (Networking & Security)

1.1 Sanal Ağ (VNet)

az network vnet create \
  --name prod-vnet \
  --resource-group rg-prod \
  --address-prefix 10.10.0.0/16
  • Her uygulama katmanı için ayrı Subnet oluşturun:

    • 10.10.1.0/24 → Frontend
    • 10.10.2.0/24 → Backend
    • 10.10.3.0/24 → Database
  • Network Security Group (NSG) kurallarını yalnızca gerekli portlara izin verecek şekilde tanımlayın.

  • Azure Firewall veya Azure Application Gateway (WAF) kullanın.

1.2 DNS ve Peering

  • Private DNS Zone kullanarak servisler arası iç çözümleme sağlayın.
  • Hub–Spoke topolojisi ile yönetim ağı (Hub) ve uygulama ağı (Spoke) ayrılmalıdır.
  • az network vnet peering komutu ile çift yönlü peering yapılandırın.

1.3 Güvenlik İlkeleri

  • NSG, Azure Firewall ve Defender for Cloud aktif olmalı.
  • Just-In-Time (JIT) erişim yalnızca yönetici hesaplarına açık olmalı.
  • Key Vault içinde gizli bilgiler (connection string, secret, certificate) tutulmalı.

2️⃣ Kimlik ve Erişim Yönetimi (IAM & RBAC)

2.1 Rol Bazlı Erişim

New-AzRoleAssignment -ObjectId "" -RoleDefinitionName "Reader" -Scope "/subscriptions//resourceGroups/rg-prod"
  • Owner, Contributor, Reader rollerini minimum ayrıcalık (least privilege) prensibiyle dağıtın.

2.2 Managed Identity

az keyvault set-policy --name kv-prod --object-id  --secret-permissions get list
  • Uygulama servislerine System-Assigned veya User-Assigned Managed Identity ekleyin.
  • Key Vault erişimi için policy tanımlayın.

2.3 Policy ve Blueprint

  • Azure Policy ile kaynak standardizasyonunu zorunlu kılın (örn. region, naming convention).
  • Gereksiz Public IP veya açık portlara izin veren kaynakları denetleyin.

3️⃣ İzleme ve Gözlemlenebilirlik (Monitoring & Observability)

3.1 Log Analytics

az monitor diagnostic-settings create \
  --name diag-prod \
  --resource  \
  --workspace  \
  --logs '[{"category":"AllLogs","enabled":true}]'

3.2 Uyarılar (Alerts)

  • CPU, bellek, disk, ağ trafiği ve hata oranı için metric alert oluşturun.
  • Activity Logs’u denetleyin → anormal erişimler için e-posta bildirimi.

3.3 Application Insights

  • Web uygulamaları için Application Insights entegrasyonu zorunludur.
  • Dağıtık izleme (distributed tracing) aktif edilmelidir.

4️⃣ Yedekleme ve Felaket Kurtarma (Backup & DR)

az backup vault create \
  --resource-group rg-prod \
  --name vault-prod \
  --location westeurope
az backup protection enable-for-vm \
  --policy-name DefaultPolicy \
  --vault-name vault-prod \
  --vm 
  • Yedekleme sıklığı: Günlük
  • Saklama süresi: 30 gün
  • Geo-Redundant Storage (GRS) önerilir.
az sql db replica create \
  --name sqldb-prod \
  --partner-server sql-dr \
  --resource-group rg-prod

5️⃣ Performans ve Ölçeklenebilirlik

az monitor autoscale create \
  --resource-group rg-prod \
  --resource  \
  --min-count 2 --max-count 6 --count 2
  • VMSS (Virtual Machine Scale Set) veya App Service Autoscale aktif olmalı.

  • Azure Load Balancer → L4 yönlendirme

  • Application Gateway → L7 yönlendirme

  • Traffic Manager → Global DNS tabanlı yük dengeleme

  • Azure CDN veya Front Door ile global içerik önbellekleme.

  • Redis Cache → oturum ve API yanıt hızlandırma.


6️⃣ CI/CD Entegrasyonu

trigger:
  branches: [ main ]

stages:
  - stage: Build
    jobs:
      - job: build
        steps:
          - task: DotNetCoreCLI@2
            inputs:
              command: 'build'

  - stage: Deploy
    jobs:
      - deployment: deploy
        environment: 'production'
        strategy:
          runOnce:
            deploy:
              steps:
                - task: AzureWebApp@1
                  inputs:
                    azureSubscription: 'Prod-Connection'
                    appName: 'web-prod'
name: Deploy to Azure
on:
  push:
    branches: [ "main" ]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: azure/webapps-deploy@v3
        with:
          app-name: web-prod
          publish-profile: ${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE }}

7️⃣ Maliyet, Policy ve Tag Yönetimi

az consumption budget create \
  --amount 500 \
  --category cost \
  --name budget-prod \
  --resource-group rg-prod \
  --time-grain monthly \
  --start-date 2025-01-01 --end-date 2025-12-31
  • Cost Analysis → servis bazlı maliyet kontrolü
  • Budget Alerts → aylık limit tanımlayın
  • Resource Tagging → Environment=Production, Owner=ITOps, CostCenter=1001
  • Azure Policy → “Allowed Locations” ve “Require Tag” politikaları etkin olmalı.

8️⃣ Go-Live Teknik Check-listesi

Kategori Kontrol Durum
NSG & Firewall kuralları güncel mi?
DNS Private DNS tanımlı mı?
VM OS Patch ve Agent güncel mi?
App Service Application Insights bağlı mı?
Veritabanı Geo-Replication etkin mi?
Backup Son yedek başarıyla tamamlandı mı?
Monitoring Uyarılar tanımlandı mı?
Security Key Vault erişimi sınırlı mı?
Policy Tag ve Policy kontrolleri geçerli mi?
CI/CD Otomatik deploy pipeline’ı çalışıyor mu?

Sonuç

Bu teknik kontrol listesi, Azure ortamınızı üretim öncesi tüm açılardan doğrulamanıza yardımcı olur:

  • Güvenlik → En az ayrıcalıklı erişim ve ağ segmentasyonu
  • Performans → Ölçeklenebilir kaynaklar ve yük dengeleme
  • Süreklilik → Yedekleme, DR ve izleme stratejileri
  • Governance → Policy, Tagging ve maliyet optimizasyonu

İpucu: Azure Well-Architected Framework’teki beş sütun (Cost, Reliability, Security, Performance, Operational Excellence) bu checklist’in temelini oluşturur.

Back to Article Page