Abstract
In the last years there has been considerable interest in using distributed systems, especially Cloud Systems, in any domains. Resource management contributes to ensure quality of services for any type of application, especially when a system involves elements of heterogeneity characterized by a variety of resources that may or may not be coupled with specific platforms or environments. A problem very close to the industry is the capability to allocate resources in an efficient way and estimate costs, especially when switching from one provider to another. In this chapter we present an extended work oriented on agreement–based resource allocation and a scheduling algorithm, aimed to bring an adaptive fault tolerant distributed system. For the agreement protocol we describe and analyze a 3-Tier structure of resources (hosts and virtual machines). Then an adaptive mechanism for agreement establishment is described. The allocation method considers workload distribution, resources heterogeneity, transparency, adaptability and also the ease to extend by combining with other scheduling algorithms.
1 Introduction
Cloud supports many type of applications like emails, video–streaming, online working environments, file sharing (especially photos and videos), government services or socializing online. Even more, its users vary from children taking pictures with their parents’ phone and posting them instantly on social apps (Social Cloud) to engineers using software to aid in their designs. This means having to comply with very broad needs and working with big data. That is why data processing in Cloud systems has gained such an importance. So, everything can be done and kept in the Cloud. Resource allocation techniques used to support tasks scheduling become critical for Service Level Agreement (SLA) assurance. An adaptive algorithm inspired from SLA would bring several benefits to resource allocation and management, more so when the underlying architecture is highly heterogeneous.
5 Conclusion
We proposed an agreement based algorithm to enhance the task scheduling process and make it more flexible, transparent and extendible. The algorithm is adaptive, fault tolerant, with workload distribution and large extension capabilities. We tested the proposed algorithm using CloudSim with different numbers of nodes on each Tier. Evidence showed that it is better to have more nodes on the last Tier than on the second, with the 6:1 ratio giving the best results. For future work we propose: defining cost awareness policies for the agreement and extending the (re)negotiation protocol based on that; combining Tier1 nodes with a evolutionary algorithm in order to specialize Tier1 nodes on different types of tasks, specialization that would be seen both in the nodes they establish agreement with and in the algorithm they use to schedule task afterward. Also, agreements are used at higher levels; SLAs have been around for a while now and they are based on negotiation, whereas business agreements have been around for even more time.