devops automation how is automation applied devops practice
DevOps'ta Otomasyon:
Son eğiticide, önemini öğrendik DevOps'ta kaynak kontrolü . Burada, bu eğitimde DevOps'ta Otomasyon hakkında bilgi edineceğiz.
Otomasyon, DevOps uygulaması için nihai ihtiyaçtır ve 'Her şeyi otomatikleştir', DevOps'un temel ilkesidir. DevOps'ta, otomasyon başlangıcı, Geliştiricilerin makinesinde kod üretiminden kodun koda itilmesine ve hatta bundan sonra üretimdeki uygulamayı ve sistemi izlemek için başlar.
Önerilen Okuma => Bilgilendirici DevOps Eğitim Serisi
Canlı uygulamada uygulama performansı izleme dahil olmak üzere sürekli entegrasyon, sürekli test ve sürekli dağıtım içeren tüm DevOps ardışık düzeni otomatikleştirilmiştir.
Altyapı kurulumunu, yapılandırmalarını ve yazılım dağıtımını otomatikleştirmek, DevOps uygulamasının en önemli özelliği. DevOps uygulaması, birkaç saatlik bir süre içinde teslimat yapmak ve platformlar arasında sık teslimat yapmak için büyük ölçüde Otomasyona bağlıdır.
Böylece, DevOps'taki otomasyon hızı, daha fazla doğruluğu, tutarlılığı, güvenilirliği teşvik eder ve teslimat sayısını artırır. Nihayetinde, DevOps'taki otomasyon, doğrudan oluşturma, dağıtma ve izlemeden her şeyi kapsar.
VİDEO Bölüm 2 Blok 3: DevOps Otomasyonu- 16 dakika 40 saniye
DevOps uygulamasında Otomasyonun önemini bu eğiticide ayrıntılı olarak anlayalım.
Burada tartışacağız:
- Otomasyon DevOps uygulamasında nasıl uygulanır?
- Otomasyonun ihtiyacı ve rolü?
- Neyi Otomatikleştirmeli?
- Araçlar ve çerçeve, sürekli test?
Otomasyon hakkında konuşmaktan biraz korkuyorum. Çünkü otomasyon hakkında ne kadar konuşursam, bana göre hiçbir zaman tamamlanmış sayılmaz.
Söylemeye gerek yok, otomasyon basitçe manuel görevlerden uzaklaşıyor. İnsanlar sıradan rutin görevlere katılımlarını azaltmak ve zamanlarını ve zekalarını yeni veya yenilikçi bir şeyde kullanmak isterler.
Bununla birlikte, DevOps'ta otomasyonun rolü, müşteriye sürekli olarak değer sunmada çok önemli ve çok önemlidir.
DevOps uygulamasında otomasyonun nasıl uygulandığını ve neyin otomatikleştirileceğini birlikte yanıtlayalım çünkü bu soruların ikisi birlikte yanıtlanıyor.
Neyi Otomatikleştirmeli?
Bu otomasyon çağında bu sorunun cevabı için fazla açıklamaya gerek olduğunu düşünmüyorum. Gittiğimiz her yerde, ya çok az insan müdahalesi ile ya da hiç olmadan otomatik hale getirilen şeyler görüyoruz. Yani DevOps, bunun bir istisnası değildir.
Geleneksel bir yazılım geliştirme yönteminde, eskiden otomatik hale getirilen, özellikle test edilen yalnızca geliştirme ekibi ve faaliyetleriydi. Eskiden otomasyon, test senaryolarının test edilmesi ve otomatikleştirilmesi anlamına geliyordu, bu da yalnızca işlevsel test durumları değil, performans ve güvenlik gibi işlevsel olmayan testleri bile değil.
Ve diğer faaliyetlerin hiçbiri, özellikle operasyon faaliyetleri otomatik hale getirildi. 8 sunucuyu içeren büyük bir kümede manuel dağıtımın başarısızlığı ve neden olduğu kayıp çok iyi Misal Devreye alımlarla ilgili karmaşıklık ve Devops etkinlikleri için otomasyon ihtiyacını açıkça açıklıyor.
Windows 8'de jnlp dosyaları nasıl açılır
Kendi zekalarına, ilgili alandaki bilgilerine, deneyimlerine ve uzmanlıklarına dayanarak yaptıkları ağları ve ortamları yapılandırmak için büyük bir maaş paketi ödeyerek çok yetenekli ve zeki insanları işe alan kuruluşların kendimi gördüm. tam bir manuel çalışma.
Manuel yapılandırma, herkesin bildiği gibi her zaman hataya açıktır. Genellikle manuel kurulum durumunda olan şey, bir süre boyunca, aynı işi tekrar tekrar yaptıktan sonra, bu akıllı insanlar, ağ yapılandırıcılarının bu faaliyetlerden sıkılmak için kullandıkları ve sonunda hatalar yapmalarıdır. ihmal etmek.
Çok zekice olduklarını ve bu faaliyetlerin onlar için çok basit ve ilgi çekici olmayacağını biliyorsunuz ve bu sıkıcı göreve değil, her gün yeni zorluklara ihtiyaçları var.
Bu nedenle, yazılım kurulumu ve altyapı bölümünü kontrol eden sürüm için otomasyonun tanıtılması, zamandan tasarruf etmenin yanı sıra büyük bir kazanç haline geldi ve birçok insan hatasını azalttı ve herhangi bir sıradan insanın bunu yapmasına izin vererek, vasıflı işçilere olan bağımlılığı ortadan kaldırdı.
Ayrıca, yeni bir ortam kurulacaksa, örneğin yeni bir ortam kurmak için bilet yükseltmek, onu kurmak için arkasından çalışan BT ekibi, tüm bu güçlükler ortadan kalkar.
Böylece, bireysel ekip üyeleri görevleri yerine getirme yetkisine sahiptir. Otomasyonun sağladığı hızı, güvenilirliği ve tutarlılığı hayal edin. Böylece, otomasyon, üretime yapılan teslimatların sayısı kadar çok arttı.
Yani şimdi DevOps uygulamasında, Operasyon ekibi de tüm çalışmalarında, DevOps'un başarısının anahtarı haline gelen otomasyonu başlattı.
Aslında, DevOps uygulamasında, otomasyon başlangıcı, geliştiricilerin makinesinde kod üretiminden kod üretime çıkana kadar ve hatta ondan sonra uygulamanın canlı olarak izlenmesiyle başlar. Bu, tipik bir DevOps döngüsüdür.
Geliştirme ve Operasyon ekibi, kod ve ortam yapılandırmalarını kaynak kontrolüne kadar denetler; otomasyonun derlemeyi tetiklediği yerden, birim test durumlarını ve diğer temel kod kalitesini, kapsam test durumlarını, güvenlikle ilgili test durumlarını vb.
Kod bununla tamamlandığında, kod otomatik olarak derlenir, sürüm kontrolünde saklanır ve daha ileri testler için diğer ortamlara ve nihayetinde üretim sürümüne otomatik olarak dağıtılır.
Yapının tetiklenmesinden, birim testlerinin yapılmasından, paketlenmesinden, belirlenen ortamlara konuşlandırılmasından, yapı doğrulama testlerinin, duman testlerinin, kabul test durumlarının gerçekleştirilmesinden ve nihayet dağıtılmasından başlayarak geliştirmenin her aşamasında otomasyonun yürütüldüğünü görebiliriz son üretim ortamına.
Windows için en iyi ücretsiz python ide
Test senaryolarının otomatikleştirilmesi dediğimizde bile mesele sadece birim testleri değil, kurulum testleri, entegrasyon testleri, kullanıcı deneyimi testleri, UI testleri vb.
DevOps, geliştirme faaliyetlerine ek olarak operasyon ekibini, sunucuları sağlama, sunucuları yapılandırma, ağları yapılandırma, güvenlik duvarlarını yapılandırma, üretim sistemindeki uygulamayı izleme gibi tüm etkinliklerini otomatikleştirmeye zorlar.
Neyin otomatikleştirileceğini yanıtlamak için, derleme tetikleme, derleme ve oluşturma, dağıtma veya yükleme, kodlanmış komut dosyası olarak kurulan altyapıyı otomatikleştirme, kodlanmış komut dosyası olarak ortam yapılandırmaları, test etme, dağıtım sonrası yaşam performansı izleme, günlükleri izleme, uyarıları izleme, bildirimleri canlıya gönderme ve herhangi bir hata ve uyarı vb. durumlarda canlıdan uyarı alma,
Nihayetinde projeyle ilgili tüm belgelerin otomatikleştirilmesi.
Dolayısıyla, DevOps dilinde otomasyonun Sürekli Entegrasyon, Sürekli Test, Sürekli Dağıtım ve Sürekli Teslimat anlamına geldiğini söyleyebilirim. İlerleyen bölümlerde her birini detaylı olarak inceleyeceğiz.
Genel olarak DevOps, mümkün olan her yerde, hangisi otomatikleştirilebilirse, hangisi tekrarlanabilirse, doğruluk talep edilen her yerde, hangisi uzun sürerse otomatikleştirilirse, her geliştirme ve operasyon faaliyetini mümkün kılar.
Bununla birlikte, otomasyon için kullanılacak araçlardan bahsetmezsek, otomasyon konusundaki tartışma eksiktir.
Bu nedenle, DevOps'ta otomasyon için doğru bir çerçeve ve otomasyon aracı seçimi temel gereksinimdir.
Pazarda, Ops ekibi tarafından gerçekleştirilen etkinlikler, provizyon makineleri, dönen otomatik sunucular, ağları yapılandırma, güvenlik duvarları dahil olmak üzere tüm teslimat hattının uçtan uca otomasyonunu destekleyen hem açık kaynaklı hem de lisanslı araçlar olmak üzere birçok araç bulunmaktadır. ve hatta yazılımın performansını izlemek.
Ayrıca, belirli kuruluşlar, tek bir entegre araç olan ve ekibin ilgili herhangi bir şey için çerçevenin dışına çıkması gerekmeyen dokümantasyon da dahil olmak üzere kod işlemeden kod dağıtımına kadar olan DevOps'un uçtan uca sürecini entegre etmek için kendi çerçevelerini geliştirmişlerdir. sürüm kontrolü, test senaryosu yazma, inceleme, test senaryosu sonuçlarının dökümü, analizi vb. programlamak için,
Örneğin: kukla, Azure kaynak yöneticisi, şef vb.
DevOps'ta Otomasyonun Yararları
Üretime girmesi yıllar alan otomasyonun yokluğunda ve son zamanlarda çevik, ister yalın, ister scrum veya güvenli olsun ve otomasyon yüzdesinin iyileştirilmesiyle, yayın zaman çizelgelerinin birkaç aya indirildiğini gördük. haftalar.
Ancak sürümleri birkaç saat içinde olabildiğince hızlı hale getirmek için otomasyon kesinlikle bir zorunluluktur. Bu yüzden, boru hattı boyunca otomasyonu yerine getirmedikçe bu kadar hızlı ve sık yayın yapmanın imkansız olduğunu düşünüyorum.
Bu nedenle, oldukça açık bir şekilde, DevOps'un hedeflerine ulaşmak istiyorsak, yüksek kalite ve müşterilere sık ve hızlı teslimatlarla sunulan değer, her şeyi Otomatikleştirmek bir zorunluluktur.
Şimdiye kadar otomasyonun manuel hataları ortadan kaldırdığını, bir kişiye bağımlılığı ortadan kaldırdığını, daha hızlı performans gösterdiğini ve doğruluk elde ederek tutarlılık ve güvenilirlik sağladığını biliyoruz. Bu nedenle, her şeyin otomatikleştirilmesi, yüksek kaliteli teslimat hedefine olanak tanır, sık sürümler ve daha hızlı sürümler sağlar.
Özetle, Otomasyon,
- Manuel hataları ortadan kaldırır
- Takım üyeleri güçlendirilir
- Bağımlılık kaldırıldı
- Gecikme kaldırıldı
- Teslimat sayısını artırır
- Teslimat süresini azaltır
- Yayınların sıklığını artırır
- Daha hızlı geri bildirim sağlar
- Hız, güvenilirlik ve tutarlılık sağlar
Kısacası, DevOps'taki Otomasyon, sonuçta derleme, dağıtma ve izlemeden her şeyi kapsüller.
PREV Eğitimi | SONRAKİ Eğitici
Önerilen Kaynaklar
- DevOps'ta Küçük Teslimat Artışlarının Önemi
- DevOps'ta Kaynak Kontrolü veya Sürüm Kontrolü (Video Eğitimi Bölüm 2 - Blok 2)
- DevOps Eğiticisi: DevOps için Nihai Kılavuz (25'ten Fazla Eğitici)
- Çevik Manifesto'ya Dayalı DevOps Uygulaması (Bölüm 2 - Blok 1)
- DevOps Test Eğitimi: DevOps QA Testini Nasıl Etkileyecek?
- Bulutta DevOps Uygulaması için AWS CodeCommit Eğiticisi
- SeeTest Otomasyon Eğitimi: Mobil Test Otomasyon Aracı Kılavuzu
- DevOps'ta Sürekli Teslimat