Hosting & Altyapı

DevOps ve Otomatik Dağıtım Nedir? İşletmeye Faydası

DevOps ve otomatik dağıtım (CI/CD) nedir, bir işletmeye ne kazandırır, ne zaman gerekir ve ne zaman gereksiz kalır: sade bir karar rehberi.

rabbitclip ekibiYayın: 4 dk okuma

Kısa cevap

DevOps, bir yazılımı geliştiren kişilerle onu canlıda çalıştıran kişilerin aynı süreç içinde, aynı hedefe göre çalışmasıdır. Otomatik dağıtım (CI/CD) bu düzenin en görünür parçasıdır: bir değişiklik kaydedildiğinde kod kendiliğinden denenir, derlenir ve her seferinde aynı adımlarla siteye yayınlanır. İşletme açısından anlamı şudur: yayın bir kişinin hafızasına ya da elle yaptığı dosya kopyalamaya bağlı kalmaz, tekrarlanabilir ve geri alınabilir bir iş olur.

Bu kavramlar çoğu zaman teknik ekiplerin kendi aralarındaki bir konu gibi anlatılır. Oysa bir yöneticinin sorduğu sorular çok sadedir: sitedeki düzeltme neden iki gün sürüyor, yayından sonra bir şey bozulursa eski hale kim ve nasıl dönecek, sitenin nasıl yayınlandığını yalnız bir kişi mi biliyor. DevOps bu soruların cevabını bir alışkanlığa ve bir düzene bağlar.

Bu yazıda kavramı sade tutuyor, işletmeye somut katkısını, hangi durumda gereksiz kaldığını ve kurarken yapılan hataları anlatıyoruz.

DevOps tam olarak neyi değiştirir?

Eski düzende iş iki yere bölünür. Bir taraf özelliği yazar, öteki taraf onu sunucuya koyar ve çalışır halde tutar. Araya giren devir her seferinde bekleme, yanlış anlama ve 'bende çalışıyordu' cümlesi üretir. DevOps bu ayrımı küçültür: kodu yazan kişi onun nasıl yayına çıktığını, sunucuyu yöneten kişi de kodun neye ihtiyaç duyduğunu bilir.

Burada kimsenin unvanı değişmez; değişen, işin tek bir hat üzerinde akmasıdır. Yazılan, denenen, yayınlanan ve izlenen şey aynı düzenin parçası olur. Küçük bir ekip için bu, yeni bir uzman işe almak anlamına gelmez; mevcut işi daha az sürprizle yapmak anlamına gelir.

Otomatik dağıtım adım adım nasıl işler?

Otomatik dağıtım, bir değişikliğin geliştiricinin bilgisayarından canlı siteye giden yolunu bir betiğe bağlar. Aynı yol her seferinde aynı sırayla yürüdüğü için hata payı, yayını yapan kişiye değil düzene bağlanır.

Tipik bir hat şu adımlardan oluşur; her adım başarısız olursa hat durur ve canlı site olduğu gibi kalır.

  • Geliştirici değişikliği kod deposuna gönderir
  • Sistem kodu derler ve otomatik testleri çalıştırır
  • Testler geçerse yeni sürüm hazırlanır (paketlenir)
  • Sürüm önce bir deneme ortamına, sonra canlı siteye yayınlanır
  • Yayından sonra sayfanın açıldığı kontrol edilir; bozulursa önceki sürüme dönülür

İşletmeye somut faydası nedir?

En belirgin fayda hızdır, ama asıl değer öngörülebilirliktir. Yayın tek bir düğmeye ya da tek bir kod gönderimine indiğinde küçük düzeltmeler günlerce biriktirilmez; fiyat güncellemesi, kampanya sayfası ya da yazım hatası aynı gün yayına çıkabilir. Yayın sıklaştıkça her değişiklik küçülür, küçük değişikliğin riski de küçüktür.

İkinci fayda geri dönüş kolaylığıdır. Her sürüm kayıtlı olduğu için yayından sonra bir sorun çıkarsa önceki çalışan sürüme kısa sürede dönmek mümkündür. Üçüncüsü bilgi sahipliğidir: yayın süreci yazılı bir hatta tarif edildiği için sitenin nasıl yayınlandığını yalnız bir kişi bilmez; o kişi izne çıktığında ya da ayrıldığında iş durmaz.

Hangi işletmede gerekir, hangisinde gerekmez?

Her site için gerekli değildir. Yılda birkaç kez güncellenen, tek sayfalık bir tanıtım sitesinde otomatik dağıtım hattı kurmak, sağladığı kazancı aşan bir kurulum ve bakım yükü getirebilir. Böyle bir sitede düzenli yedek, güvenli bir yayın yöntemi ve değişikliklerin kayıt altında tutulması çoğu zaman yeterlidir.

Hat şu durumlarda karşılığını verir: sitede sık değişiklik yapılıyorsa, birden fazla kişi aynı kodla çalışıyorsa, e-ticaret ya da randevu gibi bozulması doğrudan gelir kaybı yaratan akışlar varsa, birden fazla ortam (deneme ve canlı) yönetiliyorsa. Karar ölçütü sitenin büyüklüğü değil, değişim sıklığı ve bozulmanın bedelidir.

Bunu da okuyunE-postalarım Spam'e Düşüyor: Nedenleri ve Çözüm Sırası

Sık yapılan hatalar neler?

En yaygın hata, otomasyonu test olmadan kurmaktır. Hiçbir şeyi denemeden yayınlayan bir hat, hataları elle yayınlamaktan daha hızlı canlıya taşır. Otomasyonun değeri, yayını hızlandırmaktan önce hatalı sürümü yayına geçirmemesinden gelir.

İkinci hata, aracı amaç sanmaktır. Popüler bir aracı kurmak DevOps yapmak değildir; süreç, sahiplik ve geri dönüş planı yoksa araç yalnızca yeni bir karmaşıklık katmanıdır. Sık görülen diğer hatalar şunlardır.

  • Şifre ve anahtarları kodun içine yazmak; bunlar ayrı ve korumalı bir yerde tutulmalıdır
  • Geri dönüş yolunu hiç denememek; ilk deneme kriz anına kalır
  • Deneme ortamını canlıdan çok farklı kurmak; deneme geçer, canlı bozulur
  • Hattın sahibini belirlememek; bozulduğunda kimse bakmaz

Kurmaya nereden başlanır?

Küçük başlamak en sağlam yoldur. İlk adım, sitenin bugün nasıl yayınlandığını yazıya dökmektir; çoğu zaman bu tarifin kendisi eksikleri ortaya çıkarır. Sonra kodu bir sürüm kayıt sistemine almak, ardından yalnızca derleme ve temel kontrolü yapan basit bir hat kurmak gelir.

Hat oturduktan sonra otomatik testler, deneme ortamı ve yayın sonrası kontrol eklenir. Her adımın ölçütü aynıdır: yayın daha az gerginlikle mi yapılıyor, bir sorun çıkınca dönüş daha kısa mı sürüyor. Cevap evetse bir sonraki adıma geçilir; hayırsa dururuz ve düzeltiriz.

DevOps ve otomatik dağıtım, yayını kişilere değil bir düzene bağlar; faydası sitenin ne sıklıkla değiştiğiyle ve bozulmasının ne kadar pahalı olduğuyla ölçülür. Az değişen bir sitede sade bir yedekleme ve yayın düzeni yeter, sık değişen ve gelir getiren bir sitede ise testli, geri dönüşlü bir hat karşılığını verir. Sitenizin bugün nasıl yayınlandığını birlikte gözden geçirmek isterseniz rabbitclip ile bir keşif görüşmesi yapabiliriz.

Sık sorulanlar

CI/CD ne demek?

CI sürekli entegrasyon, CD ise sürekli dağıtım ya da teslim demektir. Kodda yapılan her değişiklik otomatik denenir ve onaylanırsa aynı adımlarla yayına hazırlanır ya da yayınlanır.

Küçük bir kurumsal site için DevOps gerekli mi?

Çoğu zaman tam bir hat gerekmez. Yedekleme, güvenli bir yayın yöntemi ve değişiklik kaydı yeterlidir. Güncelleme sıklığı arttıkça ya da bozulmanın maliyeti büyüdükçe otomasyon anlam kazanır.

Otomatik dağıtım siteyi daha güvenli yapar mı?

Doğru kurulursa evet: elle dosya kopyalama hatası azalır, her sürüm kayıtlı olur ve bozulursa geri dönülür. Ancak şifrelerin korunması ve testlerin yazılması ayrıca sağlanmalıdır; otomasyon tek başına güvenlik sağlamaz.

DevOps için ayrı bir kişi işe almak gerekir mi?

Küçük işletmeler için gerekmez. Yayın düzeni mevcut geliştirici ya da hizmet aldığınız ajans tarafından kurulabilir. Önemli olan sürecin yazılı olması ve bir sahibinin bulunmasıdır.

Paylaş

İlgili hizmetBulut & AltyapıSistem büyüdükçe zorlanan, yoğun anda çöken bir altyapı gördük; onun için baştan sağlam kurarız. Güvenliği ve sürekliliği en başta tasarlar, teknik yükü üstümüze alırız.

İlgili ücretsiz araçlar

Sözlükte geçen terimler

İlgili yazılar

Bu konuda diğer yazılar

Nereden başlayacağınızı bilmiyorsanız, sorun değil; doğru yerdesiniz.

Aklınızdaki proje netleşmiş de olabilir, henüz bir fikir hâlinde de. İkisi de olur. Kısa bir görüşmeyle nerede olduğunuzu, nereye gidebileceğinizi birlikte konuşuruz.

Görüşme ayarlayalım
Projeyi konuşalım