AWS Kontrol ve Değerlendirme

Merhaba,

Bu bölümde; Bölüm 1 ‘de , Bölüm 2 ‘de ve Bölüm 3 ‘de incelediğim reel hayat senaryosunu özetleyeceğim ve gözlemlediğim detayları paylaşacağım. Büyük resme baktığımızda şunları yaptık:

  • Farklı bir servis sağlayıcında yayınlanan web uygulamasını, backup/restore eklentisi ile AWS S3 ‘te açtığımız bucket’a yedekledik(backup).
  • Elastic Beanstalk ile yeni web uygulamamızı(yeni ortamı oluşturuyoruz!) AWS sistemine yükledik.
  • Backup/Restore eklentisini yeni web uygulamamıza kurduk.
  • AWS S3’teki yedeği yeni ortama geri yükledik(restore).
  • W3 total cache eklentisini yeni ortama kurduk.
  • Statik içeriği(ve/veya belirleyeceğimiz içeriği) AWS S3 ‘teki bir bucket’a upload ettik.
  • CloudFront üzerinde distribution, origin ve behavior belirledik.
  • Yeni web uygulamamızı browse ederek CloudFront’a giden request’leri gözledik.

Test ortamımda incelediğim senaryo bu şekildeydi. İhtiyaçlar doğrultusunda senaryoyu farklılaştırmak gerekebilir. Senaryoyu incelerken dikkatimi çeken detaylar şunlardı.

S3 üzerinde iki bucket kullandım. Biri, alınan yedeği barındırmak, diğeri yeni web uygulamasının statik içeriğini barındırmak içindi. Bucket’lar üzerindeki yetkileri olması gereken en az yetkiler ile yapılandırmak oldukça önemli(IAM Policy,Bucket Policy)!

İşiniz bittikten sonra kullanmayacaksanız yedekleme için kullandığınız IAM User’ının policy’sini detach edebilirsiniz.

Elastic Beanstalk servisi herhangi bir sebepten dolayı(performance issue vb.) ortama yeni sanal sunucu ekleyebilir. Yeni açılan sanal sunucu, beanstalk üzerinde o an yüklü olan application release ‘ine göre açılır. First Release ‘den sonra mevcut sanal sunucu üzerinde(web uygulaması üzerinde) değişiklikler yapmış olabilirsiniz. Değişiklikleri yaptığınız web uygulamanızı elastic beanstalk üzerine ikinci bir sürüm olarak deploy etmediyseniz, yeni açılan sanal sunucular üzerinde güncel sürümünüz çalışmaz! Yani tüm değişikliklerinizi kaybedersiniz. Release Management sürecini iyi yönetmeniz gerekiyor!

Elastic beanstalk ile yeni sürümü deploy ederken auto-scaling policy’lerdeki treshold tetiklenirse, deployment sürecinde ortama, kontrolünüz dışında, yeni sanal sunucu eklenir. Bu durumda deployment’ın nereye/nasıl yapıldığı karışabilir. Release Management ve Deployment Management sürecinizi işletirken auto-scaling policy’lerinizi göz önüne alınız. Production’a deployment yapmadan önce test ve development ortamlarınızda mutlaka test yapınız. Sistem envanteri açısından TEST,DEV,PROD ortamlarınız identical olursa, çıkabilecek tüm problemleri gözlemiş olursunuz!

Şu an itibarıyla elastic beanstalk ile deployment için 512 MB ‘lık zip dosyası limitasyonu var. Minor bir ayrıntı :)

Yeni web uygulamasının kontrolü için CloudFront web servisindeki Reports and Analytics(Cache Statistics, Monitoring and Alarms, Popular Objects, Top Referrers, Usage, Viewers ) menülerini inceleyebilirsiniz. Menüler hemen her konuda rapor ve analiz verisi sunuyor. Detaylı monitör metrikleri için CloudWatch servisini yapılandırmanız gerekebilir.

CloudFront kendi ssl sertifikasını kullanıyor. Web uygulamanız için satın aldığınız ssl sertifikasını kullanmak isterseniz IAM Certificate Storeâ bu sertifikayı uygun biçimde yüklemeleniz gerekiyor.

CloudFront distribution yapılandırmasında da HTTP/HTTPS protokolleri ile ilgili, cache yapılandırmaları ile ilgili, http method’ları ile ilgili farklı seçenekler mevcut. Bunları incelemekte fayda var(Production’a geçmeden önce). Web uygulamanızda URL değişikliği yaparsanız veya site ‘ına ait olan farklı bir URL’i kullanmak isterseniz CloudFront servisinde cname ilavesi yapabilirsiniz. Web sitenizin kodlarında da (gerekiyorsa) URL değişikliğini yapılandırabilirsiniz.

Aslında Static , Dynamic içerik, Elastic Beanstalk , Cloudfront , S3 vb. servisler ile uğraşmak yerine AWS Marketplace’ten ücretsiz olarak wordpress ortamı alıp kullanabailirsiniz :) Mimimum efor ile wordpress blogunuzu çalıştırabilirsiniz. Benzer şekilde Azure Marketplace’de de hazır wordpress ortamı mevcut :) Fakat kurumsal seviyede çalışılan ortamlarda bu yazı dizisinde bahsettiğim tüm AWS servislerine ve/veya Azure karşılıklarına ihtiyacınız olacaktır. Yazı dizisinde kullandığım wordpress web uygulaması sadece bilinirliğinden ve kullanılabilirliğinden ötürü ele aldığım bir uygulamadır.

Herkese sorunsuz ve neşelü günler dilerim.

Kaynaklar:

http://www.aydogmusoglu.com/?s=aws

http://azure.microsoft.com/en-in/marketplace/

https://aws.amazon.com/marketplace

Random Posts

Loading…

One Reply to “AWS Kontrol ve Değerlendirme”

Leave a Reply

Your email address will not be published. Required fields are marked *