Makale Özeti

Bu yazımızda Windows Azure u tanıyacağız hangi temel bileşenleri alt yapıları olduğunu detayları ile incelemeye çalışacağız, bu alt yapılarını inceledikten sonra biraz daha detaylarına girerek yapısını ve nasıl kullanılabileceğini inceleyeceğiz.

Makale

Windows Azure; Mavi İşletim Sistemi

WinAzure_h_rgb.png

Önceki yazılarımızda Cloud Computinge, Software Plus Services e ve son olarakda Azure mantığına değinmiştik, şimdi artık sırada ürün olarak karşımıza çıkacak Windows Azure var. Windows Azure Microsotun Azure servis platformu için geliştirdiği işletim sistemi olacak, ancak genelde yaygın anlayış bu işletim sistemini biz makinelerimize kuracağız şeklinde, tabiiki çok detaylı bilgiler yok bu konuda ancak benim bildiğim kadarı ile bu geliştirilen sürüm Barındırma hizmeti veren firmalar tarafından kullanılabilecek olan, servis platformu, ileride büyük ihtimalle internetten kurulan, internet temelli işletim sistemleri gelecektir ancak Windows Azure tam olarak bu değil.

Bu yazımızda Windows Azure u tanıyacağız hangi temel bileşenleri alt yapıları olduğunu detayları ile incelemeye çalışacağız, bu alt yapılarını inceledikten sonra biraz daha detaylarına girerek yapısını ve nasıl kullanılabileceğini inceleyeceğiz.

Dediğim gibi Windows Azure Microsoft tarafından geliştirilmiş Azure işlemlerinin yapılmasını sağlayan bir işletim sistemi, kendi üzerinde bir den çok yapı barındırıyor, Standart olan erişim yöntemlerini destekler örneğin. HTTP / HTTPS, REST, ATOM vs. gibi. Bunun yanında Windows Azure sizin geliştirdiğiniz uygulamaların işlemlerinin barındırma hizmetini verir. Örneğin .Net uygulamalarınız, .Net Web Servisi uygulamalarınız gibi ve bir diğer işi olan basit veri işleme hizmetinin sunar, bu işlemde üç farklı tip vardır, Table, Blob ve Queues gibi.

Windows Azure un kendi alt bileşenlerini inceleyeceğiz biraz sonra ancak şunu bilmek lazım, daha önceden sağlanan bir çok geliştirme ve yeni özellik Windows Azure platformu tarafından sınırlı olarak desteklenmektedir, ileride tabiiki çok daha fazla özellik desteklenecektir ancak sonuçta Windows Azure ayrı bir şekilde geliştiriyor ve ayrnı mantıklar üzerine inşaa ediliyor.

En başta Azure u 4 temel yapıya ayırmak gerekir.

1.       İşlem Barındırması

2.       Depolama Barındırması

3.       Yapı Denetleyicisi

4.       Load Balancer yapısı

1. İşlem Barındırması : İşlem barındırması temel olarak uygulamanızı yönettiğiniz bölümdür, yazdığınız uygulamaları host eden yerdir, uygulamalarınız temel olarak ikiye ayrılır, Web Role yada Worker Role, aşağıda bu uygulama tiplerine değineceğiz ancak bir Azure uygulamanızda birden fazla Web Role ve Worker Role olabilir, birlikte kullanılabilirler

2. Depolama Barındırması : Windows Azure tarafından sağlanan veri depolama yöntemlerini anlatır, yukarıdaki şekilde de gördüğünüz gibi üç tiptedirler, Table tipi, Queues Tipi ve Blob tipi olarak, Eğer basit anlamda veriler tutacaksanız bu üçlü sizin işinizi görecektir ancak daha gelişmiş veriler tutacaksanız önceki yazımda belirttiğim gibi SQL Servislerinden faydalanmanız gerekecektir.

3. Yapı Denetleyicisi : Bu uygulama parçası aslında işletim sisteminin ana çekirdeğini oluşturan işlemlerin ve veri depolamanın yapılmasını sağlayan katmandır. Bu katman sistemin çekirdeğini oluşturur ve sanal makineler bu uygulama üzerinde çalıştırılır. Örneğin uygulamanız bir paralel yerine iki paralel çalışsın isterseniz bunu Yapı Denetleyicisi yönetir.

4. Load Balancer yapısı : Load Balancer aslında bilinen bir yapı, kendi üzerindeki belirli algoritmalar ile sistemlerin az yoğun olanına paketin gönderilmesini sağlayarak, işlemlerin daha hızlı yapılmasını ve hata denetleme mantığı ile eğer bir sistem çöktü ise oraya daha fazla istek göndermeyerek, gereksiz hataların engellenmesini hedefler.

Gördüğünüz gibi Azure aslında bu 4 temel maddeden oluşmakta şimdi İşlem Barındırması nın içinde gördüğünüz Web Role ve Worker Role nedir bunları inceleyelim,

Web Role : Sizin kullanıcı ile iletişimde olacak olan uygulamanız. Genel anlamda Asp.Net Web uygulaması olurken aynı zamanda Asp.Net Web Servisleride olabilecek. Web Role, kullanıcı ile iletişim halinde olan ve dışarıdan veri alıp işleyebilecek uygulama tipine deniliyor.

Worker Role : Dışarıdan bir veri almadan, yani kullanıcılar ile iletişime geçmeden arka planda çalışan sistemlere denir, bir çeşit Windows Servislerine benzetebilirsiniz. Worker Role arka planda işlemler yapmak için belirli şekillerde çalışan uygulamalara deniliyor.

Bir Windows Azure projesinde, birden çok Web ve Worker role aynı anda yer alabilir.

Şimdide Depolama Barındırmasının içinde yer alan veri tiplerini inceleyelim, her veri tipinin bir amacı ve kullanılacağı yer var, buna göre seçim yapmak önemli.

Blob Veri Yapısı : bu veri yapısı genelde binary dataları tutmak için geliştirilmiştir, içinde bir dosya bir resim gibi dataları tutabilirsiniz.

Table Veri Yapısı : Bildiğimiz tablo mantığında veri tutabilir, ancak ilişkisel mantıkla yer almaz, sisteminizdeki metinsel verileri Table veri yapısında tutabilirsiniz, yapısal olarak veriyi tutar ancak ilişkisel olarak tutmaz, ilişkilendirmek (tablolar arasında Join yapmak) gibi işlemleriniz için SQL Data Servislerini kullanmanız gerekmekte.

Queues Veri Yapısı  : Bu veri yapısı aslında Que gibi işlemler için kullanılır, temelde Worker Role tarafından kullanılması için tasarlanmıştır, çok yoğun işlemler yapılırken bir kuyruklama mantığı ile Worker Role tarafında işlenebilecek datalar için kullanılır.

Bu veri tiplerinden istediğiniz kadarını birlikte kullanabilirsiniz, anlatmaya çalıştığım gibi temel veri tutma işlemlerini Depolama Barındırması yerine getirecektir ancak daha gelişmiş veri tutma yapısal verileri yönetme gibi ihtiyaçlarınız varsa SQL Data Servislerini kullanmanız gerekmektedir.

Windows Azure hayatımıza yeni yeni giriyor ve aslında yeni yeni geliştiriliyor, dolayısı ile sürekli gelişecek sürekli yenilenecek ve şu anda bulamadığınız, “şu da olsa iyi olurdu” dediğiniz şeyler ileride eklenecektir. Ancak temel özelliği yukarıda da belirtmeye çalıştığım gibi, servis temelli yazdığınız uygulamanızı barındıracak alt yapıyı sağlamasıdır.

Windows Azure un sağladığı yapıların yanında Microsoft tarafından geliştirilmiş ve Windows Azure ile birlikte kullanılabilecek Servislerde var, bu servisler ile ilgili başka bir makale yazmayı planlıyorum ama şimdilik neler olabileceğini inceleyelim.

SQL Data Servisleri, Microsoft tarafından aslında temelinde SQL Server 2008 çalışan veri depolama sistemlerine servis temelil erişimi sağlayan servislerine verilen ad, burada daha gelişmiş veri yönetimleri ve yapısal ve ilişkisel sorgulama yöntemleri mevcut

.Net Servisleri, Yine Microsoft tarafından sunulan gelişmiş .Net işlemlerinin yapılacağı servisler, diyebilirsiniz ki zaten .Net ile yazıyoruz .Net in servisini niye kullanalım, aslında Microsoft tarafından sağlanan Workflow, Service Bus gibi alt yapılar için bu servislere ihtiyacınız oluyor

Live Servisleri, Microsoft un Live vizyonu ile kullanıma sunduğu çok sayıda servisi, örneğin kullanıcı yetkilendirme işlemleri, kullanıcının kontaklarının bulunması işlemleri gibi aslında çok kulandığımız ve uygulamamızı renklendirecek servisleri.

SharePoint, Dynamics servisleri, biraz daha iş dünyası ile ilgili servisler, ilerde eminim çok popüler olacak servisler de yeni yeni Microsoft tarafından duyruluyor destekleniyor.

Bir sonraki yazıda Windows Azure u nasıl kendi makinenizde kullanacağınızı ilk Azure hello World ünü nasıl yapacağınızı ve Windows Azure SDK ile gelen araçların neler olduğunu bu araçları nasıl kullanacağınızı incelemeye çalışacağız.

Herhangi bir sorunuz olursa bana mail gönderebilirsiniz. Blogumdan gelişmeleri takip edebilirsiniz.

http://Blog.CenkCaglar.Com