Ana içeriğe geç

Yan yana

DevOpsvsSite Reliability Engineering

DevOps ile SRE arasındaki fark nedir?

Güncellendi 2 dk okuma6 fark

Kısaca

DevOps, hızlı ve güvenli yayın için geliştirme ile operasyonu birleştiren kültürdür; SRE ise Google'ın üretimi güvenilirlik hedefleriyle işletme pratiğidir.

DevOps

Geliştirme ve Operasyon

DevOps, yazılım geliştirme ile BT operasyonlarını birleştirerek yazılımın daha hızlı ve güvenilir sunulmasını sağlayan bir kültür ve pratikler bütünüdür.

DevOps sayfasını oku

Site Reliability Engineering

Site reliability engineering, operasyona yazılım mühendisliğini uygulayan ve hizmetleri otomasyon ile ölçülebilir hedeflerle güvenilir tutan bir disiplindir.

Site Reliability Engineering sayfasını oku

DevOps ve Site Reliability Engineering karşılaştırması

ÖzellikDevOpsSite Reliability Engineering
NedirBir kültür ve uygulamalar bütünüYöntemleri tanımlı bir disiplin ve iş rolü
Kökeni2000'lerin sonundaki DevOps hareketiGoogle, 2003
Asıl hedefDeğişiklikleri hızlı ve güvenle teslim etmekServisleri üzerinde anlaşılmış bir seviyede güvenilir tutmak
Başarı nasıl ölçülürDağıtım sıklığı ve teslim süresi gibi teslimat ölçümleriSLO'lar, hata bütçeleri ve olay verileri
Tipik işCI/CD hatları, otomasyon, kod olarak altyapıNöbet, olay müdahalesi, kapasite planlama, angarya işleri azaltmak
İlişkiGeniş fikirO fikri uygulamaya dökmenin somut bir yolu

Fark, açıklamalı

DevOps, 2000'lerin sonunda, geliştiricilerin kodu ayrı bir operasyon ekibine duvarın üzerinden atmasına bir tepki olarak doğdu. Ortak sahiplenme, otomasyon, sürekli entegrasyon ve teslimat, kod olarak altyapı gibi uygulamalardan oluşan bir kültürdür ve değişiklikleri sık ve güvenilir biçimde teslim etmeyi hedefler. Site Reliability Engineering ya da kısaca SRE ise 2003'te Google'da, Ben Treynor Sloss üretim sistemlerini işletme işini yazılım mühendislerine verdiğinde başladı.

Fark, genişliğe karşı ayrıntıdır. DevOps hedefleri ve alışkanlıkları tarif eder ama bunların nasıl ölçüleceğini belirlemez. SRE ise somut araçlar getirir: hizmet seviyesi hedefleri (SLO) bir servisin ne kadar güvenilir olması gerektiğini, hata bütçesi (error budget) yayınlar yavaşlamadan önce ne kadar güvenilmezliğin kabul edilebileceğini belirler; mühendislerin otomasyona vakit bulması için angarya işler (toil) sınırlanır ve olaylar suçlamasız postmortem'lerle kapanır.

Google bu ilişkiyi "class SRE implements interface DevOps" diye özetler: SRE, DevOps fikirlerini uygulamanın yollarından biridir. Birçok şirkette roller iç içe geçer; platform ya da DevOps ekipleri hatları (pipeline) ve araçları kurarken SRE'ler en kritik servislerin güvenilirliğine, nöbetine, kapasitesine ve olay müdahalesine odaklanır.

Sık yapılan bir yanlış, DevOps'un bir unvan ya da bir araç seti olduğu düşüncesidir. CI/CD araçları satın almak ya da operasyon ekibinin adını değiştirmek, geliştirme ile operasyonun birlikte çalışma biçimini değiştirmez; SRE de yeni bir isim almış operasyon değildir: elle yapılan işleri ortadan kaldıran yazılımı mühendislerin yazmasına dayanır.

Hangisini kullanmalısınız?

DevOps şu durumlarda doğru seçim:

  • Geliştirme ile operasyonun birlikte çalışma biçimini değiştirmek istiyorsunuz.
  • Asıl sorununuz yavaş ya da riskli yayınlar.
  • Birçok ekibin paylaştığı hatlar ve otomasyon kuruyorsunuz.

Site Reliability Engineering şu durumlarda doğru seçim:

  • Servisleriniz kritik ve güvenilirliğin net hedeflere ihtiyacı var.
  • Düzenli bir nöbet ve olay süreci gerekiyor.
  • Yeni özelliklerle kararlılık arasında hata bütçesi gibi verilere dayanarak karar vermek istiyorsunuz.

Sık sorulan sorular

SRE bir tür DevOps mu?

Google'ın ifadesiyle SRE, DevOps'u gerçekleştirir: DevOps ilkelerini üretim ortamını işletmeye uygulamanın somut ve mühendislik odaklı yollarından biridir.

Bir şirketin ikisine de ihtiyacı var mı?

Ayrı ekipler olarak şart değil. Küçük şirketler çoğu zaman ayrı SRE'ler olmadan DevOps uygular; büyük şirketler en kritik servisleri için SRE ekipleri ekler.

Hata bütçesi nedir?

Bir SLO'nun izin verdiği güvenilmezlik miktarıdır. Yüzde 99,9 erişilebilirlik hedefinde bütçe ayda yaklaşık 43 dakikalık kesintidir; bu süre tükendiğinde ekip yeni özellikler çıkarmadan önce kararlılık üzerinde çalışır.

Daha fazla

Ayarlar