Review of the related works/Literature Review
This section of the thesis paper will be reviewing the previously published journals and the works related to the field of cloud computing. The base of the final project will be built on basis of the data and information available from the previously published literature in the field. A literature review mainly surveys books and scholarly articles that will be relevant to a particular issue or the area of research. A literature review is mainly conducted to ensure that the areas of the research are properly identified and the identified problems are acknowledged with.
The literature review identifies the gaps and demand for further investigation. A comprehensive literature review is essential for formulating a research project by identifying the current gaps. The literature review has been undertaken in order to identify the issues associated with IaaS cloud and the process and techniques of resource management in IaaS cloud.
Technology and internet have provided an easier way to store and access the resources. Cloud computing provides virtualized cloud resources to the clients to store and access the data. Infrastructure as a service enables virtualized resources of computing over internet and is mainly adopted by the organizations that less infrastructure space. Cloud computing is an easier way of storing and accessing the resources because cloud enables remote storage and access of the data. The services allow the users to store and access the files online and can be controlled over internet. However, as the numbers of users in the cloud increases, it becomes considerably difficult to maintain and divide the resources among the users (Maurer, Brandic and Sakellariou 2013).
The problem is mainly observed in IaaS cloud as it is one of the most widely adopted by paradigm of cloud computing. The use of cloud computing has considerably increased as it offers a number of advantages such as it is a cost saving approach, offers reliability and manageability. However, there are a number of issues associated with cloud as well which are security, downtime and limited control. Therefore it is essential to identify the efficient ways of resource management in cloud. The literature review will be unveiling the problems and the issues associated with management of resources in IaaS cloud and will further identify the different processes of management of physical as well as the logical resources in cloud.
2. Review of the related works/Literature Review
The process of storing and accessing of the data over internet is termed as cloud computing. It makes use of various resources and services including the software development platforms, servers and storage. The advancements in cloud computing is closely related to virtualization. Cloud computing furthermore offers flexibility and scalability in its implementation process. Among the three categories of cloud computing, one is IaaS cloud. The literature review has been undertaken in order to analyze the different aspects of IaaS cloud and the issues associated with the use of IaaS cloud (Azodolmolky, Wieder and Yahyapour 2013).
The Concept of cloud computing
Resource allocation is an important aspects of managing resources in cloud and therefore the data and the information about the same is needed to be collected. The information gathered from a survey and the analysis of the similar works in cloud computing field are discussed in the following sections.
2.1 The Concept of cloud computing
In a very basic term, cloud computing involves storage and access of data over internet instead in the hard drive of the computer. Cloud does not make use of dedicated networks of servers and mainly use shared resources to provide services to its clients. It can be best described as an Information Technology paradigm that is best suited for the enabling the ubiquitous authority to a series of shared and distributed pool of different system (Arianyan, Taheri and Sharifian, 2015).
Cloud computing is a type of internet based services that include servers, storage and the applications. Cloud is an on demand service that can be accessed on a pay as you go model or on a subscription basis. There are three types of cloud computing providing on demand services according to the requirements of the clients. This includes Infrastructure as a service or IaaS, Software as a Service ir SaaS and Platform as a Service or PaaS.
As identified earlier, the higher use of computing in the recent years has been observed mainly because of the advantages it provides. The advantages of cloud computing is compelling as it eliminates the need of maintaining a complex computer system. Furthermore, the use of cloud computing only allows buying the services that a customer needs thus eliminating the need of huge expenses. The network of cloud computing mainly incorporates a large group of servers that helps in offering a low cost technology services to the clients. The servers incorporate specialized connection involving the haring of the IT resources and the infrastructure.
2.1.1. IaaS Cloud
Infrastructure as a service is a model of computing with the help of cloud that offers virtual data centers to the clients. IaaS is a service model delivering on demand infrastructure of computer on an outsourced basis by providing an easy access to the hardware, storage, servers and a data center. In IaaS cloud, the organizations make use of their own platforms and the applications along with the infrastructure provided by the service provider in order to effectively store and manage the computing resources. This is the reason behind the IaaS cloud being most secure cloud models.
IaaS Cloud
Key Features:
- The use of IaaS saves the users from purchasing the services of cloud as it provides an on demand service.
- The Infrastructure is scalable and the services offered are flexible. This is one of the key characteristics of IaaS cloud (Jennings and Stadler 2015).
- It enables the enterprises to save a considerable amount of infrastructure cost as thery do not need to maintain their own hardware.
- It offers easy disaster recovery, which is another significant advantage of making use of IaaS cloud (Manvi and Shyam 2014).
- IaaS cloud enables virtualization of the administrative task thereby freeing up a lot of time of the employees.
Virtualization is a key aspects of IaaS cloud and therefore certain issues arise with the resource allocation and management in IaaS cloud.
The above picture represents the different characteristics of IaaS cloud. Utilization of the pooled server and the networking resources can be considered as an example of IaaS.
2.2.2. PaaS Cloud and SaaS cloud
The cloud computing model of PaaS is a collection of hardware and the software tools used for deploying cloud. It is an application platform that allows the users to develop, run and manage cloud applications without any problems or complexity. It is one of the cost effective cloud service. It is a model that help in managing the hardware and software for application over internet. PaaS provides a platform with the tools for testing, developing and hosting the applications on a suitable environment. PaaS enables the organization to focus on the development of the cloud services that will facilitate the collaborative working environment.
Software as a Service will provide the users with the software application that works on a subscription basis (Manvi and Shyam 2014). In this cloud service, the users do not need to manage, install or update the software. However, the SaaS cloud service ha a number of security issues associated which are needed to be addressed.
2.2. Different Aspects of IaaS Cloud
IaaS cloud is becoming a customary process of deploying the modern internet applications. IaaS platforms are made available for the organizations or the users who are keen on developing both public as well as private cloud environment. However, the cloud administrators have few opportunities of influencing the process by which the resources are managed. Envision of the administrator could be benefited for the customization in the different resource management strategies in cloud. The use of Infrastructure as a Service has drawn much attention to the IT organizations over the years including Amazon, Microsoft, IBM to name a few.
The infrastructure as a service is considered to be a secure cloud computing service and therefore it is adopted by a number of business organizations. One of the problems associated with the current cloud management platform is that it offers a black box like centralized control thus giving very less opportunities for having a view to the process of resource allocation and management of the resources. Cloud computing is considered to be an emerging issue and the resource management is an important aspect of the same. This is because the cloud computing paradigm enables a user to migrate the data as well as the computational features in remote locations. Cloud provides a remote access to the data and the files that are stored over internet.
PaaS Cloud and SaaS cloud
During the past few years, the use of the computational services had a tremendous evolution. The use of the on demand services has helped in the emerging computing resources that incorporates the cluster computing, cloud computing and grid computing. One of the key features of cloud computing is virtualization of cloud resources as well as management of the resources in cloud (Moreno-Vozmediano, Montero and Llorente 2013). The technique of virtualization is often used for provisioning of the in demand resources. Resource management provides an opportunity of performance isolation along with the efficient use of the associated hardware systems.
In IaaS cloud environment, all the resources are shared and virtualized among different users (Manvi and Shyam 2014). This gives rise to the need for efficient managing of the resources in IaaS cloud. The cloud computing can be described as a computational model of providing in demand services to the clients and with the increase in the number of clients, it becomes essential to efficiently manage the resources that are available. Since the resources are limited there is a need for efficient management of IaaS cloud.
2.3. Issues associated with Iaas cloud
It is quite clear that there is a requirement for the efficient management of resources in cloud. There are certain issues associated with the IaaS cloud system. The major issues are virtualization and multi tenancy, resource management, network infrastructure and data management (Manvi and Shyam 2014). The presence of these issues gives rise to the need for management of resources in IaaS cloud.
Virtualization and multi tenancy Issues: Network and server virtualization is a technological characteristic of cloud computing that provides a black box view thus hiding the major complexities from the clients. Environment of multi tenancy enables a number of customers to make use of same applications while making use of same operating system (Manvi and Shyam 2014). Virtualization is an essential need in IaaS cloud as it increases the security of cloud computing by ensuring protection in the integrity of guest and virtual machines. However, there are certain issues associated with the virtualization in IaaS clouds and among them one of the issues is making an efficient use of the network resources.
Resource Management Issues: In IaaS cloud, it is mandatory to allocate resources at a given time instant for effectively handling the workload fluctuations. The computing along with the network resources is quite limited and therefore it is needed to be efficiently managed and shared with the users virtually. In order to make use of an effective resource management, certain issues are observed such as resource mapping, resource allocation, resource adaptation and resource provisioning, (Manvi and Shyam 2014). However, the main challenge is in determination of the resource demand for effective allocation of the resources in considerable efficient manner.
Different Aspects of IaaS Cloud
Network and Infrastructure Management Issues: Managing a large number of network components that includes hubs, bridges, switches often lead to the unsustainable cost of administration and an automated method of dealing with the management of system tasks. The automated methods often need to address the increase in the monitoring data sizes and certain others. Apart from this, there are certain issues and problems with the resource management in IaaS.
2.3.1. Resource Management Problems in IaaS
There are a number of problems associated the resources in cloud. The different types of resources in IaaS cloud include physical resources and logical resources.
The physical resources of computing include memory, processors and the different peripheral devices. The logical resources include the system abstraction that has a temporary control on the physical resources (Manvi and Shyam 2014). The significant issues that are associated with resource management include provisioning of the resources, resource allocation, adaptation, mapping and modeling. As the industry of computation shifts towards offering infrastructure as a service for the consumers, the different resource management issues are needed to be addressed.
Management of resources in cloud environment is an issue mainly because of the scale of modern data centers. The advances in the field of commodity computing and virtualization technique enable a cost effective realization of a large scale virtual data center for IaaS cloud. Since resource management is a pressing issues associated with the use of IaaS cloud, it becomes essential to understand the mitigation approaches that can work in favor of efficient resource management in IaaS cloud (Moreno-Vozmediano, Montero and Llorente 2013).
IaaS mainly refers to the sharing of the hardware resources that are used for execution of the services for network virtualization. In resource management, the tools that are mainly used are hypervisor and virtual machine monitor (Papagianni et al. 2013). Therefore, it can be said that the major resource management issues associated with IaaS is calculating the demand and the resource in a set time frame. However, these issues can be easily mitigated by ensuring that the users are given an access to the resources when in need.
2.4. Need of Resource Management in Cloud
Cloud computing has emerged to be one of the popular computing paradigm over the years and therefore there is a significant need for resource managing in cloud. The resources of the cloud include physical and logical resources. Efficient management of the resources in cloud becomes a necessity as the absence of proper resource management might result in providing interrupted services to the clients (Malawski et al. 2015). With the advances in the commodity computing and virtualization technology, cloud computing enables the cost efficient use of the large scale of data centers. Cloud providers manage a different set of data center consisting of different hardware and system software that provides a context of IaaS or PaaS abstractions.
Issues associated with Iaas cloud
Resource allocation is an aspect of efficient management of the resources in cloud. Resource allocation can be described as a process of assigning the available resources in the most economic way possible (Pawar and Wagh 2013). The process of resource allocation refers to the efficient as well as an effective way of managing the resources in cloud. The resource provisioning along with resource allocation solves many problems thus enabling the different service providers in managing the different resources associated with the cloud service. Resource allocation helps in utilization of the inadequate resources within the cloud environment. Resource allocation and the management of the resources are important from the cloud providers’ perspective (Jhawar, Piuri and Santambrogio 2013).
The cloud users expect that a number of tasks will be completed on time with a minimal effort. With a limited amount of resources it often becomes a significant problem to provide an uninterrupted computing service to the individuals (Singh and Chana 2016). There arises the need for management of the resources in cloud environment. An efficient resource allocation system is necessary for IaaS cloud in order to provide the clients with an on demand service (Van den Bossche, Vanmechelen and Broeckhove 2013). Due to the limited resources, resource heterogeneity and environmental necessities, the efficient resource allocation system is necessary for meeting the demand of the resources. The resources of cloud mainly consist of the virtual resources.
The physical resources are shared with the multiple computers that need virtualization and provisioning (Moreno-Vozmediano, Montero and Llorente 2013). The virtualized resources are mainly described as a set of parameters that details the processing of the memory and disk needs.
There are certain major benefits of resource allocation in cloud as with the help of that, a user neither has to install the software nor need to access or install any application for the same (Hameed et al. 2016). Furthermore, there is no limitation of the place or medium in resource allocation for the cloud environment.
However, there are certain limitations linked with the allocation of resources in cloud. Since the users rent the resources from the remote servers, the clients may not have a control over the resources in the cloud. Apart from that, there is certain migration problems associated with the resource allocation in cloud (Bruneo 2014). However, these are mostly the limitations associated with the use of cloud and not with the resource allocation. The cloud resource allocation is a strategy that is often used for maximizing the resource optimization (Jhawar, Piuri and Santambrogio 2013). The significant aim of the resource allocation and resource management is to maximize the profit and to provide and efficient and uninterrupted services to the clients. The different process of management of the resources in the cloud is identified in the following section.
2.5. Analysis of the different process in Resource Management in cloud
Management of resources is a phenomenon that is mainly used by the cloud vendors for appropriate resource allocation. There are a number of ways that can considerably assist in resource management (Jokhio et al. 2013). It is often seen that the consumers are assisting in resource management along with the process of VM to PM placement. The load balancing is another technique or process related to the management of resources in cloud (Aceto et al. 2013). The different process of resource managing in cloud is needed to be evaluated in order to identify the process of efficient resource management in cloud (Jhawar, Piuri and Santambrogio 2013).
The resource allocation is often termed as a process of assigning and managing the cloud assets or the resources so that the strategic goals of an organization are met. Resource allocation in cloud is initiated mainly to achieve customers’ satisfaction in the minimum time possible. Thus with the resource allocation, the processing time of the services in cloud are considerably reduced. One of the most widely used processes of resource management is allocation of the resources (Beloglazov 2013). Dynamic resource allocation is one such method that ensures management of the resources of cloud in an efficient manner.
In the dynamic scheduling process of cloud computing, the basic structure of management of the resources that is followed is to request that is followed is to request the allocation of the resources at the time of implementing the different programs (Parikh 2013). Resource allocation is a technique for ensuring the process of resource allocation to the virtual machines when multiple resources will need to make use of the resources simultaneously. In cloud computing, there are two technical restrictions (Dinh et al. 2013).
Virtual machine in distributed system has a number of usage conditions that includes the cost of utilizing and the processing power as well. Resource allocation in cloud mainly refers to the process of distributed scheduling that minimizes the time, cost and load balancing by making an efficient resource usage.
Dynamic Resource Allocation helps in efficient parallel data processing. Nephele is a data processing framework that is widely used in dynamic resource allocation. One of the significant advantages of dynamic resource allocation in IaaS cloud is that it enables parallel data processing and reducing the resource overload. Nephele’s framework helps in adapting to the resource overload and underutilization even during the execution of a task which is a significnat benefit of the same.
Apart from dynamic allocation another resource allocation strategy can be used. A resource allocation strategy mainly possesses a number of criteria. These criteria are as follows-
- Resource Contention: The resource contention mainly arises when the two different applications trying to access the same resources simultaneously.
- The Scarcity of the resources: The scarcity of the resources mainly arises when a limited resources and the demand for the resources is high (Madni, Latiff and Coulibaly 2016). This often results in the need for dynamic resource allocation.
- Resource Fragmentation is another criteria associated with resource allocation. The need for resource fragmentation mainly arises when the resources are isolated
(Garg, Versteeg and Buyya 2013). This will enable freeing up of the resources making the availability of enough resources while allocation. This is one of the most widely adopted process or technique of resource allocation in IaaS cloud. - Over Provisioning mainly arise when the application gets a surplus resource than the resource it has previously demanded (Weingärtner, Bräscher and Westphall 2015). Efficient management of this problem is essential in order to enable the option of an appropriate resource management in cloud.
- Under Provisioning: The problems of under provisioning of the resources occurs mainly when the application is assigned with the resources fewer in number than its expected demand. Under provisioning of the resources in cloud often gives rise to a need to appropriate resource management in cloud.
Thus development of a resource management strategy can help in easier implementation of the resources associated with IaaS cloud and therefore it can be considered as a resource management technique in IaaS cloud.
2.6. Recommendations for effective Resource Management in IaaS cloud
Some of the resource management techniques and the processes are identified in the previous section. Apart from that, certain recommendations are to be considered for efficient management of resources in IaaS cloud. It is foremost essential to identify the problem domain for easier allocation and the management the resources in IaaS cloud. One of the problems that is associated with the efficient management of the resources in the IaaS cloud is that there is a problem associated with the estimation of the resource requirement in IaaS cloud (Jhawar, Piuri and Santambrogio 2013).
The dynamic allocation of the resources of IaaS cloud is used as a process a technique for resource management in IaaS cloud. The use of virtual machines is another significant process that can be used for efficient resource management in IaaS cloud. Both dynamic resource allocation and use of virtual machine can help in easier management of the IaaS cloud. With efficient resource allocation and management of the resources, the data management is an essential aspect of eliminating the issues associated with the virtualization and multi tenancy problem associated with the cloud.
Data management becomes an essential need of cloud storage that improves the flexibility of cloud computing. Along with this, a little effort from the client will help in easier management of the resources in the cloud thus eliminating the cause of resource over provisioning and resource under provisioning (Sharkh et al. 2013). The need for management of the resources arises mainly with the increase in the number of cloud users and presence of limited resource in IaaS cloud.
3. Conclusion
A literature review has been undertaken in order to identify the needs of resource allocation in cloud. Efficient management of the resources in IaaS cloud often becomes a problem due to a number of issues. Therefore are a number of issues associated with the IaaS cloud that is identified by reviewing the related works. The need for management of the resources mainly arises since there are certain issues associated with the use of cloud. These issues arise as the number of users simultaneously making use of a particular resource increase.
With the limited availability of the cloud resources, it becomes important to identify the different process by which the resources can be managed efficiently. The literature review discusses the different process and techniques of resource allocation and resource management in IaaS cloud that can be employed by the organizations in order to eliminate the issues that mainly arises due to the inappropriate resource allocation. Certain recommendations are made that can be used for efficient resource management in IaaS cloud.
References
Aceto, G., Botta, A., De Donato, W. and Pescapè, A., 2013. Cloud monitoring: A survey. Computer Networks, 57(9), pp.2093-2115.
Arianyan, E., Taheri, H. and Sharifian, S., 2015. Novel energy and SLA efficient resource management heuristics for consolidation of virtual machines in cloud data centers. Computers & Electrical Engineering, 47, pp.222-240.
Azodolmolky, S., Wieder, P. and Yahyapour, R., 2013. Cloud computing networking: Challenges and opportunities for innovations. IEEE Communications Magazine, 51(7), pp.54-62.
Beloglazov, A., 2013. Energy-efficient management of virtual machines in data centers for cloud computing (Doctoral dissertation).
Bruneo, D., 2014. A stochastic model to investigate data center performance and QoS in IaaS cloud computing systems. IEEE Transactions on Parallel and Distributed Systems, 25(3), pp.560-569.
Dinh, H.T., Lee, C., Niyato, D. and Wang, P., 2013. A survey of mobile cloud computing: architecture, applications, and approaches. Wireless communications and mobile computing, 13(18), pp.1587-1611.
Garg, S.K., Versteeg, S. and Buyya, R., 2013. A framework for ranking of cloud computing services. Future Generation Computer Systems, 29(4), pp.1012-1023.
Hameed, A., Khoshkbarforoushha, A., Ranjan, R., Jayaraman, P.P., Kolodziej, J., Balaji, P., Zeadally, S., Malluhi, Q.M., Tziritas, N., Vishnu, A. and Khan, S.U., 2016. A survey and taxonomy on energy efficient resource allocation techniques for cloud computing systems. Computing, 98(7), pp.751-774.
Jennings, B. and Stadler, R., 2015. Resource management in clouds: Survey and research challenges. Journal of Network and Systems Management, 23(3), pp.567-619.
Jhawar, R., Piuri, V. and Santambrogio, M., 2013. Fault tolerance management in cloud computing: A system-level perspective. IEEE Systems Journal, 7(2), pp.288-297.
Jokhio, F., Ashraf, A., Lafond, S., Porres, I. and Lilius, J., 2013, February. Prediction-based dynamic resource allocation for video transcoding in cloud computing. In Parallel, Distributed and Network-Based Processing (PDP), 2013 21st Euromicro International Conference on (pp. 254-261). IEEE.
Madni, S.H.H., Latiff, M.S.A. and Coulibaly, Y., 2016. Resource scheduling for infrastructure as a service (IaaS) in cloud computing: Challenges and opportunities. Journal of Network and Computer Applications, 68, pp.173-200.
Malawski, M., Juve, G., Deelman, E. and Nabrzyski, J., 2015. Algorithms for cost-and deadline-constrained provisioning for scientific workflow ensembles in IaaS clouds. Future Generation Computer Systems, 48, pp.1-18.
Manvi, S.S. and Shyam, G.K., 2014. Resource management for Infrastructure as a Service (IaaS) in cloud computing: A survey. Journal of Network and Computer Applications, 41, pp.424-440.
Maurer, M., Brandic, I. and Sakellariou, R., 2013. Adaptive resource configuration for Cloud infrastructure management. Future Generation Computer Systems, 29(2), pp.472-487.
Moreno-Vozmediano, R., Montero, R.S. and Llorente, I.M., 2013. Key challenges in cloud computing: Enabling the future internet of services. IEEE Internet Computing, 17(4), pp.18-25.
Papagianni, C., Leivadeas, A., Papavassiliou, S., Maglaris, V., Cervello-Pastor, C. and Monje, A., 2013. On the optimal allocation of virtual resources in cloud computing networks. IEEE Transactions on Computers, 62(6), pp.1060-1071.
Parikh, S.M., 2013, November. A survey on cloud computing resource allocation techniques. In Engineering (NUiCONE), 2013 Nirma University International Conference on (pp. 1-5). IEEE.
Pawar, C.S. and Wagh, R.B., 2013, March. Priority based dynamic resource allocation in cloud computing with modified waiting queue. In Intelligent Systems and Signal Processing (ISSP), 2013 International Conference on (pp. 311-316). IEEE.
Sharkh, M.A., Jammal, M., Shami, A. and Ouda, A., 2013. Resource allocation in a network-based cloud computing environment: design challenges. IEEE Communications Magazine, 51(11), pp.46-52.
Singh, S. and Chana, I., 2016. A survey on resource scheduling in cloud computing: Issues and challenges. Journal of grid computing, 14(2), pp.217-264.
Van den Bossche, R., Vanmechelen, K. and Broeckhove, J., 2013. Online cost-efficient scheduling of deadline-constrained workloads on hybrid clouds. Future Generation Computer Systems, 29(4), pp.973-985.
Weingärtner, R., Bräscher, G.B. and Westphall, C.B., 2015. Cloud resource management: A survey on forecasting and profiling models. Journal of Network and Computer Applications, 47, pp.99-106.
Yu, R., Zhang, Y., Gjessing, S., Xia, W. and Yang, K., 2013. Toward cloud-based vehicular networks with efficient resource management. IEEE Network, 27(5), pp.48-55.