Availability Modeling of Computing Systems with Virtual Architectures
Cloud computing services are built on the premise of high availability. These services are sold to customers who are expecting a reduced cost particularly in the area of failures and maintenance. At the Infrastructure as a Service (IaaS) layer resources is sold to customers as virtual machines (VMs) with CPU and memory specifications. Both these resources are not necessarily guaranteed. This is because virtual machines can share the same hardware resources. If resources aren't allocated properly, one virtual machine for example, may use up too much CPU power reducing the processing power available to other virtual machines. This can result in response time failures. In this research a framework is developed that integrates hardware, software and response time failures. Response time failures occur when a request is made to a server and does not complete on time. The framework allows the cloud purchaser to test the system under stressed conditions, allocating more or less virtual machines to determine the availability of the system. The framework also allows the cloud provider to separately evaluate the availability of the hardware and other software systems.