I. Introduction
Nowadays cloud computing has become popular because of its high availability, energy saving, and on-demand services. The main idea of the cloud is consolidating a large amount of resources and virtualizing them. Such facilities that house computer systems are often referred to as datacenters. Cloud-based datacenters, consisting of processors, memory units, disk drives, networking devices, and various types of sensors can support many applications and users. Any system running applications with such heterogeneity and intensive workload may sometimes be vulnerable to different types of failure, in which ‘hardware fault’ is the single largest cause of system breakdowns [1]. Therefore, this research emphasizes the handling of hardware faults.