IaaS Cloud Service Selection using Case-Based Reasoning
MetadataShow full item record
Cloud computing provides on-demand resources and removes the boundaries of resources' physical locations. It allows vendors to save upfront infrastructure costs and focus on features that discriminate their businesses. Growing number of provided services makes manual selection of the most suitable service time consuming and very hard which requires expertise. The large number of features and properties that the services are characterized by makes automatic service selection challenging. In this thesis we present QuARAM Service Recommender, a self-adaptive Infrastructure-as-a-Service (IaaS) service selection system that recommends a list of suitable services for cloud application deployment based on an application's requirements and the customer's preferences. The process starts with automatic extraction of an application's features, requirements and preferences and ends with a list of potential services for the application deployment. TOSCA provides a standard way of specifying the cloud application. Defined Normative Types in TOSCA do not cover defining all the requirements, features, and customer's preferences. In this thesis we propose an extension to the TOSCA Normative Types, so our system can extract all the information required for service selection automatically from the specification of the application. We use case-based reasoning to provide a recommendation of suitable services for application deployment. This method can be beneficial for cloud customers in service selection even when lacking complete knowledge about their application or features offered by cloud services. It can efficiently handle heterogeneous attributes that characterize cloud services and the requirements of cloud applications and is able to integrate the customer's preferences through assigning weights to these attributes. The feedback from both customers and the monitoring system is used to automatically adapt the system behavior and enhance the quality of recommendations. We use MCDM method for cloud service selection when there are not sufficient cases in the system case base and we use clustering to handle the problem of a large search space. We further describe a service consolidation method to improve the resource utilization and reduce the total service price. Our step-by-step case study demonstrates that an automatic IaaS service selection using a combination of all the proposed approaches is practical and achievable.