Please use this identifier to cite or link to this item: http://hdl.handle.net/11527/430
Title: Büyük Patlama - Büyük Çöküş Yöntemini Kullanarak Sanal Makinelerde Dağıtık Kaynak Planlama
Other Titles: Distributed Resource Scheduling On Virtual Machines By Using Big Bang - Big Crunch Algorithm
Authors: Erol, Osman Kaan
Erol, Ercan
10028682
Bilgisayar Mühendisliği
Computer Engineering
Keywords: Büyük Patlama Büyük Çöküş
yük dengeleme
sanallaştırma
bulut
kaynak yönetimi
Big Bang Big Crunch
load balancing
virtualization
cloud
resource management
Issue Date: 27-Feb-2014
Publisher: Fen Bilimleri Enstitüsü
Institute of Science and Technology
Abstract: Her yıl Gartner araştırma ve danışmanlık şirketince açıklanan Hype Cycle, belli başlı teknolojilerin olgunluğunu, ne ölçüde benimsenilir ve uygulanır olduğunu belirten grafiksel bir rapor aracıdır. Bilgi Teknolojileri Operasyon Yönetimi ve Bulut Bilişim konulu 2013 Hype Cycle grafiklerine göre Özel Bulut Bilişim ve Sanal Makine Esnekliği önem kazanması beklenen teknolojiler arasında yer almaktadır. Bulut Bilişimde kullanılan teknolojilerin başında gelen Sunucu Sanallaştırma, sanal sunucuların ihtiyaçlarına göre ortak altyapıda yer alan kaynakların dağıtılmasında esnekliğe ihtiyaç duyar. Beklentilerin en üst noktaya ulaştığı bu teknolojilerin yoğun kullanımından ötürü sanal sunucu dağınıklığı, paylaşılan altyapı kaynaklarının verimli yönetilmesi gibi problemler doğmaktadır. Dağıtık Kaynakların Planlanması sanal altyapılardaki yönetim görevlerini ve kaynakların verimlerini gözleme yükünü hafifletir. Dağıtık Kaynak Planlama, işlemci darboğaz sıkıntısı yaşamamak için sanal sunucuları kaynak tahsis kurallarına göre doğru fiziksel sunuculara taşıyarak fiziksel sunucular arasında işlemci yükünü dengelemeyi hedefler. Ortak altyapıda yer alan kaynaklara müdahale BT yatırımlarındaki operasyonel ve mali giderleri azaltır. Fiziksel kaynakların sanallaştırılarak sanal sunuculara bir havuz şeklinde sunulmasıyla ihtiyaç duyulan esneklik sağlanmaktadır. Ancak bu esnekliğin yönetilmesi de bazı problemler içermektedir. Kaynak havuzunu oluşturan fiziksel sunucular istekleri karşılamada yetersiz kaldığı anlarda üzerlerindeki yükün dağıtılıp dağıtılmaması gerektiği, dağıtılacaksa hangi sanal sunucuların hangi fiziksel sunuculara aktarılacağı gibi noktaların belirlenmesi gerekmektedir. Sanal sunucuların son kullanıcılara hissettirmeden taşınabilmesi için kümeyi oluşturan fiziksel sunucuların konfigürasyonlarının eşlenik ve ortak bir disk alanına erişiyor olması gerekmektedir. Bir sanal sunucunun bir fiziksel sunucudan başka bir fiziksel sunucuya canlı olarak aktarılması, sanal sunucunun belleğindeki etkin verilerin kopyalanmasıyla her iki fiziksel sunucuda da eşlenik olduğu anda diğer fiziksel sunucu üzerinden çalışmaya devam etmesinden ibarettir. Yapay Zeka teknikleri gerçek zamanlı dinamik ortamlarda kaynak yönetimi için yaygın olarak kullanılır. Sanal sunucuların isteklerini karşılamak için fiziksel kaynakların en iyi dağılımı genetik algoritmaların evvelden beri başarılı kabul edildiği bir problem türüdür. Bu problemi çözmede başka bir en iyileme yöntemi olan Büyük Patlama-Büyük Çöküş (BP-BÇ) de kullanılmıştır. Evrenin evrim sürecindeki doğa olayından esinlenilen BP-BÇ, Erol ve Eksin tarafından 2006 da tanıtılan bir en iyileme yöntemidir. BP-BÇ, yalnızca çözüm popülasyonunun rastlantısallığını korumayıp aynı zamanda yerel en iyilere takılmadan en iyi çözümün izini sürer. Bir kümede yer alan fiziksel sunucular üzerinde işlemci ve bellek kaynakları atanarak belli adette sanal sunucu barındırılabilir. Bir fiziksel sunucu üzerinde çalışan sanal sunucuların işlemci ihtiyaçlarının kümedeki diğer fiziksel sunuculardaki yüke eşit olmadığı görülebilmektedir. Bu da bazı fiziksel sunucuların işlemci ihtiyaçlarına cevap vermede sıkıntı yaşarken diğer fiziksel sunucuların üzerindeki kullanılmayan kaynakların israfına yol açmaktadır. Sanallaştırma teknolojilerinin öncülerinden olan VMware, kümelerde kaynak planlama yöntemi olarak Açgözlü-Yüksek Tırmanış algoritmasını kullanmaktadır. Her sanal sunucunun diğer olası fiziksel sunucuların üzerine taşınmasının, o fiziksel sunucu üzerine yüklenen kaynakların kullanımını azaltıp azaltmayacağını deneyerek belirli bir eşik değerinin altına inildiğinde bunu gerçekleyen bu tip yöntemlerin yerini daha erken müdahale ve kontrol yetkinliğindeki yöntemlere bırakması beklenmektedir. Bunun için en uygun yöntemlerden olan Yapay Zeka teknikleri en iyi dağılımları bularak kümedeki düzeni daha az rahatsız edecektir. Açgözlü-Yüksek Tırmanış algoritmasının en iyi dağılıma ulaşmak gibi bir amacı olmadığından burada elde edilecek uygunluk değerleri karşılaştırmada kriter olarak kullanılmayacaktır. Ancak aday yöntemin çalışma süresi Açgözlü-Yüksek Tırmanış algoritmasına göre karşılaştırılabilir. Tezde birbirleri ile karşılaştırılan BP-BÇ yöntemleri tek bir yük dağılımı için 200 neslin sonuna dek çalıştırıldığında 3 dakikadan daha kısa bir sürede sonuçlanmaktadır. Kümedeki dengesizliklerin kontrol edildiği 5 dakikalık zaman dilimleri için uygun bir çalışma süresi olarak değerlendirilebilir. Bu çalışmanın ana amacı BP-BÇ en iyileme yöntemini sanal sunucuları dağıtık kaynaklar üzerine yerleştirirken yakınsama hızını farklılaştırarak performansının iyileştiğini sanal sunucu göç maliyetlerini de içerecek biçimde karşılaştırmaktır. Ortam 4 fiziksel sunuculu bir küme üzerinde çalışan 20 sanal sunucu ve 8 fiziksel sunucu üzerinde çalışan 40 sanal sunuculu ayrı bir küme şeklinde varsayılmıştır. Problemi çözmek için gereken veriler sanal sunucuların fiziksel sunucular üzerindeki ilk dağılım durumu, çekirdek adetleri, atanmış bellek miktarları ve belirli zaman aralıklarındaki işlemci gücü ihtiyaçları şeklinde sağlanmıştır. Popülasyon içindeki bireyler sanal sunucuları temsil ederken taşıdıkları değerler de bulundukları fiziksel sunucuların indeksleridir. Böylece bir popülasyon içindeki bireyler olası dağılımları barındırmaktadır. Testler iki farklı senaryoya göre gerçekleştirilmiştir. İlk senaryoya göre 24 farklı zaman aralığında ihtiyaç duyulan işlemci güçleri ile oluşan yük dengesizliklerini algoritmaların hepsinde aynı ilk dağılıma göre çözmeleri sağlanmıştır. Böylece ortalamaları alırken hep aynı problem kümesi üzerinden elde edilen sonuçlar hedeflenmiştir. İkinci senaryoya göre ise 24 farklı zaman aralığında sanal sunucuların ihtiyaç duyacağı işlemci güçleri algoritmalara bu kez seri olarak verilmiş; bir önceki zaman aralığında elde edilen çözüm kümesi yeni zaman aralığının ilk dağılımı gibi ele alınmıştır. Böylece algoritmaların ardı ardına kendi çözümleri üzerinden yaratacakları farklılıklar da karşılaştırılmıştır. Elde edilen sonuçlardan algoritmaların tüm zaman aralıklarının sonucundaki ve bazı zaman aralıklarındaki davranışları grafik olarak sunulmuştur. Uygunluk fonksiyonu fiziksel sunucularda koşan sanal sunucuların işlemci yükünün, çekirdek adedinin ve bellek miktarının normalize edilmiş standart sapmalarının ağırlıklı toplamı biçiminde hesaplanır. Sanal sunucuların fiziksel sunucular üzerindeki en iyi dağılımı bulunduktan sonra çözüm ilgili sanal sunucuları fiziksel sunucular arasında taşıyarak uygulanır. Her fiziksel sunucudaki kaynak sınırlarını aşmadan sunucular arası taşınan sanal sunucuların bellek miktarları da fiziksel sunucular arası kopyalanması gerektiğinden maliyet olarak uygunluk fonksiyonuna yansıtılır. Böylece fiziksel sunucular üzerindeki kaynak kullanımlarının standart sapmalarının en düşük düzeye eriştiği görülür. Daha başarılı sonuçlar veren BP-BÇ en iyileme yöntemi daha evvel birçok çalışmada geleneksel genetik algoritmalara karşı incelenmiştir. Bu çalışmada algoritmalar MATLAB 7 (R14) sürümünde gerçeklenmiş ve aynı veri girdileri üzerinde ulaştıkları en iyi uygunluk değerleri karşılaştırılmıştır. Tüm algoritmalar için aynı uygunluk fonksiyonu kullanılmış ve normalize edilmiş standart sapmaların ağırlıkları da kaynakların kullanım önemlerini yansıtacak biçimde seçilmiştir. Algoritmalar yakınsama hızları açısından farklılıklar göstermektedir. Elde edilen verilerin istatiksel açıdan anlamlı olup olmadığını görmek için varyans analizi ve sonrasında Tukey in çoklu karşılaştırma testleri uygulanmıştır. Büyük Patlama fazı sırasında yakınsama oranını belirli aralıklarda yeniden ayarlamanın sürekli azalan bir yakınsama oranına göre %90 güven aralığında 24 adet yük dağılımının hepsinde daha iyi sonuçlar verdiği görülürken bu adet %95 güven aralığında 9 adede düşmüştür.
Hype Cycle, announced annually by Gartner, defines the maturity, adoption and application of specific technologies. According to 2013 Hype Cycles of IT Operations Management and Cloud Computing reports, Private Cloud Computing and Virtual Machine Resilience are the technologies that are expected to gain more importance. Server Virtualization, one of the technologies that is widely used in Cloud Computing, needs resilience when shared underlying resources are redistributed among virtual machines on-demand. Standing at the peak of inflated expectations has brought some problems such as virtual machine sprawl and managing underlying shared resources efficiently. Distributed Resource Scheduling (DRS) on virtual infrastructures mitigates the administration duties and performance monitoring workload of systems management. In order not to suffer from CPU bottleneck, DRS aims to balance the CPU load among the physical hosts meanwhile caring the resource allocation policies by powering on and migrating the running virtual machines to the correct hosts. Intervention on underlying shared resources will help to decrease the operational and capital expenditures in IT infrastructure investments. Virtualization resilience is supplied by presenting physical resources as a pool to the virtual machines. A few problems must be handled while managing such resilience. It is required to define how to balance the workload by migrating right virtual machines to convenient physical hosts when physical hosts in the resource pool are insufficient to comply the demands of virtual machines. Physical hosts in the cluster must be configured equally and must reach the same shared disk area in order to migrate the virtual machines without any disruption sensed by end users. Live Migration of virtual machines between physical hosts is just changing the owner host of virtual machine just after the active memory is copied from source to the destination host in order to synchronize the states in both source and destination hosts. Artificial intelligence techniques are widely used for resource management in real-time dynamic environments. To comply the demand of the virtual machines, best resource allocation in the physical domain is a kind of problem where genetic algorithms are formerly considered to be successful. To cope with this problem, another optimization method, namely Big Bang - Big Crunch optimization method is used. Big Bang - Big Crunch (BB-BC) is an optimization method which is inspired by the natural event in evolution of the universe and is introduced by Erol and Eksin in 2006. BB-BC preserves the randomness of the solution population and it keeps track to the best solution without sticking into any local optimum. A cluster with a definite number of physical servers will host some definite number of virtual machines by assigning CPU and memory resources to them. It is seen that CPU demand of virtual machines running on one physical host may not be equal to the other hosts in the cluster according to the initial distribution. This causes some of the hosts to suffer from lack of CPU while resources in other hosts are wasted at that moment. VMware, one of the pioneers in virtualization technology, prefers the Greedy-Hill Climbing algorithm as state of art for resource scheduling in the clusters. Although VMware claims that it is not necessary to find best distribution of virtual machines, their preference may be replaced by one of the Artificial Intelligence methods which will not disturb the layout in the cluster frequently. Since Greedy-Hill does not have a claim to find the best allocation, its solutions fitness values can not be a comparison element. The candidate method can have a challenge to Greedy-Hill by execution durations. The modified BB-BC and classical BB-BC algorithms take less than 3 minutes to complete until the end of 200 generations for one CPU worksheet which is convenient to apply in the time interval of imbalance checks. Main focus of the study is to improve classical BB-BC performance by differentiating speed of the convergence including also migration costs. Environment is assumed as clusters of 4 physical hosts with 20 virtual machines and 8 physical hosts with 40 virtual machines. Initial distribution of virtual machines on physical hosts, virtual machines properties such as number of cores, assigned memory amounts and processor needs in specific time intervals are supplied as data input to solve the problem. Cells of the individuals in the population represent the virtual machines and their contents are the indices of the physical hosts. Individuals in the population carry the possible distributions of virtual machines. Tests are executed according to two different scenarios. Algorithms are expected to solve the problem according to the same inital distribution for all CPU workloads in 24 different time intervals in the first scenario. It is aimed to get results over the same problem set while calculating the averages of the values. In the second scenario CPU workloads are supplied to algorithms one after the other and algorithms try to find the best distribution according to the distribution found in the previous time interval. Thus differences created by the successive solutions of the algorithms are compared. The behaviours of algorithms are shown in graphs by plotting averages for all time intervals and for a specific time interval. The Fitness function is calculated as the weighted sum of normalized standard deviations of physical hosts cpu load, virtual machine cores and memories including also the amount of migrated virtual machine memories for a specific resource allocation while fitting inside the limitations on physical memory of each node. After the best distribution of Virtual Machines is found it is applied to the cluster by migrating the virtual machines between hosts. Since it is required to copy the migrated virtual machine s memory between hosts without going beyond the limits, migrations are reflected to the fitness function as cost. BB-BC, as a better optimization method, has been examined before by comparing to traditional genetic algorithms in many papers. The algorithms mentioned in this study are coded using MATLAB 7 (R14) environment and they are compared by their best fitness values with the same input data. Same fitness function is used for all methods and weights of normalized standard deviations are selected in advance to reflect the intense of preference according to resource utilizations importance. Algorithms are differentiated by their speed of convergence rates. ANOVA and Tukey s HSD test as post-hoc test are used to analyse the significance of the values statistically. It is derived that periodically resetting the convergence rate in Big Bang phase revealed better fitness values compared to constantly decreasing the convergence rate with the confidence rate of 90% for all time intervals while number of time intervals that shows significantly difference is only 9 among 24 with 95% confidence coefficient.
Description: Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 2014
Thesis (M.Sc.) -- İstanbul Technical University, Institute of Science and Technology, 2014
URI: http://hdl.handle.net/11527/430
Appears in Collections:Bilgisayar Mühendisliği Lisansüstü Programı - Yüksek Lisans

Files in This Item:
File Description SizeFormat 
14367.pdf1.59 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.