close

DevOps

Navigasyona git Aramaya git

DevOps ( geliştirme - geliştirme - ve operasyonlar - operasyonlar - için İngilizce kısaltma ), yazılım geliştirme ( Dev ) ve BT operasyonlarını ( Ops ) gruplayan bir dizi uygulamadır . Amacı, yazılım geliştirme yaşam döngüsünü hızlandırmak ve sürekli yüksek kaliteli teslimat sağlamaktır. DevOps, çevik yazılım geliştirme için tamamlayıcı bir uygulamadır; Bunun nedeni, DevOps'un birçok özelliğinin Çevik metodolojiden gelmesidir.

DevOps hareketinin temel özelliği, entegrasyon , test, dağıtım, dağıtım ve altyapı yönetimine kadar yazılım yapımının tüm adımlarında otomasyonu ve izlemeyi aktif olarak savunmaktır . DevOps, iş hedefleriyle yakın uyum içinde daha kısa geliştirme döngüleri, daha yüksek dağıtım sıklığı, daha etkili sürümler hedefliyor. [ 1 ] ​[ 2 ] ​[ 3 ] ​[ 4 ]

Tanımlar ve tarihçe

Image
Geliştirme, teknoloji operasyonları ve kalitenin (QA) kesişimi olarak DevOps'u gösteren çizim

Agile 2008 Toronto konferansında, Yhens Wasna ve Patrick Debois, "Çevik Altyapı" konulu konuşmalarında bu terimi tanıttılar. [ 5 ] 2009'dan itibaren, DevOps terimi, Belçika'da başlayan ve şimdi diğer ülkelere de yayılan bir dizi "devopsdays" [ 6 ] aracılığıyla sürekli olarak tanıtılmış ve daha genel kullanıma sunulmuştur. [ 7 ]

DevOps terimi birçok farklı bağlamda kullanılmıştır. [ 8 ]

Bass, Weber ve Zhu tarafından önerilen bir tanım:

DevOps, bir uygulamada bir değişikliğin taahhüt edilmesi ile değişikliğin normal üretime alınması arasındaki süreyi kısaltmayı ve aynı zamanda yüksek kaliteyi sağlamayı amaçlayan bir dizi uygulamadır. [ 9 ]

Sonraki on yılda, OpsDev, [ 10 ] WinOps, [ 11 ] ve BizDevOps gibi daha teğet DevOps girişimleri de geliştirildi. [ 12 ]

DevOps araçları

DevOps'un işlevler arası bir çalışma şekli olması amaçlandığından, tek bir DevOps aracı yerine birden çok araçtan oluşan setler (veya " araç zincirleri ") vardır. [ 13 ]​ Bu tür DevOps araçlarının şu kategorilerden birine veya daha fazlasına uyması ve geliştirme ve teslim sürecinin temel yönlerini yansıtması beklenir: [ 14 ] ​[ 15 ]

  1. Kod: kod geliştirme ve inceleme, kaynak kod yönetimi araçları, kod birleştirme
  2. Yapı: Sürekli Entegrasyon Araçları , Yapı Durumu
  3. Test – İş riskleri hakkında geri bildirim sağlayan sürekli test araçları
  4. Paket: yapıt deposu , uygulama dağıtımından önce dağıtım
  5. Sürüm - değişiklik yönetimi, sürüm onayları, sürüm otomasyonu
  6. Yapılandır - altyapı yapılandırması ve yönetimi, Kod Olarak Altyapı
  7. İzleme: uygulama performansı izleme, son kullanıcı deneyimi

DevOps araç zincirinde bazı kategoriler diğerlerinden daha önemlidir; özellikle sürekli entegrasyon (örn . Jenkins ) ve kod olarak altyapı (örn . Kukla ). [ 16 ] ​[ 17 ]

İlişki ve diğer yaklaşımlar

Çevik

DevOps ihtiyacı, kuruluşların yazılımlarını daha hızlı ve daha sık yayınlamak istemesine yol açtığı için, çevik yazılım geliştirmenin artan başarısından kaynaklandı. Bunun sürüm yönetimi süreçlerine getirdiği yükün üstesinden gelmeye çalışırken, uygulama sürümü otomasyonu, sürekli entegrasyon araçları ve sürekli teslimat gibi kalıpları benimsemek zorunda kaldılar . [ 18 ]

Sürekli Teslimat

Sürekli teslim ve DevOps'un ortak hedefleri vardır ve genellikle birlikte kullanılır, ancak küçük farklılıklar vardır. [ 19 ] ​[ 20 ]

Sürekli teslim , yazılım teslim süreçlerini otomatikleştirmeye odaklanırken, DevOps , ilgili birçok işlev arasında zengin işbirliğini desteklemek için organizasyonel değişime de odaklanır. [ 19 ]

DevOps ve sürekli teslim, çevik yöntemlerde ve hafif düşünmede ortak bir temeli paylaşır: son müşteri için odaklanmış değere sahip küçük, sık değişiklikler. [ 21 ]

ArchOps

ArchOps, yazılım çözümlerinin dağıtımı ve çalıştırılması için kaynak kod yerine yazılım mimarisi yapıtlarına öncelik vererek soyutlama düzeyini artıran bir DevOps uzantısıdır . [ 22 ] ArchOps, mimari modellerin yazılım çözümlerinin geliştirilmesi, devreye alınması ve çalıştırılmasında birinci sınıf varlıklar olduğunu belirler.

DataOps

Veri analizi için sürekli teslim ve DevOps uygulaması DataOps olarak adlandırıldı. DataOps, veri mühendisliğini, veri entegrasyonunu, veri kalitesini, veri güvenliğini ve veri gizliliğini operasyonlarla bütünleştirmeyi amaçlar. [ 23 ]​ Veri analizinden değer çıkarma döngü süresini iyileştirmek için yalın üretimde kullanılan DevOps, çevik geliştirme ve istatistiksel süreç kontrolü ilkelerini uygular . [ 24 ]

DevSecOps

DevSecOps, güvenlik uygulamalarının DevOps yaklaşımına entegre edilmesini sağlamak için DevOps'un bir uzantısıdır. Merkezileştirilmiş bir güvenlik ekibinin geleneksel modeli, her teslimat ekibinin DevOps uygulamalarında doğru güvenlik kontrollerini dikkate almasına olanak tanıyan birleşik bir modeli benimsemelidir.

Hedefler

DevOps hedefleri, tüm teslimat sürecini kapsar. Onlar içerir:

  • Geliştirilmiş dağıtım sıklığı;
  • Üretime daha hızlı sürümler;
  • Yeni sürümlerin üretilmesinde düşük hata oranı;
  • Sürümler arasında daha kısa teslim süresi;
  • Daha hızlı dağıtım süresi (yeni bir sürümün tutarsızlıkları olması durumunda).
  • Dağıtılan bir sürümün başarısız olması durumunda tepki hızı

DevOps yaklaşımı kullanılarak basit süreçler giderek daha standart ve dinamik hale geliyor. [ 25 ] DevOps, operasyonel süreçlerin öngörülebilirliğini, verimliliğini, güvenliğini ve sürdürülebilirliğini en üst düzeye çıkarmayı amaçlar. Çoğu zaman, süreçlerin otomasyonu veya robotizasyonu bu hedefi destekler.

DevOps entegrasyonu, güvenilirliği ve güvenliği artırmak ve daha hızlı geliştirme ve dağıtım döngüleri sağlamak için ürün teslimi, kullanıcı testi (UAT), sürekli test, kalite testi, özellik geliştirme ve bakım sürümlerine odaklanır. DevOps'ta yer alan fikirlerin (ve insanların) çoğu, kurumsal sistem yönetimi ve çevik yazılım geliştirme hareketlerinden gelir. [ 26 ]

Mikro hizmetler

Bu tür bir yaklaşım, dijital şirketlerin uygulamalarına yüksek düzeyde kullanılabilirlik ve istikrar sağlamasına olanak tanır; Bunun nedeni, uygulamaların tüm bölümlerinin (veritabanı, arka uç, ön uç vb.) bağımsız olmasıdır ve bunlardan birinin arızalanması, tüm bilgi sisteminin sorunlu olduğu anlamına gelmez. Bunun yerine, etkilenen bileşen geri yüklenirken diğer hizmetler çalışmaya devam eder. [ 27 ] DevOps'un yaratıcıları, gelişmelerini optimize etmek ve monolitik mimarileri geride bırakmak için mikro hizmetlere ihtiyaç duyar, çünkü hizmet mimarisi modüler hale gelir ve riski en aza indirmek ve uygulamaların ve bileşenlerinin dağıtılma şeklini iyileştirmek için bölümlere ayrılır. farklı katmanlarla entegrasyon.

Ayrıca

Referanslar

  1. ^ Loukides, Mike (7 Haziran 2012). "DevOps nedir?" . O'Reilly Radar (ABD İngilizcesi) . 2 Kasım 2017'de alındı . 
  2. ^ "DevOps'un Yükselişi" . www.somik.org (ABD İngilizcesi) . 2 Kasım 2017'de alındı . 
  3. ^ "DevOps Kültürü (Bölüm 1) - BT Devrimi" . BT Devrimi (ABD İngilizcesi) . 1 Mayıs 2012 . 2 Kasım 2017'de alındı . 
  4. ^ "DevOps dev, ops, çevik, bulut, açık kaynak ve işletmeyi karıştırıyor — 451 CAOS Teorisi" . blogs.the451group.com . 14 Eylül 2015 tarihinde kaynağından arşivlendi . 2 Kasım 2017'de alındı . 
  5. Debois, Patrick. "Agile 2008 Toronto: Çevik Altyapı ve Operasyon Sunumu" . www.jedi.be _ 3 Kasım 2017'de alındı . 
  6. ^ "Devopsdays Gent 2009" . www.devopsdays.org . 3 Kasım 2017'de alındı . 
  7. ^ "DevOpsGünleri" . www.devopsdays.org (ABD İngilizcesi) . 3 Kasım 2017'de alındı . 
  8. "Sürpriz! DevOps Tanımına İlişkin Geniş Anlaşma - DevOps.com» . DevOps.com (ABD İngilizcesi) . 13 Mayıs 2015 . 3 Kasım 2017'de alındı . 
  9. ↑ Kendi kendine referansla ( yardım ) yanlış "Kitap kaynakları" . Vikipedi (İngilizce) . 3 Kasım 2017'de alındı . |url=  
  10. "DevOps Aynı zamanda OpsDev - DevOps.com Anlamına Gelmeli" . DevOps.com (ABD İngilizcesi) . 27 Ekim 2015 . 3 Kasım 2017'de alındı . 
  11. Weinberger, Matt. "Microsoft araştırması, herkesin DevOps istediğini ancak kültürün bir meydan okuma olduğunu ortaya koyuyor" . Bilgisayar dünyası (İngilizce) . 3 Kasım 2017'de alındı . 
  12. ^ "DZone DevOps - DevOps Kurumsal Uygulamalarda Neden Çalışmıyor" . dzone.com (İngilizce) . 3 Kasım 2017'de alındı . 
  13. Gartner Pazar Trendleri: DevOps – Bir Pazar Değil, Sürekli Teslimat Değer Zincirini (Raporu) destekleyen Araç Merkezli Felsefe. Gartner. 18 Şubat 2015.
  14. dev2ops. "DevOps araçlarını bir Hizmet Dağıtım Platformuna (VIDEO) entegre etme - dev2ops" . dev2ops (ABD İngilizcesi) . 8 Şubat 2014 tarihinde kaynağından arşivlendi . 3 Kasım 2017'de alındı . 
  15. ^ "(Bulut) Takımları için TÜM DevOps Araç Zincirini Keşfetmek" . BilgiQ . 3 Kasım 2017'de alındı . 
  16. "Güçlü Bir Bütçeyle DevOps Yığını - DevOps.com" . DevOps.com (ABD İngilizcesi) . 5 Şubat 2016. 27 Mayıs 2016 tarihinde kaynağından arşivlendi . 3 Kasım 2017'de alındı . 
  17. "Kukla ve Serseri ile Daha Güçlü DevOps Kültürü" . Kukla (İngilizce) . 29 Ocak 2016 tarihinde kaynağından arşivlendi . 3 Kasım 2017'de alındı . 
  18. Değişiklik, Yapılandırma ve Yayın Yönetiminde En İyi Uygulamalar (Rapor). Gartner. 14 Temmuz 2010.
  19. a b Kendi kendine referansla ( yardım ) yanlış "Kitap kaynakları" . Vikipedi (İngilizce) . 3 Kasım 2017'de alındı . |url=  
  20. "Dev-Ops ve Sürekli Teslimat Arasındaki İlişki: Jez Humble Of ThoughtWorks ile Bir Konuşma" . Forrester (Amerikan İngilizcesi) . 9 Eylül 2011 . 3 Kasım 2017'de alındı . 
  21. "Artık Daha Çevik BT'ye İhtiyacımız Var!" . Dr Dobb'un . 3 Kasım 2017'de alındı . 
  22. Castellanos, Camilo; Correal, Dario (15 Eylül 2018). "Büyük Veri Analitiği için Mimari Modellerin Yürütülmesi" . Bilgisayar Bilimi Ders Notları 11048 : 364-371. doi : 10.1007/978-3-030-00761-4_24 . 
  23. "Andy Palmer'dan DevOps'tan DataOps'a - Tamr Inc." . Tamr Inc. (ABD İngilizcesi) . 7 Mayıs 2015 . 3 Kasım 2017'de alındı . 
  24. DataKitchen (15 Mart 2017). "Veri Analitiği ile Yükselen Bir Yıldız Nasıl Olunur" . veri işlemleri . 3 Kasım 2017'de alındı . 
  25. ^ "Yeni Kalıntı: DevOps Nedir - Açıklaması" . Yeni Kalıntı (İngilizce) . 3 Kasım 2017'de alındı . 
  26. ^ "Çevik Altyapı" . BilgiQ . 3 Kasım 2017'de alındı . 
  27. «Patronunuza DevOps Avantajlarını Nasıl Açıklarsınız (2018 Sürümü) | Clickittech» . www.clickittech.com (ABD İngilizcesi) . 9 Ağustos 2018'de alındı . 

Dış bağlantılar