Güvenli dağıtım uygulamalarını benimseme

Tamamlandı
Hataların veya beklenmeyen koşulların etkisini en aza indirmek için dağıtım işleminde korumalar uygulayın.

Geliştirme döngüsü sırasında, iş yükü yapıtları uygulanıp test edildikçe ve hatalar düzeltildikçe birçok değişiklikten geçer.

Dağıtım işlemi standart bir işletim yordamını izlemelidir. Tüm değişiklikler aynı katılık düzeyiyle dağıtılmalıdır. Bu ilke koda, yapılandırmaya ve tüm ilgili yapıtlara eşit şekilde uygulanır. Önemli olan, üretimde öngörülebilirliğe sahip olabilmeniz için güvenli uygulamaları mümkün olan en erken zamanda uygulamaktır. Hatalar müşterilere ulaşsa bile, kurtarma değişikliklerini mümkün olan en kısa sürede dağıtabilmeniz gerekir.

Örnek senaryo

Contoso Air, müşterinin doğrudan uygulama üzerinden uçuş rezervasyonu yapmasına olanak tanıyan bir web uygulaması geliştirmiştir. Uygulama bir yıldan uzun süredir üretimde çalışıyor.

Uygulama Azure'da tam olarak dağıtılır ve Azure Uygulaması Hizmeti, Azure Cosmos DB, Azure İşlevleri, Azure Logic Apps ve Azure Service Bus üzerinde oluşturulur.

Otomatik dağıtım standartlarını codify

İşlem hatları gibi otomatik dağıtım işlemlerini kullanarak herhangi bir değişikliği dağıtmak için işlemi standartlaştırın. Tüm ortamlar işlem hatlarını kullanmalıdır. Varlıkları ve sürümleri ortam başına sınıflandırarak kolayca izlenebilir ve tanımlanabilir hale getirin.

Tutarlı dağıtım yöntemleri, işlem hataları ve varyansın neden olduğu sorunları azaltır ve çalışmanızı iş yükü sorunlarına odaklamanıza olanak sağlar.

Standartlaştırma, dağıtımın güvenli, güvenilir ve tekrarlanabilir bir şekilde tamamlanmasını sağlar.

Sınıflandırma, önceki dağıtımların ve oluşan sorunların günlüklerini görüntülemeyi kolaylaştırır. Geri alma ve ileri alma işlemlerini hızlandırmak için bu bilgileri kullanabilirsiniz.

Contoso'nun sınaması

  • Contoso Air iş yükü ekibi otomatik derleme ve dağıtım işlem hatlarını kullanır, ancak dağıtımlar normalde çeşitli yapılandırma ayarlarını değiştirmek ve doğrulamak için işlem boyunca el ile müdahale gerektirir.
  • El ile müdahale nedeniyle dağıtımda sık sık hatalar oluşur ve her yayın tüm ekip için son derece stresli ve kesintiye neden olur. El ile müdahale, dağıtım başarısız olduğunda geri almayı da zorlaştırır.

Yaklaşımı ve sonuçları uygulama

  • Ekip, dağıtım kapsamında yapılandırma değişikliklerini otomatikleştirmek ve eklenen işlevleri mevcut dağıtım işlem hatlarıyla tümleştirmek için zaman ayırır.
  • Her ortamla ilişkili yapılandırma ayarları, ek izlenebilirlik için kaynak denetimine kaydedilen ilgili JSON dosyalarına dışlaştırılır. Gizli dizi olarak kabul edilen Ayarlar her ortama da ayrılan gizli dizi kasası depolarına kaydedilir.
  • Tüm değişiklikler artık dağıtım sırasında günlüğe kaydedilerek sorun giderme çabaları ve denetimlerine yardımcı olmak için tam izlenebilirlik elde edilir. Ekip, işlem hattındaki yapılandırma değişikliklerini doğrulamak için otomatikleştirilmiş testler de ekler.
  • Ardından ekip, süreçleri daha da iyileştirmek için geri alma işlemlerini tam olarak otomatikleştirme üzerinde çalışacaktır.
  • Yeni otomasyon sonucunda dağıtımlar daha güvenilir ve öngörülebilir hale geldi ve ekip morali de yükseldi.

Sık dağıtma

Küçük artımlı güncelleştirmeleri düzenli bir tempoda dağıtın.

Bu yaklaşımın kullanılması, kullanıcı hikayelerini ve iş öğelerini proje yönetimi açısından yönetilebilir tutmaya ve dağıtımlar başarısız olduğunda büyük ölçekli sorun riskini azaltmaya yardımcı olur.

Contoso'nun sınaması

  • Ekibin dağıtım süreçleri geçmişte üç-dört ayda bir büyük sürümler yapmak olmuştur. Bu uygulama, sürümü doğrulamayı zorlaştırır. Ekip, bu kadar çok hareketli parçayla ilgili sorunları gidermekte de zorluk çekti.
  • Yayın ortası sık erişimli düzeltmeler gerektiren veya geri alınması ve bırakılması gereken sorunlu sürümler birkaç kez oluştu.
  • Yayınlar son derece streslidir ve takım morallerini olumsuz etkileyen "tüm eller güvertede" durumları olarak ele alındı.

Yaklaşımı ve sonuçları uygulama

  • En son sorunlu sürümden sonra, proje katılımcıları ekiplerden dağıtımlar için daha iyi bir yaklaşım geliştirmelerini istedi. Ekip, sık ve küçük değişikliklere tercih etmek için uygulamalarını değiştirmeye karar verdi. Her sürümün kapsamını, derleme alt ortamlarda yükseltilirken kapsamlı olarak test edilen bir veya (en fazla) ilgili birkaç değişiklikle sınırlandırır.
  • Sonuç olarak, yayınlar çok daha verimli hale geldi ve kalite arttı. Sürümlerin doğrulanması daha kolaydır ve sorunları gidermek daha kolaydır.
  • Öngörülebilir yayınların düzenli bir temposunun olması, ekibin güvenini ve moralini geri kazandırdı. Kullanıcılar da fayda sağlar. Daha yüksek sürüm kalitesiyle daha az kesinti görür ve yeni özelliklere çok daha erken erişim elde ederler.

Aşamalı maruz kalma yaklaşımını kullanma

Güncelleştirmeleri, durum tespiti ile aşamalı olarak kullanıma sunma. Güncelleştirme herkes tarafından güvenli bir şekilde benimsenene kadar örnek ve müşteri sayısını aşamalı olarak artırmak için size denetim sağlayan dağıtım modellerini kullanın.

Sorunların üretimin erken aşamalarında düzeltilmesi için her güncelleştirmeyi denetimli bir şekilde test edin. Tüm müşteri tabanınızı etkileyen hatalı bir güncelleştirmenin dağıtımını yapmaktan kaçının.

Güncelleştirmenin geriye ve ileriye uyumlu olup olmadığını test edin.

Contoso'nun sınaması

  • Ekip, daha küçük sürümler yapmak için yaklaşımını değiştirmenin büyük avantajlarını görüyor. Artık sürümlere daha az zaman ayırıyorlar ve ek operasyonel mükemmellik iyileştirmeleri yapma yolunda ilerlemek için enerjik hissediyorlar.
  • Yeni özelliklerle denemeler yaptıkları için bazı değişiklikler kullanıcılar tarafından iyi karşılanmamıştır veya beraberinde getirdikleri dik öğrenme eğrisi nedeniyle destek çağrılarında artışa neden olmuştur.
  • Kullanıcılarının üretkenliğini en üst düzeye çıkarmak için uygulamalarında yenilik yapmaya nasıl devam edeceklerini merak ederken, popüler veya kullanımı kolay olmayan özellikleri yayınlamanın etkisini en aza indirmeye devam ediyorlar.

Yaklaşımı ve sonuçları uygulama

  • Özellik Bayraklarını kullanarak yeni özellikleri kullanıcılara artımlı olarak kullanıma sunan bir özellik sürüm modeli uygulamaya karar verdiler.
  • Yeni özelliklerin planlama aşamalarında, önce özelliğe hangi kullanıcıların gösterileceğini seçmek için bir ölçüt tanımlanır. Yeni özelliği ilk olarak almak için küçük bir kullanıcı grubu seçilir. Kullanıcı geri bildirimlerine bağlı olarak, tüm kullanıcı popülasyonu yeni sürümü çalıştırana kadar özellik ardışık olarak daha büyük gruplara dağıtılır. Yeni özelliklere daha fazla kullanıcı sunulduğundan, destek ekibi şirket içinde paylaşacak ve potansiyel olarak dış SSS'yi dolduracak destek olaylarının sonucunu belgelemektedir.

Bilgilerinizi kontrol edin

1.

Aşağıdakilerden hangisi güvenli dağıtım uygulamalarının temel ilkesidir?

2.

Aşağıdakilerden hangisi önerilen dağıtım stratejisidir?

3.

Contoso aşamalı maruz kalma yaklaşımını nasıl benimsedi?