Resource Mapping Optimization For Distributed Cloud Services

thumbnail.default.alt
Tarih
2016-12-05
Yazarlar
Aral, Atakan
Süreli Yayın başlığı
Süreli Yayın ISSN
Cilt Başlığı
Yayınevi
Fen Bilimleri Enstitüsü
Institute of Science and Technology
Özet
Bulut sistemlerinde saklanan ve işlenen verinin boyutu büyük bir hızla artmaktadır. Bunun başlıca nedeni Büyük veri, Nesnelerin İnternet’i ve mobil kod aktarımı gibi Bulut bilişime dayalı alanlardaki gelişmelerdir. Aynı zamanda, bulut tabanlı hizmetler de hızla daha küresel ve coğrafi olarak dağıtık hale gelmektedir. Kullanım senaryosundaki bu değişiklikler ayak uydurabilmek için Bulut Bilişim geçmişte İnternet’in yaşadığı değişime benzer şekilde tamamen özeksiz, birleştirilmiş ve yaygın bir ortama dönüşmektedir. Bu değişimi sağlayacak araştırma alanları hâlihazırda ortaya çıkmaya başlamıştır. Bulut Federasyonları, Çoklu-Bulutlar, Sis Bilişim, Uç Bilişim, Bulutçuklar ve Nano Veri Merkezleri bunların sadece bir kısmıdır. Dağıtık Bulut adı verilen bu yeni yapıya geçişte en önemli sorunlar olarak farklı Bulut sağlayıcı ve altyapıları için standartlaşma ve kaynak yönetimi olarak ortaya çıkmaktadır. Bu tezin odak noktası bunlardan ikincisidir: Sınırlı hesaplama ve ağ kaynaklarının özeksizleşmeye uyum sağlamak için verimli şekilde yönetilmesi. Kaynak yönetimi kaynakların belirlenmesi, atanması, izlenmesi ve gelen isteklerin kaynaklarla eşleştirilmesi gibi adımları içermektedir. Bu adımların tümüyle ilgili çalışmalar yapılmış olmakla birlikte asıl katkı kaynak eşleme alanında verilmiştir. Kısaca; sanal makineler, ağ bağlantıları ve veri tabanlarından oluşan Bulut hizmetlerinin çok sağlayıcılı, coğrafi olarak dağıtık ve dinamik bir Bulut altyapısı üzerindeki birimler ile eşleşmesi iyileştirilmiştir. İyileştirmenin amacı hizmet kalitesini düşük maliyet ile artırmak olarak belirlenmiş, ağ gecikmeleri ve bant genişliği ile depolama ve hesaplama maliyetleri çok amaçlı bir iyileştirmeye tabi tutulmuştur. Kaynak eşlemenin iyileştirilmesi iki aşamalı olarak yapılmaktadır. İlk aşamada sanal makineler ve bunlar arasındaki ağ bağlantıları kaynaklar ile eştirilmekte (topoloji eşleme), ikinci aşamada ise veri tabanındaki nesneler kopyalanıp kaynaklara dağıtılmaktadır (kopyalama yönetimi). İki aşama Bulut hizmetlerinin saklama ve işleme maliyetlerini düşürme ve hizmet kalitesini artırma konusunda birbirini tamamlamaktadır. Hizmet kalitesi artışı; erişim gecikmelerin azaltılması ve hesaplama süresinin kısaltılması gibi iyileştirmelerle mümkün olmaktadır. Topoloji eşleme aşamasında sanal makineler ve bağımlılıklarından oluşan sanal topoloji, Bulut altyapısı sağlayıcıları ve ağ bağlantılarından oluşan fiziksel topoloji ile eşleştirilmektedir. Bunun için fiziksel topolojinin, sanal topoloji ile izomorfik olan alt çizgeleri belirlenmekte, bunlardan kullanıcıya ortalama gecikmesi en düşük olanı ile eşleme yapılmaktadır. Böylece hem kullanıcıya olan gecikme hem de bağımlı sanal makineler komşu sağlayıcılarda bulunduğundan sanal makineler arasındaki gecikmeler azaltılmış olmaktadır. Ek olarak, bant genişliği de verimli şekilde kullanılmaktadır. Yeterli kaynaklara sahip bir alt çizge bulunmadığı durumda ise sanal makineleri birbirine olabildiğince yakın sağlayıcılara yerleştiren sezgisel bir yöntem kullanılmaktadır. Ayrıca bir veri merkezi içindeki kaynak atama problemi de ele alınmıştır. Fiziksel makinelerdeki farklı kaynak türlerinin kullanım oranlarının yaklaşık olarak eşit tutulmasının en verimli kaynak kullanımını sağladığı gösterilmiştir. Bu aşamadaki hipotez, topoloji eşleştirerek yapılan yerleştirmenin, açgözlü algoritmalardan daha iyi sonuçlar vereceğidir. Hipotezin değerlendirilmesi amacıyla yaygın olarak kullanılan Bulut benzetim yazılımı CloudSim geliştirilerek bir deney ortamı kurulmuştur. Yapılan deneyler önerilen algoritmanın diğer yöntemlerde daha düşük gecikmeye yol açtığını göstermektedir. Bu sayede gelen isteklerin yerleşim ve çalışma süreleri kısalmakta ve sistemin toplam iş hacmi artmaktadır. Dolayısıyla, önerilen yöntem hem kullanıcıya hem de sağlayıcıya yarar sağlamaktadır. Üstelik hizmet başına ödenen ücret azalırken, sağlayıcının toplam gelirinde bir değişim olmamaktadır. Kopyalama yönetimi aşamasının amacı ise veriye erişim süreleri ile veri saklama ve taşıma maliyetlerini düşürmektir. Bulut hizmetlerinin veri tabanları analizlerin ve tutarlılık kontrolünün kolaylığı gibi nedenlerle genellikle merkezi konumlarda tutulmaktadır. Bu nedenle, sanal makinelerin coğrafi olarak farklı konumlarda yürütülüp erişim sürelerinin kısalması sağlansa da, veri ihtiyacı yüksek olan hizmetlerde beklenen yarar görülmeyebilir. Geleneksel olarak veri erişim sürelerinin kısaltılması önbellek kullanımı ile sağlanmaktadır. Ancak dağıtık Bulut sistemlerinde önbellek yönteminin iki önemli sakıncası bulunmaktadır. İlk olarak, çok sayıda ve büyük boyutlu veri nesnelerini tüm uç birimlerde saklamak maliyeti artırmaktadır. İkinci olarak, önbellekteki veri ancak bulunduğu konumda kullanılabilmekte, kullanım oranı düşük olmaktadır. Kopyalama yöntemlerinde ise, her bir kopya çevresindeki birden çok konumdan gelecek isteklere cevap verebildiğinden daha düşük maliyetli bir çözümdür. Önerilen yöntem, yöneylem araştırma alanından alınmış olan tesis konumu problemini temel almaktadır. Tesis konumu problemi coğrafi olarak dağıtık müşteri taleplerini en düşük maliyetle karşılayacak tesislerin sayısı ve yerlerini belirlemek ile ilgilenir. Kopya yönetimi için uyarlandığında müşteri talepleri veri isteklerine, tesisler ise kopyalara karşılık gelecektir. Böylece hem gecikmeleri hem de maliyeti azaltmayı sağlayan bir amaç fonksiyonu tanımlanmıştır. Her bir depolama birimi yerel bir eniyileyici olarak çalışmakta ve bu amaç fonksiyonunu küçültecek kopyalama, kopya taşıma ve kopya silme kararları almaktadır. İyileştirme algoritması tekrarlı olarak belirli zaman dilimlerinde çalışmaktadır. Böylece kopyalar merkezden uç birimlere doğru adım adım ilerlememektedir. Önbellek kullanımında önbellekte tutulan verilerin sadece bulundukları birim tarafından bilinmeleri yeterlidir. Ancak, kopyalama yönteminin etkinliği diğer yakın birimlerin de kopyadan haberdar olmasına ve yararlanmasına bağlıdır. Bu nedenle, ikincil katkı olarak, bir kopya bulma yöntemi geliştirilmiştir. Birimlerin tüm Bulut altyapısındaki kopyaların yerlerini bilmeleri önerilen yöntemin özeksiz yapısına aykırıdır. Bu nedenle yeni bir kopya oluşturulduğunda ya da bir kopya silindiğinde sadece gelecekte o veriye istekte bulunacağı tahmin edilen birimlerin haberdar edilmesini sağlayacak bir mesajlaşma yöntemi önerilmiştir. İkinci aşamadaki hipotez, önerilen kopyalama, kopya yerleştirme ve kopya bulma yönteminin önbellek kullanımına göre hem daha düşük maliyetli hem de daha düşük gecikmeli çözümler üretebileceğidir. Hipotez hem gerçek dünyadan alınmış İnternet erişim izleri hem de yapay olarak üretilmiş veriler ile değerlendirilmiştir. Sonuçlar hipotezi doğrulamaktadır. Ayrıca yapay veriler ile yürütülen deneyler, yöntemin faydasının üretilen istek konumları dağılımının varyansı ile orantılı olarak arttığını göstermektedir. Varyans arttıkça, istekler belirli bölgelerde toplanmakta ve buralara yerleştirilecek kopyaların etkinliği daha yüksek olmaktadır. Bu tezde, önerilen kaynak eşleme yönteminin her iki aşamasının da başarımının geleneksel yöntemlerden önemli derecede üstün olduğu gösterilmiştir. Dağıtık ve birleştirilmiş Bulut sistemlerinin gerçekleşmesinde kaynakların verimli ve etkin kullanımı önemli rol oynayacaktır. Bu tezde sunulan deneysel sonuçlar dağıtık Bulut sistemlerinin gerçekleşmesi ve geleceği konusunda umut vericidir.
The magnitude of data being stored and processed in the Cloud is quickly increasing due to advancements in areas that rely on cloud computing, e.g. Big Data, Internet of Things and mobile code offloading. Concurrently, cloud services are getting more global and geographically distributed. To handle such changes in its usage scenario, the Cloud needs to transform into a completely decentralized, federated and ubiquitous environment similar to the historical transformation of the Internet. Indeed, research ideas for the transformation has already started to emerge including but not limited to Cloud Federations, Multi-Clouds, Fog Computing, Edge Computing, Cloudlets, Nano data centers, etc. Standardization and resource management come up as the most significant issues for the realization of the distributed cloud paradigm. The focus in this thesis is the latter: efficient management of limited computing and network resources to adapt to the decentralization. Specifically, cloud services that consist of several virtual machines, dedicated network connections and databases are mapped to a multi-provider, geographically distributed and dynamic cloud infrastructure. The objective of the mapping is to improve quality of service in a cost-effective way. To that end; network latency and bandwidth as well as the cost of storage and computation are subjected to a multi-objective optimization. The first phase of the resource mapping optimization is the topology mapping. In this phase, the virtual machines and network connections (i.e. the virtual cluster) of the cloud service are mapped to the physical cloud infrastructure. The hypothesis is that mapping the virtual cluster to a group of data centers with a similar topology would be the optimal solution. Replication management is the second phase where the focus is on the data storage. Data objects that constitute the database are replicated and mapped to the storage as a service providers and end devices. The hypothesis for this phase is that an objective function adapted from the facility location problem optimizes the replica placement. Detailed experiments under real-world as well as synthetic workloads prove that the hypotheses of the both phases are true.
Açıklama
Tez (Doktora) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 2016
Thesis (Ph.D.) -- İstanbul Technical University, Institute of Science and Technology, 2016
Anahtar kelimeler
Bulut Bilişim, Dağıtık Hesaplama, Kaynak Eşleme, Kaynak Atama, Kaynak Yönetimi, Cloud Computing, Distributed Computing, Resource Mapping, Resource Allocation, Resource Management
Alıntı