Enerji verimli bulut sistemler için hataya dayanıklı sanal makine bütünleştirme
Bu tez size mi ait?
Bu kayıt toplu arşivden geldi. Sizinse profilinize bağlayın.
Özet (TR)
Günümüzde yüksek kapasiteli ağların her yerde ve yerden kullanılabilir olması, sunucuların ucuzlamasının yanı sıra insanların donanımla değil yapacakları işlere odaklanmak için donanımın sanallaştırılmasının yaygın olarak benimsenmesi bulut bilişimin büyümesinde çok büyük pay sahibi olmuştur. Ayrıca bulut bilişim sağladığı kullandığın kadar ödeme sistemi ve ihtiyaca göre sistemin otomatik bir şekilde yeni sanal makine eklenerek ya da olan sanal makinelere kaynak eklenerek büyütülmesi bulut bilişim diğer tercih sebeplerindendir. Ancak bulut bilişimin yaygınlaşması ve son kullanıcı için sanallaştırılsa da yine fiziksel makineler üzerinde olması kullanılan enerjinin artmasına neden olmuştur ve araştırmaların bulut bilişim performansı kadar enerji kullanımının azaltılması konusuna kaymasına da neden olmuştur. Bunun dışında bulut bilişim kullanıcılarının tüm uygulamarını bulut ortamlarına taşımasıyla birlkte bulut ortamlarındaki fiziksel makinelerde ya da sanal makinelerde karşılaşılabilecek yazılımsal ya da donanımsal hataların doğurduğu sonuçlar daha önemli hale gelmeye başlamıştır. Bu da hataya dayanıklı bulut bilişim algoritmalarının oluşturulması ihtiyacını doğurmuştur. Sanal Makinelerin üzerinde bir uygulama çalışsa da çalışmasa da kullanılan işletim sisteminden kaynaklı belirli bir kaynak kullanımı olduğu ve bunun da enerji kullanımını arttırdığı gözlenmiştir. Bu durumundaki lüzumsuz enerji kullanımını azaltmak için sanal makinelerin bütünleştirilmesi ihtiyacı doğmuştur. Böylelikle belirli sanal makineler kapatılıp üzerindeki uygulamalar başka sanal makinelere dağıtılarak sistemin daha az makine ile enerji kullanımının azaltılması planlanmıştır. Bu konuda yapılan birçok akademik araştırma enerji verimliliğini sanal makine bütünleştirmesiyle arttırılabildiğini ispatlamıştır. Ancak sanal makinelerin bütünleştirilmesi; kapatılacak sanal makinenin üzerindeki uygulamaların bir ya da daha fazla sanal makineye taşınması ihtiyacını doğurur. Bunun için canlı göç ve soğuk göç olmak üzere iki temel göç yöntemi vardır. Canlı göç yönteminde bir sanal makineden başka bir sanal makineye taşınacak uygulama durdurulmadan taşınırken soğuk göç yönteminde uygulama dururulup taşınır ve sonra yeniden başlatılır. Bu yöntemlerin ikisinin de farklı kullanım alanları vardır örneğin eğer uygulamanın belirli bir servis kalitesini yakalamak için durdurulmaması gerekiyorsa canlı göç, eğer enerji ve kaynak kullanımları arttırılmadan taşınması gerekiyorsa soğu göç yönteminin kullanılması gerekmektedir. Bu çalışmada bu iki göç yöntemi de denenmiş ve sonuçlar ikisin için de çıkarılmıştır.Enerji verimliliğini artırmak için sanal makinelerin bütünleştirilmesi bulut ortamın; sanal ya da fiziksel makinelerde oluşabilecek hatalara açık duruma gelmesine neden olabilir. Hataya karşı alınan önlemler genel olarak iki sınıfa ayrılabilir bunlardan ilk algoritma hata olmadan önce hata olma ihtimaline hazılanıp hatanın getirebileceği sorunların azaltılması ya da hatanın önceden tahmin edilerek oluşmasının önlenmesini sağlar. İkinci önlem algoritması ise hata olduktan sonra hızlı bir şekilde sistemi eski haline getiren genelde replikasyon algoritmalarıdır.Bu çalışmada hatadan önce hata olma ihtimali öngörülerek hatanın getireceği hsaarın minuma indirilmesine çalışan bir hata önlem algoritması önerilmiştir. Bu durumda ya uygulamalar için garanti edilen servis zamanı karşılanamayacak ya da uygulamaların başka makinelere taşınarak tekrar çalışması sağlanacaktır. Ancak uygulamaların bir makineden başka bir makineye taşınması uygulamanın canlı göç algoritmasının durumda, normalde kullandığından daha fazla bir enerji kullanımına sahip olmasına neden olacaktır. Eğer soğuk göç algoritması kullanılır ise garanti edilen servis zamanının sağlanamama ihtimali doğacak ve servis kalitesi düşecektir. Aynı şekilde eğer uygun bir sanal makine bulunamazsa ve yeni bir sanal makine oluşturulması gerekirse bu da sanal makinenin enerji kullanımının kurulum işlemlerinden dolayı bir süreliğine normalde olduğundan daha fazla olmasına sebep olacaktır. Bu durumlar aslında sanal makine bütünleştirerek enerji kullanımını düşürmek isterken enerji kullanımının aksine artmasıyla sonuçlanacaktır. Bunun için sanal makine bütünleştirme kararlarının hata durumların göz önünde bulundurularak verilmesi gerekmektedir.Bu çalışmada bulut sisteminin enerji verimliliğini arttırmak için sanal makine bütünleştirmesi yapılırken bir yandan da bulut sisteminin hata durumlarına karşı daha dayanıklı olmasını sağlayan bir algoritma önerilmiştir. Algoritmanın denenmesi için Java ile geliştirilen bir simülasyon yazılımı kullanılmıştır. Üretilen uygulamaların üretilme zamanları ve kaynak kullanımları Google'ın yayınladığı Cluster Data Traces'ten normalize edilerek simülasyonda dahil edilmiştir. Hata olma zamanları genel kabul gördüğü üzere Weibull Dağılımına göre rastgele seçilmiştir. Genel Simulasyon yapısında bir veri merkezi içerisinde bir fiziksel makine ve bu fiziksel makinenin içerisinde ihtiyaca göre birden fazla sanal makine ve bu sanal makinelere atanan belirli zamanlarda oluşturulan uygulamalar olduğu varsayılmıştır.Simülasyon akışında ilk adım olarak uygulamalar Google'dan alınan normalize edilmiş verilere göre belirli kaynak ihtiyaçları, belirli yaşam süreleri ve belirli başlangıç zamanları ile oluşturulur. Ayrıca simulasyonda uygulamaların kaynak olarak yalnızca bellek ve işlemci kullanımları dikkate alınmıştır. Sonrasında oluşturulan bu uygulamalar Round Robin algoritmasına göre sanal makinelere yerleştirilir. Uygulama yerleştirmesi olarak daha karmaşık ve daha iyi algoritmalar önceki çalışmalarda uygulanmış ve iyi sonuçlar verdiği kanıtlanmıştır ancak bu alan bu araştırmada incelenen bir alan olmaıdğı için basit bir algoritma seçerek simulasyon ilerletilmiştir. Çalışmanın odaklandığı nokta atamalar gerçekleştikten sonrasında sanal makinelerin kontrolünün yapıldığı kısımdır. Bu kısımda o simulasyon periyodunda seçilen algoritmaya göre tüm sanal makineler kontrol edilir ve seçilen bütünleştirme algoritmasına göre bütünleştirme kararı verilir ya da verilmez. Simulasyonda üç farklı algoritma seçilebilir bunların ilki hiç bir sanal makineyi bütünleştirmeyen bütünleştirmesiz algoritma, ikincisi belirlenen eşik kullanım miktarından daha az kaynak kullanıma sahip sanal makineleri bütünleştiren bütünleştirme algoritması ve sonuncusu önerilen hataya dayanıklı bütünleştirme algoritmalarıdır. Bütünleştirme ve hataya dayanıklı bütünleştirme algoritmaları periyot sonlarında tüm sanal makineleri kontrol ederek eğer sanal makinelerin kaynak kullanımları belirlenen eşik değerden daha düşükse bütünleştirme algoritmasında bütünleştirme kararını verir. Ancak hataya dayanıklı bütünleştirme algoritmasında eşik değerden daha az kaynak kullanımına sahip sanal makineyi bütünleştirme adayı olarak belirleyip algoritma içerisinde eğer sanal makine bütünleştirilirse sistem hataya açık bir duruma gelecek mi diye kontrol edip bu kontrolün sonucuna göre bütünleştirme kararını onaylar ya da reddeder. Bulut ortamının hataya açık duruma gelmemesi için önceden verilen karara göre sistemdeki en yüksek, en düşük ya da ortalama kaynak kullanımına sahip sanal makineyi garanti edilen sanal makine olarak belirlenir ve bütünleştirme adayı sanal makine ile garanti edilen sanal makine dışındaki diğer makinelere garanti edilen sanal makinenin ve bütünleştirme adayı sanal makinenin uygulamalarının taşınıp taşınamayacağı kontrol edildikten sonra bütünleştirme kararını onaylanır ya da reddedilir.Önerilen algoritmanın performansını görmek için simulasyonda 4 farklı deney yapılmıştır. Bu deneylerin ilk üçünde canlı göç yöntemi kullanıp, ilk ikisinde hataya dayanıklı bütünleştirme algoritması için en yüksek kullanımlı sanal makinenin garanti edilen sanal makine olarak seçilmiştir.İlk deneyde canlı göç yöntemi kullanılarak değişen eşik değerlerine bütünleştirmesiz, eşik değere göre bütünleştiren ve hataya dayanıklı bütünleştirme algoritmalarının enerji kullanımı değişimleri karşılaştırılmıştır. Bu karşılaştırma için verilen yüzde 30-40-50-60-70 eşik değelerinde bütünleştirmesiz ve hataya dayanıklı bütünleştirme algoritmalarının eşik değer değişimlerinden etkilenmedikleri ancak bütünleştirme algoritmasının eşik değer arttıkça enerji kullanımının arttığı gözlemlenmiştir. Ayrıca hataya dayanıklı bütünleştirme algoritmasının diğer iki algoritmadan tüm seçilen eşik değerler için daha az enerji kullanımı olduğu da görülmüştür. Sonrasında hataya dayanıklı bütünleştirme algoritmasının en başarılı olduğu yüzde 50 eşik değer için yine bu üç algoritmanın uygulama göç ettirme sayıları ve enerji kullanımlarının simulasyon zamanındaki değişimleri karşılaştırılmıştır. Bu deneyde de hataya dayanıklı bütünleştirme algoritmasının enerji kullanımını yüzde 37 ve toplam uygulama göç sayısını yüzde 9 düşürdüğü görülmüştür. Ayrıca hata olma durumlarındaki aşırı enerji artışının da yüzde 11 daha az olduğu saptanmıştır.Üçüncü deneyde hataya dayanıklı bütünleştirme algoritmasının garanti edilen sanal makinesi olarak en yüksek mi en düşük mü yoksa ortalama kaynak kullanımına sahip sanal makineyi mi seçmesinin enerji kullanımına ve uygulama taşıma sayısına etkisi karşılaştırılmıştır. Bu deneyde bu üç farklı parametre ile eşik değere göre bütünleştirme algoritmaları karşılaşırılmıştır. Hataya dayanıklı bütünleştirme algoritmasının garanti edilen sanal makine kaynağı miktarı düştükçe bütünleştirme isteğini kabul etme ihtimali arttığı için algoritma sonuçları gittikçe eşik değere göre bütünleştirme algoritmasına yakınsamıştır. Ancak garanti edilen sanal makinein kullanımının yükseldiği noktada hataya dayanıklı bütünleştirme algoritmasının en iyi sonuçlara ulaştığı görülmektedir.Son deneyde ise soğuk göç yönteminin hataya dayanıklı bütünleştirme ve bütünleştirme algoritlarındaki etkileri incelenmiştir. Bu deneyde 0'dan 100'e kadar uygulama taşıma süreleri verilmiş ve bunların ortalama uygulama çalışma süresine farklı algoritmalar için etkisi karşılaştırılmıştır. Uygulama taşıma sürelerinin artması hataya dayanıklı bütünleştirme algoritmasını bütünleştirme algoritmasına göre daha az etkilediği ve hataya dayanıklı bütünleştirme algoritmasında uygulamaların daha kısa zamanda işlemlerini bitirerek servis zamanını çok fazla arttırmadığı görülmüştür. Bu da alogirtmanın servis kalitesinin diğer algoritmalara göre daha iyi olduğunu göstermiştir.
Yazar
Cihan Seçinti
Bu Yayına Nasıl Atıf Yapılır
Cihan Seçinti (Yüksek Lisans Tezi). Enerji verimli bulut sistemler için hataya dayanıklı sanal makine bütünleştirme, 2018, İstanbul Technical University.
Anahtar Kelimeler
Lisans
Tüm Hakları Saklıdır
Bu eser belirtilen lisans koşulları altında paylaşılmaktadır.
İstanbul Technical University tezlerinden daha fazlası
- Moebius elektrolizi anot çamurlarından platin grubu metallerin uzaklaştırılması ve geri kazanımı(2015)
- Metrolarda yangın güvenlik önlemleri(2015)
- Bir eylem/eğlen[ce] laboratuvarı olarak fun palace: Mekansal deneyim açılımları ve yansımaları(2015)
- Dynamic analysis of adaptive aircraft wings modelled as thin-walled composite beams(2015)
- Darpa Suboff denizaltı modeli ile bu modelden yeni türetilen formların hesaplamalı akışkanlar dinamiği (HAD) ile sayısal direnç hesabı(2015)
- Zemin ankrajlarının taşıma gücü ve imal yöntemlerinin taşıma gücüne etkisi(2015)