AWS S3 (Simple Storage Service)

Merhaba Arkadaşlar,
Mobilhanem.com sitemizden anlattığımız Amazon Web Service derslerimize AWS S3 Servisi dersi ile devam ediyoruz. AWS S3 Servisi kullandığımız işletim sistemlerini düşününce global bir file sistem olarak düşünülebilir. Fakat, bir file sistemden fazlasını sunduğunu da belirtmek isterim.

AWS S3 servisini “bucket” ve “path” ikilisinden oluşan bir structure sahiptir. Bucket’lar evrensel olarak eşsizdirler. Tekrar aynı bucket ismini bir başka account dahi kullanamaz. Path dediğimiz kısım ise bucket altında folder yapısını oluşturur. Güzel tarafı ise siz path’leri regex yardımı ile istediğiniz gibi kullanabiliyor olmanızdır.

 

AWS S3 Özellikleri

  • Güvenilir ve esnek yapısı olması
  • Güvenlik açısından zengin içeri olması
  • Kopyasını almak ve versiyonlamanın kolaylığı
  • Statik web servisi olarak kullanmaya izin verme
  • Diğer servisler ile kolay entegrasyonu

 

Güvenilir ve esnek yapısı olması

Zengin api’ı ve kullanımı kolay konsolu sayesinde kolaylıkla bucket açma kapama dosya yükleme taşıma veya indirme işlemleri çok kolay gerçekleştirilir. Size dosya boyutu ya da kapasite gibi bir kısıtlama sunmamaktadır. Bu nedenle istediğiniz gibi kullanabilirsin.

Şifreleme:

AES-256 algoritması ile içerğin şifreleli sağlanmasını sağlamaktadır. Ayrıca, AWS’nin KMS servisi ile sizin kendi anahtarınızı kullanmanızı sağlamaktadır. Böylelikle AWS KMS’in tüm özelliklerini kullanabilirsiniz 

Kopyalama ve Versiyonlama:

Kolay kopyalanabilir (replication) özelliği sayesinde içeriğinizi kolaylık başka bir bucket’in içine istediğiniz konfigursayon ile kopyalanabilir kılabilirsiniz. Versiyonlama özelliği ile değişiklikleri farklı versiyonlarda tutabilirsiniz. Böylelikle önceki versiyonlara dönebilir ve değişiklikleri takip edebilirsiniz

 

Loglama:

S3 bucketları içinde olan olayları AWS ‘nin başka servislerine (SNS,SQS ve Lambda) event olarak gönderebilirsiniz. SNS yardımı ile aynı eventi birden fazla yere çoklayarak gönderebilirsiniz. Ya da SQS’e atıp queue içinde okuyup kendiniz silerek kontrol edebilirsiniz. Son olarak da direkt lambda fonksiyonunu çağırarak olayı takip edebilir veya farklı reaksiyonlar gösterebilirsiniz.

Örnek:

Kendi servisinizin loglarını S3’te farklı pathlere yükleyebilirsiniz. Loglarınız yüklendikçe oluşan file created eventini lambda üzerinden işleyip o logları da  kendi log servisinize iletebilirsiniz.

 

CloudTrail entegrasyonu:

Cloudtrail ile entegrasyonu sayesinde obje seviyesinde değişiklikleri kontrol edebilir ve anormal durumları fark edebilirsiniz.

 

Statik Web Servisi:

Statik dosyalarınızı web servisi olarak kullanabilirsiniz. S3 ayarlarından ilk index sayfasını belirleyip size verilen s3 url’ini de herhangi bir domain servisi ile kullanabilirsiniz.

Bucket politikası:

Bucket’lara  herhangi bir servisin ulaşabilmesi için ilgili bucket’a bir policy yazılması gerekmektedir. İlgili hesabın id’si ile yapacağı aksiyon belirlenir ve policy’e yazılır. Böylelikle farklı hesaplar tarafından kullanilabilen bir bucket yaratmış oluyorsunuz.

Örnek:

Müşterilerinizin kendi aws account’ında kullanması için bir ürün çıkardınız ve loglarını yönetmek istiyorsunuz. Sadece müşterilerinizin aws account’larını policy olarak girerek onların sizin bucket’ınıza loglamasına izin verebilir ve böylelikle log yönetimini kendi hesabınızdan yapabilirsiniz.

 

S3 TTL

Time to live dediğimiz yüklediğimiz içeriğin ne kadar orada kalacağını belirlediğimiz bir süreyi verebiliriz. Böylelikle ilgili içeriğin ne kadar bir süre yaşayacağı (s3 te yer alacağı)nı belirleyebilir ve yönetebilirsiniz.

AWS bir çok farklı servisleri çok fazla ihtiyaca karşılık vermektedir. AWS S3 servisi ilkler ve en güvenilir olanlar arasında yer almaktadır. Bu yazıda sadece temel özelliklerden ve genel çözüm önerilerinden bahsetmek istedik.

Diğer AWS yazılarımıza buradan ulaşabilirsiniz.

1

Ali Şahin

2 Yorum

Haftalık Bülten

Mobilhanem'de yayınlanan dersleri haftalık mail almak ister misiniz?