Azure Storage Services – Part 1:Storage Account

Azure Storage Services makale serisinin giriş bölümünde genel olarak seri boyunca nelerden bahsedeceğimizi inceledik.

Seri boyunca inceleyeceğimiz Azure üzerindeki depolama hizmetlerinin (Blob, Table, Queue) tamamını kullanabilmek için öncelikle Azure üyeliğiniz üzerinden bir depolama hesabı oluşturmanız gerekmektedir. Bu depolama hesabı aslında size dünya üzerinde benzersiz bir isim sağlayarak içeride kullanacağınız farklı hizmetlere erişim yetkisi vermektedir. Aynı zamanda kullanılan hizmetlerin fiyatlandırılması da depolama hesabının türüne göre değişiklik göstermektedir. Her bir depolama hesabı için belirlenen üst limitler bulunur (makalenin devamında bahsedilmiştir) ve bu limitler kapsamında hizmetlerin hangi özellik setleri ile kullanıldığına göre farklı fiyatlandırmalar ortaya çıkmaktadır.

Farklı özellik setlerinden kastımız ise depolama hesabı oluşturulması ile birlikte belirlenebilecek ek detaylardır. Örneğin bu hesabın ne kadar kapasitede kullanılacağı, replikasyon yöntemi,  depolama üzerindeki transaction boyutları gibi.

Azure üzerinde kullanılan depolama hizmetinde temel maliyet kalemi ne kadar verinin bu storage hesabı içerisinde barındırıldığıdır. Verinin boyutunun yanında aynı zamanda bu verinin hangi replikasyon modeli ile saklandığı da maliyeti etkileyen bir diğer unsurdur. Bunun yanında Azure Storage hesabı içerisindeki tüm okuma ve yazma işlemleri (transactions) ile birlikte Azure veri merkezlerinden dışarı aktarılan veri de maliyet kalemi olarak eklenmelidir.

Yukarıda bahsettiğim maliyet kalemlerini aşağıdaki adresleri kullanarak hesaplayabiliriz. Aynı zamanda makale serisinin son bölümünde fiyatlandırma konusuna değiniyor olacağız.

http://www.windowsazure.com/en-us/pricing/details/#storage

http://www.windowsazure.com/en-us/pricing/details/data-transfers/

İlk link kapasite, replikasyon ve transaction için fiyat detaylarını bize sunarken ikinci link ise Azure veri merkezi dışarısına aktarılan verinin maliyetlendirmesini hesaplar.

Oluşturulan her bir storage account, oluşturulduğu bölge bilgisine göre farklı limitlere sahiptir. Örneğin Avrupa bölgesinde oluşturulan bir Storage Account aşağıdaki limitlere sahip olacaktır.

Total Account Capacity Total Request Rate (assuming 1KB object size) Total Bandwidth for a Geo-Redundant Storage Account Total Bandwidth for a Locally Redundant Storage Account
500 TB Up to 20,000 entities or messages per second *Ingress: Up to 5 gigabits per second *Ingress: Up to 10 gigabits per second
*Egress: Up to 10 gigabits per second *Egress: Up to 15 gigabits per second

Yukarıdaki tabloda ingress, Azure veri merkezine yani Storage Account içerisindeki depolama çözümüne aktarılan veriyi temsil eder. Egress ise Azure veri merkezinden, yani Storage Account’dan dışarıya aktarılan veriyi temsil eder.

Görüldüğü gibi Avrupa bölgesi için yukarıdaki max. limitlere sahip storage account oluşturulabilir. Bu limitlerin üzerine çıkılmak istendiğinde ise ikinci bir Storage Account oluşturulması yeterli olacaktır.

Maliyeti etkileyen unsurlardan birisi de replikasyon demiştik. Bir storage account içerisindeki veri dünya üzerindeki 15 bölgeye replike olabilecek teknolojiye sahiptir. Bu sebeple herhangi bir veri merkezinde yada kıtada oluşabilecek felaket durumuna karşın verinizi koruma altına alabilirsiniz.

Verinin replike edilmesi için depolama hesabı içerisinde aşağıdaki replikasyon yöntemleri bulunmaktadır.

  • Locally Redundant Storage (LRS)
  • Zone-Redundant Storage (ZRS)
  • Geo-Redundant Storage (GRS)
  • Read-Access geo-redundant storage (RA-GRS)

Bu replikasyon yöntemleri ile ilgili detayları “Azure Storage Services – Part 6:Redundancy” bölümünde inceliyor olacağız.

Depolama hesabı oluşturma adımlarını incelemeden önce bu adımlar tamamlandığında bize sunulan detaylardan bahsedelim. Azure içerisinde bir depolama hesabı oluşturduğunuzda kullandığınız servisin türüne göre size uç nokta erişim URL’leri sunulacaktır. Bu uç noktalar sayesinde makale serisinin devamında görüleceği gibi farklı hizmetlerin içerisindeki verilere farklı yöntemler ile ulaşma imkanına sahip olunacaktır.

  • Blob service: http://mystorageaccount.blob.core.windows.net
  • Table service: http://mystorageaccount.table.core.windows.net
  • Queue service: http://mystorageaccount.queue.core.windows.net
  • File service: http://mystorageaccount.file.core.windows.net

Oluşturulan bu uç noktalar dışında aynı zamanda ilgili hizmetlere ve verilere güvenli şekilde ulaşabilmek için erişim anahtarları kullanılır. Her bir depolama hesabı oluşturulduğunda, Azure otomatik olarak sizin için 512-bit bir erişim anahtarı oluşturur. Bu anahtar depolama hesabı’nın tüm güvenliğini sağladığı için farklı kişiler ile paylaşılmaması şiddetle önerilir. İstenildiği takdirde bu erişim anahtarları tekrardan oluşturulabilir.

Eğer depolama hesabı içerisindeki verilerin paylaşılması isteniyor ise erişim anahtarları yerine “Shared Access Signature” denilen yöntem kullanılabilir. Shared Access Signature size, verilerinize delegasyon ile yönetim hakkı atama şansı tanır. Örneğin kullandığınız uygulamaya istemci tarafından veri transferi gerçekleştirilmesi gerekiyor olabilir. Bu veri transferini ise direkt olarak Azure Storage üzerine yazmak isteyebilirsiniz.

Bu tarz bir senaryoda hizmetinizi kullanan istemcilere erişim anahtarlarını vererek yönetici haklarını atamak yerine SAS ile delege edilmiş hakları verebilirsiniz.

Tüm bu detaylardan sonra artık yeni bir depolama hesabı oluşturma adımlarını inceleyebiliriz. Bunun için aktif bir Azure Subscription’ı içerisinde New bölümünden Quick Create ile depolama hesabı oluşturabiliriz.

image

Görüldüğü gibi tek bir adımda benzersiz bir isim tanımlayıp, lokasonu seçip ardından son olarak replikasyon modelini belirleyip hesabı oluşturabilirsiniz.

Oluşturulan depolama hesabı hızlıca panele yansıyacaktır. Bu panel üzerinden yukarıda bahsedilen erişim anahtarlarına ulaşabilir ve yenileyebilirsiniz.

image

Bu noktada size sunulan erişim anahtarlarının önemi büyüktür. Uygulamalarınız veya kodunuz içerisinde Azure Storage erişimi yapmak istediğinizde sizden istenen iki adet gerekli bilgi vardır. Bunlardan ilki Storage Account ismi ikincisi ise Primary Access Key. Burada ikinci bir erişim abahtarının daha sunulmasının sebebi ise diğer anahtarınızı hizmetlerinizde herhangi bir kesintiye sebep olmadan rahatlıkla “regenerate” edebilmenizdir.

Çünkü regenerate edilen bir erişim anahtarı sonrasında sanal makinelere, medya hizmetlerine ve bu depolama alanını kullanan tüm uygulamalara erişimler etkilenecektir. Bunu önlemek için öncelikle tüm anahtarlar Secondary Access Key ile değiştirilir, ardından Primary Access Key regenerate edilir ve tekrardan yeni değer ilgili hizmetler üzerinde güncellenir.

Dashboard panelini açtığınızda ise farklı hizmet tipleri için erişim uç noktaları size sunulacaktır. Görüldüğü gibi size ait bir DNS ismi ile standart erişim bilgileri verilmiştir.

image

İstenildiği takdirde yukarıdaki gibi varsayılanda gelen URL’lere size ait custom domain isimleri ile erişebilirsiniz. Bunun için izlemeniz gereken adımlar aşağıdaki gibidir.

  • Configure bölümünde Manage Custom Domain tıklanarak CNAME kaydı oluşturulması için gerekli bilgi ekranı görüntülenir.

image

  • İlgili domain için DNS yönetim panelinize girilir ve Blob hizmeti için varsayılanda oluşturulan endpoint adresi ve subdomain alias’ı ile (ör www) istediğiniz domain altında bir CNAME kaydı oluşturulur.
  • Manage Custom Domain ekranına yeni domain ismi girilir ve Register butonuna basılır.

Bu sayede size ait domain isimleri altındaki subdomain aliasları ile (blobstorage.anilerduran.com) blob depolama hizmetlerinize erişim sağlayabilirsiniz.

Configure bölümünde ise replikasyon detaylarını değiştirebilir, farklı hizmet tipleri için loglama ve monitoring servislerini açabilirsiniz.

image

Blob depolama hizmeti için kullanılan Container kavramını Azure Storage Services – Part 2:Blob Storage yazısında işliyor olacağız.

Görüldüğü gibi Azure Storage Services ile birlikte sunulan tüm hizmetlerden faydalanabilmek adına öncelikle bir depolama hesabı oluşturmalı ve bu hesabın detaylarını belirlemelisiniz.

Hesap oluşturulduktan sonra artık Azure Depolama Hizmeti içerisindeki farklı konseptler üzerinde aksiyon almaya başlayabilirsiniz. Makale serimizin devamında inceleyeceğimiz konsept aşağıdaki gibi özetlenebilir.

storage-concepts

Bugün itibari ile Azure üzerinde iki farklı depolama hesabı tipi bulunmaktadır.

Standard Storage Account: Blob, Table, Queue ve File Storage(Preview) opsiyonlarını barındırır.

Premium Storage Account: Preview olarak sunulan bu tip Azure Virtual Machine disk desteği sunmaktadır.

Makale serimizinde ağırlıkla Standard Storage Account içerisindeki hizmetlerden bahsediyor olacağız. Ancak Premium Storage Account hizmetinde de hızlıca bahsedebiliriz.

Premium gibi bir hizmetle depolama hizmetinde üst seviye bir hizmet vermek isteyen Microsoft, son teknoloji SSD (Solid State Drives) sunmaktadır. Sanal makineler için varsayılanda kullanılan HDD (Hard Disk Drives) performansının yetersiz olduğu durumlarda Premium hesap ile birlikte gelen SSD disklere sahip sanal makineler kullanılabilir.

Sanal makineler için özelleştirilmiş bir depolama hesabı olduğu için yalnızca sanal makineleri barındırabilen Page Blob özelliği kullanılabilir durumdadır. Premium Storage ile birlikte sunulan 3 farklı disk tipi bulunmaktadır ve bu disk tipleri için sunulan IOPS / Throughput değerleri aşağıdaki gibidir.

image

3 thoughts on “Azure Storage Services – Part 1:Storage Account

Leave a Reply

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

− 2 = 6