CI/CD'de Production — nedir, geliştirmede aşamaları ve ortamı

Yazar: IT Sectr Yayınlanma: 2026-04-12 Okuma süresi: 9 dk

Prodüksiyon ortamı, bir uygulamanın gerçek kullanıcılar ve verilerle çalıştığı yerdir. Geliştirme ve staging'den farklı olarak, prodüksiyon kararlılık, performans ve hata toleransına daha fazla dikkat gerektirir. DORA (2024)'ya göre, yüksek DevOps olgunluğuna sahip ekipler, düşük olgunluktaki ekiplere göre 200 kat daha sık prodüksiyona dağıtım yapar. CI/CD pipeline bu süreci otomatikleştirerek insan hatası riskini azaltır ve değişikliklerin kullanıcılara teslimatını hızlandırır.

Ana Noktalar

  • Production, uygulamanın gerçek kullanıcılar için kullanılabilir olduğu nihai dağıtım ortamıdır
  • CI/CD pipeline, prodüksiyona derleme, test ve dağıtımı otomatikleştirir
  • Staging'den prodüksiyon, izole veriler, sıkı erişim ve SLA gereksinimleriyle ayrılır
  • İzleme, prodüksiyonda çalışma süresi, gecikme, hata oranı ve trafik takibini içerir
  • Güvenlik, prodüksiyon ortamının çok faktörlü erişim ve tüm değişikliklerin denetimine dayanır

CI/CD'de Production Nedir?

CI/CD bağlamında prodüksiyon, uygulama yaşam döngüsünün son aşamasıdır; derleme ve testin tüm aşamalarını geçen kod son kullanıcılar için kullanılabilir hale gelir. Geliştirme ve staging ortamlarının aksine, prodüksiyon ortamı gerçek veri ve yüklerle çalışır, bu da güvenilirlik ve performans üzerinde özel gereksinimler oluşturur.

Prodüksiyon ortamının rolü

Prodüksiyon ortamı yalnızca bir sunucu değil, yük dengeleyiciler, veritabanları, önbellek katmanları, CDN ve izleme sistemlerini içeren bir altyapı bütünüdür. Her bileşen hataya dayanıklı ve ölçeklenebilir olmalıdır. Mobil geliştirmede, prodüksiyon ayrıca istemci uygulamasını destekleyen backend hizmetlerini, API ağ geçitlerini ve push altyapısını da içerir.

Prodüksiyon ortamı gereksinimleri

Prodüksiyon ortamı katı kriterleri karşılamalıdır: %99,9 ve üzeri kullanılabilirlik, API yanıt süresi 200 ms'yi aşmamalı, felaket kurtarma desteği (SLA dahilinde RTO ve RPO). Mobil uygulamalar için ayrıca çökme raporlama, kullanım analitiği ve deneyler için A/B platformları gerekir. CI/CD pipeline, her dağıtımdan önce otomatik kontrollerle bu gereksinimlere uygunluğu sağlar.

Prodüksiyona Dağıtım Aşamaları

Prodüksiyona dağıtım, CI/CD pipeline aracılığıyla otomatikleştirilmiş çok aşamalı bir süreçtir. Her aşama, hatalı kodun prodüksiyona ulaşmasını önleyen kontroller içerir. Tipik bir mobil uygulama pipeline'ı örneğini kullanarak ana aşamaları inceleyelim.

Prodüksiyon için CI/CD pipeline

Pipeline, deponun ana dalına yapılan bir commit ile başlar. Push'tan sonra otomatik derleme ve birim testler başlatılır, ardından entegrasyon testleri ve kod kalitesi kontrolleri gelir. Tüm aşamaların başarıyla tamamlanmasının ardından yapıt, derleme kaydına yayınlanır ve son doğrulama için staging'e dağıtılır. Staging'de onaylandıktan sonra pipeline, prodüksiyon dağıtımına geçer.

groovy
@Library("shared-lib") _

pipeline {
    agent any

    stages {
        stage("Build") {
            steps {
                sh "cd app && ./gradlew assembleRelease"
            }
        }
        stage("Test") {
            steps {
                sh "cd app && ./gradlew testRelease"
            }
        }
        stage("Deploy to Staging") {
            steps {
                sh "deploy-staging.sh"
            }
        }
        stage("Deploy to Production") {
            input "Deploy to production?"
            steps {
                sh "deploy-production.sh"
            }
        }
    }
}

Dağıtım otomasyonu

Prodüksiyona otomatik dağıtım, sıfır kesinti dağıtım stratejilerini kullanır: rolling update, blue-green deployment veya canary release. Rolling update'te, yeni uygulama örnekleri hizmeti durdurmadan eski örneklerin yerini kademeli olarak alır. Blue-green deployment, iki özdeş ortamı korur ve trafiği anında değiştirerek sorun durumunda hızlı geri alma sağlar. Strateji seçimi, hizmetin kritikliğine ve kabul edilebilir kesinti süresine bağlıdır. Mobil uygulamalar için prodüksiyona dağıtım, aşamalı kullanıma sunma ile uygulama mağazalarında (App Store Connect, Google Play Console) yayınlamayı içerir ve bu, ikili dosyaları yükleme, meta verileri doldurma ve incelemeye gönderme dahil olmak üzere yayınlama sürecini otomatikleştirmek için mağaza API'leriyle ek CI/CD entegrasyonu gerektirir.

Dağıtım sonrası kontroller

Prodüksiyona başarılı dağıtımın ardından CI/CD pipeline, temel hizmet işlevselliğini doğrulayan bir dizi duman testi başlatır: uç nokta kullanılabilirliği, API yanıtlarının doğruluğu, normal sınırlar içinde yanıt süresi. Mobil uygulamalar için ayrıca yetkilendirme kapasitesi, veri senkronizasyonu ve ödeme entegrasyonlarının doğru çalışması kontrol edilir. Duman testleri başarısız olursa, pipeline otomatik olarak önceki kararlı sürüme geri alma başlatır ve ekibe bir bildirim gönderir. Dağıtım sonrası izleme, yükseltilmiş uyarı seviyesiyle 30-60 dakika devam eder — bu, otomatik testler tarafından kapsanmayan sorunları tespit etme penceresidir.

StratejiKesinti SüresiGeri Alma HızıKarmaşıklık
Rolling updateMinimumKademeliDüşük
Blue-greenSıfırAnındaOrta
CanarySıfırKademeliYüksek

Prodüksiyon ve Test Ortamları Arasındaki Farklar

Prodüksiyon ve daha az katı ortamlar arasındaki temel fark, gerçek kullanıcı verileri ve yükleriyle çalışmaktır. Staging ortamı, yayın öncesi son testler için tasarlanmıştır ancak sentetik veya anonimleştirilmiş veriler kullanır. Prodüksiyon ise canlı işlemleri, kişisel verileri ve kritik derecede önemli operasyonları işler ve bu da yönetimde temelde farklı bir yaklaşım gerektirir.

Yapılandırma ve altyapı

Prodüksiyon ortamı yapılandırması diğer ortamlardan kesinlikle izole edilmelidir. Bu, ortam değişkenleri, veritabanı bağlantı dizeleri, API anahtarları ve sertifikalar için geçerlidir. Prodüksiyon altyapısı, hata toleransını sağlamak için genellikle birden çok kullanılabilirlik bölgesinde çoğaltılır. Mobil uygulamalar için prodüksiyon, test yapılarında bulunmayan Apple App Store ve Google Play yapılandırmalarını da içerir.

Veri yönetimi

Prodüksiyonda, test için gerçek veri kullanmak kesinlikle yasaktır — bu amaçla staging ve geliştirme ortamları vardır. Veritabanı yapısındaki tüm değişiklikler, CI/CD pipeline'ının otomatik olarak uyguladığı geçişlerden geçmelidir. Prodüksiyon verisi yedeklemesi, otomatik bütünlük doğrulaması ile bir programa göre gerçekleştirilir. Saklama politikası, GDPR gereksinimleri ve diğer düzenlemelere uygun olarak yedeklerin depolama süresini belirler.

Prodüksiyon Altyapısını İzleme

Prodüksiyon izleme, metriklerin, günlüklerin ve izlerin toplanması ve analiz edilmesinin sürekli bir sürecidir. Kapsamlı izleme olmadan, SLA'yı garanti etmek ve olayları zamanında tespit etmek imkansızdır. Modern izleme yaklaşımı üç temele dayanır: metrikler (sayısal göstergeler), günlükler (yapılandırılmış olay kayıtları) ve izler (istek izleme).

Temel metrikler

Prodüksiyon ortamının temel metrikleri şunları içerir: çalışma süresi (hizmet kullanılabilirliği), gecikme (yanıt gecikmesi), hata oranı (hata yüzdesi), iş hacmi (bant genişliği) ve doygunluk (kaynak yük seviyesi). Mobil uygulamalar için başlangıç süresi metrikleri, çökmesiz oran ve veri senkronizasyon süresi kritiktir. Uyarılar, ekip SLA ihlal edilmeden önce bildirim alacak şekilde SLO'ya (Hizmet Seviyesi Hedefleri) göre yapılandırılır.

İzleme araçları

Prodüksiyon altyapısını izlemek için özel platformlar kullanılır: metrik toplama için Datadog, New Relic, Grafana + Prometheus, mobil uygulamalardaki hataları izlemek için Sentry ve Crashlytics. Günlükler, ELK yığını (Elasticsearch, Logstash, Kibana) veya Splunk aracılığıyla merkezileştirilir. İstek izleme, Jaeger veya Zipkin kullanılarak uygulanır. Tüm araçlar, yeni bir hizmet dağıtılırken otomatik pano oluşturma için CI/CD pipeline ile entegre edilir. Olay yanıt sistemi (PagerDuty, Opsgenie), tüm izleme araçlarından uyarıları alır ve dönüşüm ve yükseltme kurallarına göre otomatik olarak nöbetçi sorumlu kişiyi atar. Her olay türü için bir runbook, depoda saklanır ve kodla birlikte sürümlenir ve kurtarma talimatlarının güncelliğini sağlar.

Prodüksiyon Ortamı Güvenliği

Prodüksiyon ortamı güvenliği, altyapıyı, verileri, erişimi ve dağıtım sürecini kapsayan çok katmanlı bir koruma sistemidir. Her katman, birinin ele geçirilmesinin tüm sistemin ele geçirilmesine yol açmayacağı şekilde yapılandırılmalıdır. CI/CD pipeline, her pipeline aşamasında otomatik kontroller, güvenlik açığı taraması ve uyumluluk kontrolü yoluyla güvenliğin sağlanmasında anahtar rol oynar.

Erişim ve roller

Prodüksiyon ortamına erişim, en az ayrıcalık ilkesiyle sıkı bir şekilde sınırlandırılmıştır. Geliştiricilerin prodüksiyon sunucularına doğrudan erişimi yoktur — tüm değişiklikler bir onay mekanizmasıyla CI/CD pipeline üzerinden geçer. Acil erişim için, otomatik dönüşüm ve tam eylem günlüğü ile geçici kimlik bilgileri kullanılır. Dört göz ilkesi (herhangi bir işlem iki kişinin onayını gerektirir) prodüksiyon operasyonları için standarttır.

Değişiklik denetimi

Prodüksiyondaki her değişiklik denetim sisteminde kaydedilir: dağıtımı kim başlattı, hangi commit dağıtıldı, hangi kontroller geçildi, dağıtım ne kadar sürdü. CI/CD'nin olay yönetim sistemleriyle (PagerDuty, Opsgenie) entegrasyonu, dağıtım başarısız olduğunda veya SLO ihlal edildiğinde otomatik bilet oluşturulmasını sağlar. Tüm prodüksiyon günlükleri, SOC2 ve ISO 27001 gereksinimlerine uygun olarak en az 90 gün saklama süresiyle değişmez bir depoda saklanır.

Sıkça Sorulan Sorular

Prodüksiyon staging'den nasıl farklıdır?

Staging, sentetik veya anonimleştirilmiş veriler kullanan yayın öncesi son test ortamıdır. Prodüksiyon gerçek kullanıcılar, yükler ve hassas verilerle çalışır, bu nedenle prodüksiyondaki güvenlik ve hata toleransı gereksinimleri önemli ölçüde daha yüksektir. Staging ve prodüksiyon, yapılandırmada mümkün olduğunca aynı olmalı, ancak tamamen izole edilmelidir.

Prodüksiyona ne sıklıkta dağıtım yapılmalıdır?

Dağıtım sıklığı, CI/CD süreçlerinin olgunluğuna ve uygulama türüne bağlıdır. DORA (2024)'ye göre, yüksek performanslı ekipler günlük veya hatta günde birkaç kez dağıtım yapar. Mobil uygulamalar için sıklık, App Store ve Google Play inceleme döngüsüyle sınırlıdır, ancak backend hizmetleri kapsamlı otomatik testlerle günde birkaç kez dağıtılabilir.

Prodüksiyon dağıtımı başarısız olursa ne yapılmalı?

Dağıtım başarısız olduğunda, derhal geri alma prosedürü başlatılır — önceki kararlı sürüme dönülür. CI/CD pipeline, ana metrikler (hata oranı, gecikme) kötüleştiğinde otomatik geri almayı desteklemelidir. Stabilizasyondan sonra, bir post-mortem analizi yapılır: temel neden belirlenir, bir düzeltme görevi oluşturulur ve olayın tekrarını önlemek için otomatik kontroller eklenir.

Prodüksiyon için hangi metrikler kritiktir?

Kritik metrikler: çalışma süresi (hizmet kullanılabilirliği), gecikme (p95 ve p99 yanıt süresi), hata oranı (HTTP 5xx ve istisna yüzdesi), doygunluk (CPU, bellek, disk, ağ) ve iş hacmi (RPS). Mobil uygulamalar için çökmesiz oran, soğuk başlatma süresi ve ANR (Uygulama Yanıt Vermiyor) sıklığı da önemlidir. Her metriğin bir SLO'su ve karşılık gelen bir uyarısı olmalıdır.

Prodüksiyon insan hatalarından nasıl korunur?

Ana koruma yöntemi, CI/CD pipeline aracılığıyla otomasyondur: tüm değişiklikler zorunlu kontroller ve bir inceleme mekanizmasıyla pipeline'dan geçer. Ek olarak şunlar uygulanır: dört göz ilkesi (iki kıdemli geliştiricinin onayı), kademeli özellik sunumu için özellik işaretleri, riski azaltmak için canary dağıtımı ve kritik senaryoları kapsayan otomatik testler. Prodüksiyona doğrudan erişim yalnızca onaylanmış DevOps prosedürleri aracılığıyla izin verilir.

Özet

  • Production, gerçek kullanıcılar ve kritik derecede önemli verilerle uygulama çalıştırmak için nihai ortamdır
  • CI/CD pipeline, dağıtım sürecini otomatikleştirir: derleme ve testten dağıtım ve izlemeye kadar
  • Sıfır kesinti stratejileri (rolling update, blue-green, canary) sürekli prodüksiyon çalışmasını sağlar
  • İzleme, zorunlu SLO'lar ve uyarılarla metrikler, günlükler ve izlere dayanır
  • Güvenlik, en az ayrıcalık, dört göz onayı ve tüm değişikliklerin tam denetimi ilkesine dayanır
  • Dağıtım sıklığı, DevOps olgunluğu ve test otomasyonu ile doğrudan ilişkilidir
  • Geri alma prosedürü önceden hazırlanmalıdır: metrikler kötüleştiğinde otomatik geri alma ve her olaydan sonra post-mortem

Anahtar teslim bir mobil uygulama geliştireceğiz

IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.

Projeyi tartış

Ayrıca okuyun