AWS Restore ve Static Content ’in S3 ’e aktarılması
Merhaba,
Bölüm 1 ve Bölüm 2 ‘de farklı servis sağlayıcısında yayınlanan web uygulamasının yedeğini AWS S3 ‘e almıştık ve web uygulamamızı çalıştıracağımız yeni ortamı Elastic Beanstalk ve CloudFront servislerini kullanarak yapılandırmıştık. Bu bölümde, S3 ‘teki yedeğimizi yeni ortama geri yükyeceğiz(restore) ve CloudFront için içeriğin bazı kısımlarını S3’e upload edeceğiz.
CloudFront servisinin web adresini açtığınızda ilk olarak wordpress uygulamasının kurulum arayüzüne ulaşırsınız. Çünkü elastic beanstalk ile yüklediğiniz ilk sürümünüz normal şartlarda sadece wordpress ’i ve wordpress’in varsayılan halini içermektedir. WordPress’in kurulum ekranını takip ederek wordpress uygulamasını varsayılan ayarları ile kurabilirsiniz.Wordpress uygulaması için veritabanına ihtiyacınız olacak. Test ortamımda veritabanı hizmetini AWS RDS MySQL ile sağladım.
WordPress’in genel kurulumundan sonra ilk yapılması gereken updraftplus isimli backup/restore eklentisinin yeni web sitenize yüklenmesi olmalıdır(backup/restore için kullandığınız eklenti farklı ise onu kurabilirsiniz). Böylece S3 ‘teki yedeğinizi yeni web uygulamanıza/sitenize geri yükleyerek diğer servis sağlayıcısında çalışmakta olan prod web sitenizi, yeni ortamda elde edebileceksiniz.
Hatırlarsanız Bölüm 1 ‘de updraftplus eklentisini prod’daki(diğer servis sağlayıcında yayınlan) bloguma kurarak aktifleştirmiştim. Aynı işlemi aws üzerinde kurduğum web sitesinde de yaptım. Böylece üstteki ekrana ulaşmış oldum. Yeni blog’um, updraft’ın AWS entegrasyonundan dolayı S3 ’e aktarılmış olan yedeği algıladı! Bu arada updraft’ı premium olarak kullanıyorsanız, her aktivasyon sırasında, değişen web url’ine göre üyeliğinizden bir kayıt(activation/subscription) hakkınızı kullanmış sayılıyorsunuz. Geri dönüşü yok!
Üstteki ayarlar ile restore işlemini başlatabilirsiniz. Restore işlemi bittikten sonra, restore ettiğiniz data’nı niteliğine bağlı olarak yeni ortamdaki web siteniz eskisi gibi olacaktır.
Bu aşamadan sonra yeni sitenin static içeriğini ve/veya istediğiniz içeriği w3 total cache eklentisi ile AWS S3’e upload edebilirsiniz(incelediğim senaryoya göre cloudfront’un devreye girmesi için bu adım gerekiyor!). W3 total cache eklentisini AWS CloudFront ile çalışmak üzere yapılandırmak için önceki yazılarımı ve/veya kaynaklar kısmında paylaştığım çeşitli blog’ları inceleyebilirsiniz.
W3 total cache eklentisinde yapılandırmanız gereken ayarlardan biri üstteki görülmektedir. Seçenekler hakkında w3 total cache eklentisinin dokumantasyonunu inceleyebilirsiniz veya wordpress blog/forum’larını inceleyebilirsiniz.
Bir diğer yapılandırma seçeneği ise üstteki kısımdır. Bu aşamada kullanmanız gereken bilgileri, AWS IAM servisini kullanarak oluşturuyorsunuz. Ayarları kaydettikten sonra siteninizin içeriğini AWS S3’e upload edebilirsiniz.
Üstte görüldüğü üzere wp-content, S3’e upload ediliyor.
Belirlediğiniz diğer içeriği/içerikleri de sırayla upload edebilirsiniz.
Daha önce cache’lenmiş media’nın güncellenmesi için üstteki seçeneği kullanabilirsiniz. Yaptığınız işlemlerin ardından AWS S3 ‘e aktardığımız içerik aşağıdaki gibidir(test ortamımdaki içerik bu şekildeydi,sizin aktardığınız içerk farklı ise, görünüm farklı olacaktır!).
Web uygulamanızı web brower ile gezerek AWS CloudFront ’a gelen talepleri aşağıdaki menüleri kullanarak gözleyebilirsiniz.
Bölüm 3 ‘ün de sonuna gelmiş oldum. Daha önce alınmış olan yedeği yeni ortama geri yükledik. W3 total cache eklentisi ile static içeriği(veya sizin belirleyeceğiniz içeriği) AWS S3’e yükledik. Dolayısıyla web uygulamama gelen talepler cloudfront((bölüm iki de belirttiğim ayarlar ile) distribution’una göre işlem görmeye başlamış oldu(cache).
Not: W3 total cache eklentisinde kullandığınız access key id’ye ait IAM user’ın en azından aşağıdaki izine sahip olması gerekir.
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Sid”: “ABC2229XXXX689070”,
“Effect”: “Allow”,
“Action”: [
“s3:DeleteObject”,
“s3:GetObject”,
“s3:GetObjectAcl”,
“s3:ListBucket”,
“s3:PutObject”,
“s3:PutObjectAcl”
],
“Resource”: [
“arn:aws:s3:::bucket_ismi”,
“arn:aws:s3:::bucket_ismi/*”
]
}
]
}
Herkese sorunsuz ve neşeli günler dilerim.
Kaynaklar:
http://aws.amazon.com/cloudfront/
https://aydogmusoglu.com/?s=cloudfront
http://www.admin-magazine.com/Articles/Supercharge-Your-Website-with-Amazon-CloudFront
https://tinkertry.com/easy-install-amazon-cloudfront-cdn-with-wordpress-plugin-w3-total-cache
https://rtcamp.com/tutorials/cdn/amazon-cloudfront-wordpress-w3-total-cache/
http://publishingwithwordpress.com/activating-amazon-cloudfront/
http://www.elegantthemes.com/blog/tips-tricks/how-to-use-amazon-s3-and-cloudfront-with-wordpress
3 comments found