SRE bağlamı

Tamamlandı

SRE ile ilişkilendirilmiş bazı uygulamaları incelemeden önce, önceki ünitede öğrendiğimiz fikirlerden bazılarını bağlama oturtmak yararlı olabilir. Bu kısa ünitede, SRE'nin geçmişini ve bildiğiniz diğer operasyonel uygulamalarla ilişkisini öğreneceğiz. Bu bize daha sonra başarı elde etmek için daha iyi bir konuma getirecek çünkü bu uygulamalar bağlamına oturtulduğunda daha anlamlı olacak. Ayrıca, “SRE'nin ... ile arasında ne fark var” sorusunu soran arkadaşlarınıza verecek yanıtınız olacak.

Geçmiş

Son derece özetlenmiş olarak SRE'nin geçmişi 2003'te Google'da ortaya çıkmasıyla başladı. Ben Treynor (şimdi Treynor Sloss), Google’da “Üretim Ekibi” liderliğini aldı (ekip o sırada yalnızca yedi yazılım mühendisinden oluşuyordu) ve kendi ünlü sözleriyle "yazılım mühendisinden bir operasyon işlevi tasarlaması istendiğinde ne oluyor" olarak açıklanan fikri ortaya attı. Burada geçmişi anlamak önemli çünkü SRE'nin bununla ilk kez karşılaşan operasyondaki insanlara neden fazlasıyla "yazılım mühendisliği" gibi geldiğini açıklamaya yardımcı olur. O alanda aldığı, temel bir araç olarak kodlamanın ve kaynak denetim sistemlerinin önemi gibi değerleri ve araçları benimsedi. Google SRE'nin ilk ve geçerli uygulaması O'Reilly'nin yayımladığı iki kitapta gayet iyi belgelenmişti (Başlarken ünitesine bakın).

Google'daki insanlar şirketten ayrıldıkça (ve şirketteki insanlar da herkese açık alanlarda uygulamalardan daha fazla bahsetmeye başladıkça) SRE endüstrideki diğer kuruluşlara da yayılmaya başladı. SRE yeni kuruluşlara yayıldıkça, söz konusu kuruluşlar SRE ilkelerini ve uygulamalarını benimsediler ve kendi yerel kültürlerine uyarladılar. Bu genişleme süreci, sahada SRE'nin bir dizi farklı uygulamasını ortaya çıkardı.

DevOps ve SRE

Daha geniş kapsamıyla endüstri ölçeklendirme, geliştirme hızı ile operasyonel kararlılık dengesi ve diğer yazılım teslimi sorunları çerçevesinde site güvenilirliği mühendisliği hareketini doğuran aynı güçlüklerle karşılaşıyordu. Google (ve o sırada birkaç büyük şirket) dışında bu güçlükleri gidermeye yönelik paralel çalışmalar DevOps'u ortaya çıkardı.

DevOps hakkında çok iyi bilgi için bkz https://docs.microsoft.com/azure/devops/learn/ ..

Not

DevOps ile SRE'nin aynı güçlükleri gidermeye yönelik iki farklı ve paralel girişim olduğunu belirtmek önemlidir. SRE, DevOps'u izleyen bir sonraki gelişim adımı değildir. SRE, "DevOps'un geleceği" olmak için oluşturulmadı.

SRE ile DevOps'un arasındaki farklılıklar, sahada hala önemli ölçüde tartışılan bir konudur. Geniş ölçekte kabul görmüş bazı farklılıkları şunlardır:

  • SRE güvenilirliğe odaklanan bir mühendislik disiplinidir, DevOps ise normalde Geliştirme ve Operasyon kuruluşlarının birbirinden ayrı olmasıyla ilişkilendirilen siloları acilen ortadan kaldırma gereğinden doğan kültürel bir harekettir.
  • SRE, "Ben site güvenilirliği mühendisiyim (SRE)" ifadesinde olduğu gibi bir rolün adı olabilir, DevOps olamaz. Net bir şekilde belirtmek gerekirse, kimse geçimini sağlamak için "DevOps" olmaz.
  • SRE daha kuralcı olma eğilimindedir, DevOps kasıtlı olarak böyle değildir. Bu bağlamda akla gelen en yakın şey sürekli tümleştirme/sürekli teslim ve Çeviklik ilkelerinin neredeyse evrensel olarak benimsenmesidir.

Operasyonlara ilişkin iki uygulama olarak DevOps ve SRE, izleme/gözlemlenebilirlik ve otomasyon konularına duyulan ilgiyi paylaşır (belki farklı nedenlerle). SRE uygulamalarını ve ilkelerini mevcut DevOps uygulaması bulunan bir kuruluşa aktarmanın kolay olmasının bir nedeni de budur. Bu işlem dikkatle ve kararlılıkla yapılmalıdır. Ayrıca kimsenin ani bir geçiş yapması gerekmez; artımlı olarak yapılabilir ve böyle de yapılmalıdır.

Uyarı

Doğrudan kuruluştaki insanların unvanlarını değiştirmek, hemen hiç başarılı olmamış bir uygulama stratejisidir. SRE'nin sağlayacağı avantajları getirmeyecektir. Daha iyi bazı öneriler için bu ünitenin Başlarken bölümüne bakın.

Sonuç

Bu kısa ünite, SRE ve DevOps çerçevesini biraz bağlamına oturtmayı amaçladık. SRE ve DevOps birbirine yakın operasyon ekolleridir ve en iyi yaklaşım bu şekilde ele alınmalarıdır.

Artık SRE'nin arka planını kısaca gözden geçirdiğimize göre, şimdi doğrudan bazı temel ilkelerine geçelim.

Bilginizi ölçün

1.

Kökeni göz önüne alındığında SRE üzerinde hangi uzmanlık alanı en büyük etkiye sahiptir?

2.

İlk olarak DevOps mu, SRE mi çıktı?

3.

SRE, DevOps evriminde sonraki adım mıdır?

4.

Gerek DevOps, gerekse SRE için çok önemli olan iki en iyi yöntem nedir?