Energy efficiency of cloud data centers received significant attention in recent years as data centers often consume huge energy in operation. Most existing energy efficiency methods focus on balancing performance and energy consumption of cloud infrastructure, but these two criteria is inadequate because system reliability, which is the key indicator of the SLA, is not considered. In fact, both virtual machine (VM) failures and server failures inevitably interrupt execution of a cloud service, and eventually result in spending more time and consuming more energy on completing the cloud service. This paper proposes a resource scheduling algorithm that can optimize reliability, system performance and energy consumption. It based on a correlated modeling approach applying Semi-Markov models, the Laplace-Stieltjes transform and a Bayesian approach to analyze reliability-performance and reliability-energy correlations.