Şablon hata ayıklama sürecini nasıl daha hızlı hale getirebilirim yoksa hatalarımı yaptıktan yarım saat sonra sonsuza dek fark edecek miyim?
Aşağıda, özellikle karmaşık CloudFormation şablonu geliştirmenin yineleme hızını artırmaya odaklanan birkaç en iyi uygulama önerisi verilmiştir:
Şablonları ve yığın güncellemelerini doğrulamak için CloudFormation araçlarını kullanın
AWS bunları kendi En İyi Uygulamalar belgesinde zaten özetledi , bu yüzden bunları tekrar etmeyeceğim:
Bu adımın amacı, gerçekte bir Yığın oluşturma / güncelleme gerçekleştirmeden önce açık sözdizimi veya mantıksal hataları yakalamaktır.
Kaynakları tek tek test edin
Karmaşık bir Yığın içinde herhangi bir bağımsız CloudFormation Kaynağını kullanmadan önce, davranışlarını daha küçük, bağımsız Yığınlarda test ederek, bu Kaynağın kullanım sınırlamaları ve tipik başlatma / sökme süreleri dahil olmak üzere bu Kaynağın oluşturma / güncelleme / silme davranışını tam olarak anladığınızdan emin olun. ilk.
- Herhangi bir üçüncü taraf Özel Kaynağını geliştiriyor veya kullanıyorsanız, uygulama mantığının tüm kullanım durumlarında beklendiği gibi davrandığından emin olmak için dil platformu için uygun kitaplıkları kullanarak birim testleri yazın.
- Tek bir Kaynağın yaratma / güncelleme / silme süresinin, temel API çağrılarının davranışına bağlı olarak Kaynak Türleri arasında büyük ölçüde değişebileceğini unutmayın. Örneğin, karmaşık bir
AWS::CloudFront::Distribution
kaynağın oluşturulması / güncellenmesi / silinmesi bazen 30-60 dakika sürebilirken ,AWS::EC2::SecurityGroup
, saniyeler içinde güncelleme olabilir.
- Bireysel Kaynakların uygulamalarında hatalar / sorunlar / sınırlamalar olabilir; bu, hata ayıklaması ve çok daha büyük bir Yığın içinde test edildiğinde geçici çözümler geliştirmesi çok daha kolaydır. Bireysel AWS Hesabı ayarlarınıza bağlı olarak AWS Hizmet Sınırları veya Yığını oluşturduğunuz Bölgeye bağlı olarak hizmetlerin Bölge Kullanılabilirliği gibi sınırlamaları aklınızda bulundurun .
Küçük artışlarla karmaşık yığınlar oluşturun
Bir Yığın oluşturma / güncelleme gerçekleştirirken, herhangi bir tek Kaynaktaki bir başarısızlık Yığının tüm Kaynak değişiklikleri kümesini geri almasına neden olur, bu da diğer başarıyla oluşturulmuş Kaynakları gereksiz yere yok edebilir ve uzun bir yığınla karmaşık bir yığın oluştururken çok uzun zaman alabilir. ilişkili Kaynakların bağımlılık grafiği.
Bunun çözümü, Yığınınızı artımlı olarak daha küçük Güncelleme grupları halinde oluşturmak ve her seferinde bir (veya birkaç) Kaynak eklemek. Bu şekilde, bir kaynak oluşturma / güncellemede bir hata meydana gelirse / meydana gelirse, geri alma işlemi tüm Yığının kaynaklarının yok edilmesine neden olmaz, yalnızca en son Güncellemede değiştirilen Kaynaklar kümesi.
Yığın güncellemelerinin ilerlemesini izleyin
Bir oluşturma / güncelleme gerçekleştirilirken yığının olaylarını görüntüleyerek Yığın Güncellemenizin İlerlemesini İzlediğinizden emin olun . Bu, tek tek kaynaklarla ilgili diğer sorunları ayıklamak için başlangıç noktası olacaktır.