# A High Availability Management Model based on VM Significance Ranking and
Resource Estimation for Cloud Applications

Deepika Saxena and Ashutosh Kumar Singh, D. Saxena and A.K. Singh are with the
Department of Computer Applications, National Institute of Technology,
Kurukshetra, India. E-mail<EMAIL_ADDRESS>and
<EMAIL_ADDRESS>
###### Abstract

Massive upsurge in cloud resource usage stave off service availability
resulting into outages, resource contention, and excessive power-consumption.
The existing approaches have addressed this challenge by providing multi-
cloud, VM migration, and running multiple replicas of each VM which accounts
for high expenses of cloud data centre (CDC). In this context, a novel VM
Significance Ranking and Resource Estimation based High Availability
Management (SRE-HM) Model is proposed to enhance service availability for
users with optimized cost for CDC. The model estimates resource contention
based server failure and organises needed resources beforehand for maintaining
desired level of service availability. A significance ranking parameter is
introduced and computed for each VM, executing critical or non-critical tasks
followed by the selection of an admissible High Availability (HA) strategy
respective to its significance and user specified constraints. It enables cost
optimization for CDC by rendering failure tolerance strategies for significant
VMs only instead of all the VMs. The proposed model is evaluated and compared
against state-of-the-arts by executing experiments using Google Cluster
dataset. SRE-HM improved the services availability up to 19.56% and scales
down the number of active servers and power-consumption up to 26.67% and
19.1%, respectively over HA without SRE-HM.

###### Index Terms:

Cloud computing, Cost optimization, Failure predictor, High Availability,
Resource management, VM Ranking.

##  1 Introduction

Nowadays, there is a strong trend towards "digitization in all data and all
data in digitization" across the globe, wherein cloud data centres (CDCs) have
emerged as a backbone of the entire information and communication technology.
It facilitates high availability of information technology (IT) resources and
maximum computing benefits at minimum capital investment to the end users. A
Cloud Service Providers (CSPs) is obliged to Service Level Agreement (SLA)
adherence by taking responsibility for their infrastructure and ensuring
availability and safety at all ends [1], [2], services and performance outage
occurs, stemming from a surge in resource utilization [3], [4], [5]. However,
the exponential growth of internet traffic and cloud resource demands impede
the delivery of cloud services with consistent high availability the whole
time. For instance, a recent survey of the COVID-19 pandemic witnessed
numerous spectacular incidents of cloud outages for several hours which have
overwhelmed the titan Cloud Service Providers (CSPs), including Zoom,
Microsoft Azure, Google Cloud Platform, Amazon Web Services, Salesforce, IBM
Cloud, etc. [6]. Such incidents prompt a critical question about cloud
technology and increase the obligation of high availablity (HA) on CSPs. Major
causes of cloud outages are failures of applications, VMs, and servers or
physical machines (PMs) which renders computing and storage instances
inaccessible [7], [8]. Such instances of cloud outages point to a critical
question on cloud technology concerning reliability and availability of
services for the end users. The existing approaches furnish highly available
services by applying proactive as well as reactive approaches [9], [10], [11].
Proactive techniques of failure handling rely on the prior knowledge of the
failure of applications and VMs and migrating such VMs. While the reactive
techniques include checkpointing, replication, retry, application
resubmission, etc. which are triggered at the occurrence of actual failure
detection [12]. Among the proactive approaches, the most reliable approach for
high availability is to maintain multiple replicas of VM instances while
engaging active physical machines in excess [13] and hiring multiple clouds
[5]. The major concern is that previous reactive approaches engage delay in
service provisioning while the proactive approaches account for high
operational cost.

Since the availability of the cloud resources is measured in terms of mean
time between failures (MTBF) and mean time to repair (MTTR) associated with
service uptime and downtime, respectively [14], [15]; the key solution for
improving services availability is to maximize MTBF and minimize MTTR i.e.,
time of recovery/repair by employing fault tolerance strategies along with
effective resource management. The proactive resource failure detection and
mitigation of VM and server failure enhances service uptime leading to higher
MTBF. Diversely, the MTTR can be minimized by appointing multiple replicas for
VM instances. Therefore, both proactive, as well as reactive mechanisms must
be applied efficiently to upgrade cloud services availability. A cloud
application being composed of numerous small sub-units or tasks makes it
highly expensive to provide redundant or alternative instances for all VMs
[3], [16], [17]. Moreover, it is not desirable to deliver highly available
services for non-critical tasks which either have minimal or no effect on
application execution. In this context, the best approach is to identify the
significance of different tasks beforehand and employ a selected optimal HA
strategy for their execution accordingly. However, this approach is entangled
with two primary challenges: (i) How to locate the importance of various tasks
in a complex cloud application? (ii) How to decide on an admissible HA
strategy for different tasks subject to their contribution to an application
execution and user-specified constraints?

###  1.1  Our Contribution

Contrary to the existing works, this paper proposes a novel Significance
Ranking and Resource Estimation based High Availability Management (SRE-HM)
model that encapsulates both proactive and reactive approaches to deliver
highly available cloud services with optimized operational costs. It locates
critical and non-critical tasks based on their characteristics, number and
frequency of invocations. Accordingly, a significance rank computation method
is developed for estimation of the importance of different VMs depending on
the characteristics of tasks assigned for execution. Thereafter, an optimal HA
strategy selection method is established corresponding to significance rank of
different VMs and user specified constraints to optimize the operational cost
for CSPs. Further, the proposed model imparts a prior estimation of resource
contention and mitigation of performance degradation by migrating VMs and load
balancing in real-time. The key contributions of the paper are fourfold:

  * •

A Virtual High Availability Zone (VHAZ) comprising of several Virtual High
Availability Network (VHAN) is created where a new parameter ‘significance
rank’ of a VM is enumerated to locate importance of each VM in an application
execution.

  * •

A method for selection of an admissible HA strategy is developed to curtail
the excessive power expenses while achieving high performance and service
availability experience for the end users.

  * •

A real-time server failure predictor based on Long Short Term Memory (LSTM)
Neural Network is implemented to estimate resource-contention and mitigate its
worse effects by triggering VM shifting, proactively.

  * •

Empirical simulation and performance evaluation of proposed model reveal that
it substantially improves high availability for cloud users with optimized
cost for cloud data centre.

Organization: Section 2 discusses related work with research gaps and Section
3 entails description of SRE-HM model. Sections 4, 5, and 6 discuss PM failure
estimation and handling, Significance rank computation, and HA strategy
selection, respectively. Section 7 presents operational design and complexity
analysis followed by the performance evaluation and comparison in Section 8.
Section 9 remarks the conclusion and future scope of the proposed model.

##  2 Related work

The related work pertaining to HA in cloud environment is distinguished into
following sub-sections: (i) Proactive approaches and (ii) Reactive approaches.

###  2.1 Proactive approaches

Marahatta et al. [18] proposed a deep neural network based failure predictor
to differentiate the future tasks on VMs into failure prone and non-failure
prone tasks. Accordingly, resources are allocated exclusively for failure and
non-failure prone tasks by replicating three consecutive failure-prone tasks
into three copies to be executed on different servers to prohibit overlapping
and redundant execution. The performance of the work is investigated using
Internet and Euler datasets which improve fault tolerance and energy
efficiency within CDC. Pinto et al. [19] have developed a Support Vector
Machine (SVM) based failure predictor for distributed computing Hadoop
clusters which is trained with a non-anomalous dataset during different
operation patterns like boot-up, shutdown, idle, task allocation, resource
distribution, etc. to detect and classify between normal and abnormal
situation. An online prediction based multi-objective load-balancing (OP-MLB)
framework is proposed in [3] for proactive estimation of server overload and
its alleviation by employing VM migration for improving service availability
and energy-efficiency of CDCs. The forthcoming load on VMs is estimated by
employing an online neural-network based prediction system to determine the
future resource utilization of the servers proactively. It helped to detect
server overloading which is tackled by migrating VMs of highest resource
capacity from overloaded server to an appropriate server machine. The VM
placement and migration are executed using a multi-objective algorithm for
minimization of power consumption.

Sharma et al. presented a failure aware and energy-efficient (FAEE) VM
placement scheme in [20] which predicted VM failure using an exponential
smoothing based forecasting technique. Thereafter, two fault tolerance methods
including VM migration and checkpointing are triggered to handle service
failure and upgrade service availability. This work was evaluated using
Grid5000 Failure Traffic Analysis (FTA) dataset. It concluded that the energy
efficiency and reliability of cloud systems can be significantly improved by
considering the failure characteristics of physical resources. Dabbagh et al.
[21] presented an integrated energy-efficient VM placement and migration
framework for the cloud data centre. It applied a Wiener filter based
predictor for estimation of the number of VM requests and the future resource
requirement. These predicted values are used to allow only the required number
of physical machines in active state and helps in achieving a substantial
energy saving and resource utilization. Nguyen et al. [22] addressed service
availability problem by adopting multiple usage prediction through multiple
linear regression for estimation of the relationship between the input
variables and the output for energy efficient data centres. This work
estimated overload or host failure with multiple usage prediction (OHD-MUP)
and underloaded host detection with multiple usage prediction (UHD-MUP) and
balanced load by migrating selected VMs from overloaded servers to energy-
efficient server. Multiple Additive Regression Trees with Gradient Boosting
(MART-GB) algorithm is utilized for Cloud Disk Error Forecasting (CDEF) in
[23] which ranked all disks according to degree of error-proneness to allow
shifting of existing VMs in real-time and assignment of new VMs on healthy
disks to improve service availability. Adamu et al. [24] have improved system
availability by proposing a Linear Regression (LR) Model and Support Vector
Machine (SVM) with a Linear Gaussian kernel for predicting hardware failures
in a real-time cloud environment. Sharma et al. [20] have predicted VM failure
using a forecasting technique based on exponential smoothing. This work has
utilized two fault tolerance methods including VM migration and checkpointing
to handle VM failure and improve service availability. It achieved a
significant improvement in energy efficiency and reliability by considering
failure characteristics of physical resources. A Fault Tolerant Elastic
Resource Management (FT-ERM) framework has been proposed in [25] to improve
availability of services by inducing fault management in servers and VMs. This
framework included an online failure predictor for proactive estimation of
failure-prone VMs where the operational status of server is monitored with the
help of a power analyser, resource estimator, and thermal analyser. The
failure-prone VMs are assigned to fault-tolerance unit consisting of decision
matrix and safe box to handle any outage beforehand while assuring high
availability of services for the cloud users.

###  2.2 Reactive Approaches

Zhang et al. [5] proposed a data hosting scheme called as CHARM which
collaborated two desired key functions to furnish HA. Firstly, multiple
suitable clouds and an optimal replication scheme for data storage and enhance
availability are selected. Secondly, VM migration and re-allocation is
triggered as per the variations in data access patterns and pricing of cloud
applications. This work enabled fine-grained decisions making regarding which
storage mode to be used and which clouds to be used for data placement. An HA-
aware scheduling algorithm named CHASE is proposed in [26] that considers and
analyses functionality requirements, redundancies between applications, and
real-time interdependencies in real-time. Its prototype was designed to
schedule components in real cloud environment while communicating with
OpenStack.

Wang et al. [7] developed a fault-tolerant elastic scheduling algorithms
(FESTAL) to provide a fault tolerant VM scheduling accompanied with
virtualization technology and an appropriate VM migration scheme with battery
back-up features. It addressed the issues of reliability, elasticity and
schedulability of virtualized clouds. It achieved both fault tolerance and
high performance in terms of resource utilization by employing an elastic
resource management and the fault-tolerant scheduling algorithms. Extensive
experiments based on the synthetic workloads and the real world traces
validated the performance of FESTAL. Zhu et al. [27] have utilized battery
back-up scheduling schemes to establish an algorithm for fault-tolerant
execution of scientific workflows (FASTER) by incorporating task allocation
and message transmission features that employed a backward shifting approach
for use of physical resources. A real-time workflow fault-tolerant model is
developed which extends the traditional primary backup model by including the
cloud characteristics. Using this model, a task allocation and message
transmission approach is developed to ensure fault tolerance during
information processing and workflow execution. This algorithm enabled full
utilization of idle resources and incorporated task overlapping and VM
migration for improved resource utilization. Further, it applied the
vertical/horizontal scaling-up technique to provision the resources for a
bursty workflows, and used a vertical scaling-down scheme to avoid unnecessary
and ineffective resource changes due to fluctuating workflow requests.

The existing works have attempted to provide HA either by proactive methods
such as resource failure prediction or reactive methods including multi-cloud
and running multiple replicas of a VM leading to high operational cost [28].
In contrast, SRE-HM furnishes both reactive as well as proactive approaches to
maximize MTBF and minimize MTTR and thereby upgrading the service availability
at both ends. Also, it reduces the major issue of providing replicas for all
the VMs which leads to high operational costs. SRE-HM estimates significance
ranks of VMs according to the characteristics of tasks executed on them
followed by a selection of the most optimal HA strategy corresponding to each
VM’s significance and user-specified constraints to enhance the HA experience
for users with an optimized operational cost for CSPs. Moreover, the proposed
model imparts a prior estimation of resource contention and mitigation of its
worse effects by migrating VMs and balancing load in real-time. The prediction
of resource usage assists in alleviating server over-/under-load while
reducing resource and power wastage. Table I shows the list of symbols with
their explanatory terms used throughout the paper.

TABLE I: Notations and their descriptions $U$: user; $M$: number of users;
$V$: virtual machine ;
---
$Q$: number of VMs; $PM$: physical machine; $\mathds{AV}$: Availability Score;
$P$: number of servers; $i$: index for servers; $j$: index for VMs;
$k$: index for User; $\omega_{kji}$: Mapping of $k^{th}$ user’s $j^{th}$ VM on
$i^{th}$ server;
$\mathchorus{RU}$: resource utilization; $\mathchorus{PW}$: power consumption;
$\mathchorus{N}$: VM as a node;
$r$: user’s request; $\mathds{R}$: resources; $\mathchorus{C}$: Cluster;
$Mem$: Memory; $C$: CPU;
$\mathds{N}$: Number of resources; $\eta$: probability of server failure;
$\mathchorus{E}_{ab}$: Edge between node a and b; $\mathchorus{fq}$: frequency
of invocation;
$\Omega$: mapping for HA selection; $\mathchorus{S}(\mathchorus{N}_{a})$:
Significance value of node ‘a’;
$\mathds{V}_{fp}$: Failure-prone VMs; $\mathchorus{F}$: Failure probability of
HA strategy;

##  3 SRE-HM Model

Consider a Cloud Service Provider (CSP) owns a Cloud Data Centre (CDC)
consisting of $K$ Clusters of Servers (CoS) {$C_{1}$, $C_{2}$, …, $C_{K}$}
$\in\mathds{C}$ employing $P$ physical machines (PM) {$PM^{k1}$, $PM^{k2}$, …,
$PM^{kp}$} $\in\mathds{PM}$, where $\forall k\in[1,K]$ as demostrated in Fig.
1. The PMs can be in any of the three possible states: active, inactive, or
failed due to hardware failure. Each active server deploys Resource Estimator
(RE) and $Q$ VMs such that {$V^{ki}_{1}$, $V^{ki}_{2}$, …, $V^{ki}_{q}$}
$\in\mathds{V}$ are hosted on $i^{th}$ server $PM^{ki}$ within cluster
$C_{k}$, where $\forall_{i}\in[1,P]$, $\forall_{k}\in[1,K]$.

Figure 1: SRE-HM Model

RE predicts resource contention or overloading condition on its associated
active server ($PM$) to mitigate its worse effects proactively (discussed in
Section 4). CDC employs Resource Management Unit (RMU) composed of two major
sub-units Request Scheduling Unit (RSU) and Response Retrieval Unit (RRU) for
distribution of users assigned job requests, retrieval of responses, and
efficient management of physical resources. Assume that $M$ Users {$U_{1}$,
$U_{2}$, …, $U_{M}$} $\in\mathds{U}$ submit job requests {$\lambda_{1}$,
$\lambda_{2}$, …, $\lambda_{M}$} to RSU for execution. Each request is a high
computing application in the form of Bag of Tasks (BoT) such as {$t^{m}_{1}$,
$t^{m}_{2}$, …, $t^{m}_{b}$} $\in\lambda_{m}:\forall m\in[1,M]$, where $b$ is
total number of tasks with a specific cost ($\mathchorus{EC}^{m}$) and
deadline of execution ($\mathchorus{T}^{m}$).

RSU distributes tasks {$t^{m}_{1}$, $t^{m}_{2}$, …, $t^{m}_{b}$}
$\in\lambda_{m}:\forall m\in[1,M]$ for execution among the VMs deployed on
different PMs with in CoS. Thereafter, the responses {$\delta_{1}$,
$\delta_{2}$, …, $\delta_{M}$} generated by VMs are assembled and fetched to
users {$U_{1}$, $U_{2}$, …, $U_{M}$} with the help of RRU. Both RMU and users
{$U_{1}$, $U_{2}$, …, $U_{M}$} send consecutive feedback to CoS and High
Availability Management Unit (HAMU) by evaluating the Availability Score
($\mathds{AV}_{score}$) using the following Eq. (1); where $\mathds{AV}_{g}$
is guaranteed availability (as defined in SLA terms and conditions) and
$\mathds{AV}_{o}$ is offered availability (actual availability of resources
experienced by the user).

$\mathds{AV}_{score}=\frac{\mathds{AV}_{g}-\mathds{AV}_{o}}{\mathds{AV}_{g}}\times
100$ (1)

The availability score ($\mathds{AV}_{score}$) is sent periodically as a
feedback for analysing the performance of currently adopted availability
strategies and further improve the status of high availability management
within CoS. The VMs executing tasks {$t^{m}_{1}$, $t^{m}_{2}$, …, $t^{m}_{b}$}
$\in\lambda_{m}:\forall m\in[1,M]$ of $m^{th}$ user have correlation among
them because of mutual data exchange for successful execution of $m^{th}$ job
request $\lambda_{m}$. Therefore, a virtual network of such collaborating VMs
is created depending on the scheduling of tasks (belonging to a common job
request) on different VMs which are allocated under the constraints of high
availability forming a Virtual High Availability Network (VHAN). The proposed
model introduces VHAN, Virtual High Availability Zone (VHAZ) and VM
Significance Rank (VSR) which are defined as follows:

######  Definition 1 (VHAN).

A virtual network of VMs $\\{V^{m}_{1}$, $V^{m}_{2}$, …, $V^{m}_{b}\\}$ having
heterogeneous resource $\\{\mathchorus{C}$, $\mathchorus{Mem}\\}$ capacities
executing inter-dependent tasks $\\{t^{m}_{1}$, $t^{m}_{2}$, …,
$t^{m}_{b}\\}\in\lambda_{m}:\forall m\in[1,M]$ deployed on different physical
machines by the CSP, are dedicated to provide high availability service to
user $U_{m}$.

######  Definition 2 (VHAZ).

A virtual zone is a collection of multiple VHANs confined to provide high
availability to the number of users $\\{U_{1}$, $U_{2}$, …, $U_{M}\\}$ by
employing selected optimal high availability strategies.

######  Definition 3 (VSR).

A significance rank assigned to a VM is an estimated value for a quantitive
measurement of its intendment based on the criticality and characteristics of
the task it holds, frequency of invocations, and number of invocations by
other VMs.

A VHAZ comprising of VHANs: $H_{1}$, $H_{2}$, …, $H_{M}$ dedicated for users
$U_{1}$, $U_{2}$, …, $U_{M}$, respectively is designed, where a set of VMs
{$V^{21}_{q}$, $V^{K1}_{q}$, $V^{1p}_{q-1}$, $V^{2p^{\prime}}_{1}$} $\in
H_{1}$; {$V^{1p}_{q}$, $V^{21}_{1}$, $V^{21}_{q-1}$, $V^{11}_{q}$,
$V^{2p^{\prime}}_{q}$} $\in H_{2}$ and so on. The different VMs {$V^{ki}_{1}$,
$V^{ki}_{2}$, …, $V^{ki}_{b}$} $\in H_{m}$: $\forall
k\in[1,K],i\in[1,q],m\in[1,M]$ constituting $m^{th}$ VHAN are physically
deployed on different PMs within CoS. The essential constraints that must be
satisfied for VM deployment on a PM are stated in Eq. (2), where
$\omega_{kji}$ represents a mapping $\omega_{kji}:C_{k}\times V_{j}\times
PM_{i}\in\\{1,0\\}$ such that $\omega_{kji}=1$ if VM $V_{j}$ is deployed on
server $PM_{i}$ within cluster $C_{k}$, else, it is $0$; $\forall
i\in[1,P],k\in[1,K]$; ${\mathds{R}}$ specifies resources viz., CPU
($\mathchorus{C}$) and memory ($\mathchorus{Mem}$) for assignment of VM
($V_{j}$) on $PM_{i}$.

$\displaystyle\sum_{j=1}^{Q}{V^{ki}_{j}\times{{\mathds{R}_{j}}}\times\omega_{kji}\leq
PM_{i}\times{{\mathds{R}_{i}}}}$ (2)

The resource utilization of all the VMs belonging to each VHAN is periodically
monitored and the probability of failure is estimated proactively with the
help of RE. The significance ranks of VMs (i.e., VSR) belonging to different
VHAN are estimated by employing VM Significance Rank Computation Unit (VSRCU)
which is discussed in detail in Section 5. VSR helps in determining the
valuable contributions of different VMs for the successful execution of a job
request $\lambda$ in a VHAN and thereby allows an optimal selection of a high
availability strategy from the pool encapsulating different HA strategies.
HAMU fetches information from VSRCU, VHAZ, and a pool of HA strategies
(Section 6) to decide and adopt the most suitable HA strategy for each VM in
VHAN to implement the best possible high availability environment for requests
execution.

##  4 PM Failure Estimation and Handling

The availability of physical machines is managed with the help of a Resource
Estimator (RE) dedicated to analyse the upcoming resource demand on a
particular server proactively. Fig. 2 portrays a complete mechanism for
managing the availability of PMs, where RE utilizes Long Short Term Memory
(LSTM) Neural Network for accurate prediction of expected resource usage on a
server in the future which is trained/re-trained periodically. LSTM neural
network is chosen for server failure prediction due to their high capability
of remembering information for a longer duration and extracting intuitive
patterns by finding useful correlations among them [29]. The physical machines
$PM^{1}$, $PM^{2}$, …, $PM^{p}$ employ an exclusive LSTM neural network based
resource predictor, optimized with the latest historical resource usage
information of VMs.

Figure 2: Mechanism for Physical Machine Availability

LSTM is a cell state, where previous block ($\mathchorus{S}^{t-1}$)
information flows to the current block ($\mathchorus{S}^{t}$). It is composed
of four neural network layers, where the first layer ($\mathchorus{G}_{1}$)
decides the amount of previous information of resource usage
($\mathchorus{cf}_{\mathchorus{RU}_{i}}^{t}$) to be passed using Eq. (3),
where $\mathchorus{W}$ is the weight matrix, $\mathchorus{b}$ is a bias value,
$Z_{Pr}^{\mathchorus{RU}^{t-1}}$ and $\mathchorus{RU}_{i}^{t}$ are previous
output and current input, respectively. The cell state is updated using two
network layers viz., $sigmoid$ layer ($\mathchorus{G}_{2}$) and $tanh$ layer.
$\mathchorus{G}_{2}$ decides the values to be updated ($\mathchorus{I}^{t}$)
using Eq. (4) and $tanh$ layer generates a new candidate values vector
($\hat{\mathchorus{S}}^{t}$) as stated in Eq. (5). Finally, Eq. (6) combines
both outputs to update cell state.

$\displaystyle\mathchorus{cf}_{\mathchorus{RU}_{i}}^{t}=\mathchorus{G}_{1}(\mathchorus{W}_{\mathchorus{cf}}\cdotp[Z_{Pr}^{\mathchorus{RU}^{t-1}},\mathchorus{RU}^{t}]+\mathchorus{b}_{\mathchorus{RU}})$
(3)
$\displaystyle\mathchorus{I}^{t}=\mathchorus{G}_{2}(\mathchorus{W}_{\mathchorus{I}}\cdot[Z_{Pr}^{\mathchorus{RU}^{t-1}},\mathchorus{RU}^{t}]+\mathchorus{b}_{\mathchorus{I}})$
(4)
$\displaystyle\hat{\mathchorus{S}}^{t}=\mathchorus{tanh}(\mathchorus{W}_{\mathchorus{S}}\cdot[Z_{Pr}^{\mathchorus{RU}^{t-1}},\mathchorus{RU}^{t}]+\mathchorus{b}_{\mathchorus{S}})$
(5)
$\displaystyle\mathchorus{S}^{t}=\mathchorus{cf}_{\mathchorus{RU}_{i}}^{t}\times\mathchorus{S}^{t}+\hat{\mathchorus{S}}^{t-1}\times\mathchorus{I}^{t}$
(6)

This LSTM based resource predictor periodically forecasts CPU
($Z_{Pr}^{\mathchorus{C}_{i}}$) and memory usage
($Z_{Pr}^{\mathchorus{Mem}_{i}}$) for $PM^{i}$ to be provided to RE for
estimation of the probability of failure ($\eta_{i}^{\ast}$) of the respective
PM using Eq. (7), where $\mathchorus{RU}_{i}^{Thr}$ is a threshold value of
resource utilization viz., $\mathchorus{C}$ and $\mathchorus{Mem}$ usage value
for $PM^{i}$ and $\forall_{i}\in[1,P]$. This threshold value is decided by RMU
in the real world cloud environment and it is set to 85% for the empirical
evaluation.

$\eta_{i}^{\ast}=\begin{cases}1,&{If(\mathchorus{RU}_{i}^{Thr}\geq\eta_{i})}\\\
0,&{\text{otherwise}}\end{cases}\quad\eta_{i}:\cup(Z_{Pr}^{\mathchorus{C}_{i}},Z_{Pr}^{\mathchorus{Mem}_{i}})$
(7)

A Physical Machine Management Unit (PMMU) is employed for proactive handling
of any resource-contention based failure by allowing VM migration. PMMU
gathers failure information of PMs as {$\eta_{1}^{\ast}$, $\eta_{2}^{\ast}$,
…, $\eta_{p}^{\ast}$} and alleviates them by migrating VMs before occurrence.
The largest size VMs is migrated (to avoid the occurrence of resource
congestion frequently) from the estimated overloaded PM to a suitable active
PM preferably rather than waking up an inactive PM for minimization of overall
power consumption in CDC. The inactive PMs are turned ON only when currently
activated PMs are unable to host the migrating VMs.

If the predicted information of resource usage of a VM is higher or lesser
than the current resource usage of that VM, then the respective over-
utilization or under-utilization of the PM is estimated. In case of probable
over-utilization of the PM, the chances of resource congestion increase which
indicates the probability of PM failure (i.e., $\eta^{\ast}$ becomes TRUE).
Accordingly, the status of VM (${V}_{j}^{{status}}$) turns into ‘1’ in Eq. (8)
which triggers the migration of the respective VM to alleviate the effect of
server over/under-load before their actual occurrence. The VM migration cost
($Mig_{cost}$) is computed using Eq. (9).

$\displaystyle{{V}_{j}}^{status}=\begin{cases}1&{If(\omega_{kji}\times\eta_{i}^{\ast}=1)}\\\
0&{\text{otherwise.}}\end{cases}$ (8)

$Mig_{cost}={(\sum{c_{mig.j}*(D(PM_{i},PM_{ii})\times
W(V_{mig}))})+\sum{n_{i}\times{d_{i}}}}$

(9)

where $D(PM_{i},PM_{ii})$ is the distance or number of hops covered by
$V_{mig}$ from source ($PM_{i}$) to destination server $PM_{ii}$,
{$i,ii\in[1,P],i\neq ii$}, $V_{mig}$, $W(V_{mig})$ =
$V_{mig}^{\mathchorus{C}}\times V_{mig}^{\mathchorus{M}}$ is the size of
migrating VM. The first term
$\sum{c_{mig.{ii}}*{D(PM_{i},PM_{ii})*W(V_{mig})}}$ specifies energy consumed
during VM migration. The second term $\sum{n_{i}*{d_{i}}}$ states energy
consumed in the server state transition, where if $j^{th}$ VM is placed at
${ii}^{th}$ server after migration then $c_{mig.{ii}}=1$, otherwise,
$c_{mig.{ii}}=0$. If the ${ii}^{th}$ server receives one or more VMs after
migration, then $n_{ii}=1$ else it is 0. Similarly, if $d_{ii}=0$ then
${ii}^{th}$ server is already active before migration, otherwise,
$d_{ii}=E_{tr}$ where $E_{tr}$ is the energy consumed in switching a server
from sleep to active state.

##  5 Significance Rank Computation

A group of inter-communicating VMs in a VHAN ($H_{m}$) executing a cloud
application: {$t^{m}_{1}$, $t^{m}_{2}$, …, $t^{m}_{n}$} $\in\lambda_{m}$:
$\forall m\in[1,M]$, is considered as a weighted directed graph (WDG), where a
VM represents a node ($\mathchorus{N}_{a}$) and invoking relation between VMs
is a directed edge ($\mathchorus{E}_{ab}$) from $\mathchorus{N}_{a}$ to
$\mathchorus{N}_{b}$ in WDG. A weight value ($\xi(\mathchorus{E}_{ab})$) is
assigned to each edge in WDG using Eq. (10), where $\mathchorus{fq}_{ab}$ is
the invocation frequency of node $\mathchorus{N}_{a}$ by node
$\mathchorus{N}_{b}$, $n$ is the number of nodes in WDG, $\mathchorus{C}_{a}$
determines whether $\mathchorus{N}_{a}$ is critical ($\mathchorus{C}$) or not,
which is $1$ for $\mathchorus{N}_{a}$ is a critical node, else it is $0$, and
if $\mathchorus{N}_{a}$ invokes $\mathchorus{N}_{b}$ then
$\mathchorus{fq}_{ab}=1$; otherwise, $\mathchorus{fq}_{ab}=0$.

$\xi(\mathchorus{E}_{ab})=\frac{\mathchorus{fq}_{ab}\times\mathchorus{C}_{a}}{\sum_{b=1}^{n}{\mathchorus{fq}_{ab}}}$
(10)

Hence, the edge $\mathchorus{E}_{ab}$ has a higher weight value if
$\mathchorus{N}_{a}$ is invoked more frequently by $\mathchorus{N}_{b}$ as
compared to other nodes invoked by $\mathchorus{N}_{b}$. WDG containing $n$
nodes is represented as $n\times n$ matrix $\xi$ established using Eq. (10)
subject to Eq. (11), where $\xi(\mathchorus{E}_{ab})=\frac{1}{n}$ if
$\mathchorus{N}_{a}$ has all the incoming edges only.

$\forall a,\sum_{b=1}^{n}{\xi(\mathchorus{E}_{ab})}=1$ (11)

Initially, a random value in the range [0, 1] is assigned to all the nodes of
WDG. All the nodes are differentiated on the basis of their characteristics
into a critical node ($\mathchorus{C}$) and a non-critical node
($\mathchorus{NC}$). Accordingly, the significance value of node
$\mathchorus{N}_{a}$ represented as $\mathchorus{S}(\mathchorus{N}_{a})$ is
estimated using either Eq. (12) or Eq. (13) for critical or non-critical
nodes, respectively;

$\displaystyle\mathchorus{S}(\mathchorus{N}_{a})=(1-\mathchorus{d}){\frac{\Psi}{|\mathchorus{C}|}+\mathchorus{d}{\sum_{g\in
Z(\mathchorus{N}_{a})}{\mathchorus{S}(\mathchorus{N}_{g})\xi(\mathchorus{E}_{ga})}}}$
(12)
$\displaystyle\mathchorus{S}(\mathchorus{N}_{a})=(1-\mathchorus{d}){\frac{1-\Psi}{|\mathchorus{NC}|}+\mathchorus{d}{\sum_{g\in
Z(\mathchorus{N}_{a})}{\mathchorus{S}(\mathchorus{N}_{g})\xi(\mathchorus{E}_{ga})}}}$
(13)

where $|\mathchorus{C}|$ and $|\mathchorus{NC}|$ are number of critical and
non-critical nodes, respectively such that
$|\mathchorus{C}|+|\mathchorus{NC}|=n$, $Z(\mathchorus{N}_{a})$ is a set of
nodes invoking $\mathchorus{N}_{a}$, $d$ is an adjusting parameter in the
range [0, 1]. The parameter $\Psi$ ($\frac{|\mathchorus{C}|}{n}\leq\Psi\leq
1$) determines the effectiveness of critical and non-critical components in
the estimation of VSR as when $\frac{|\mathchorus{C}|}{n}<\Psi\leq 1$, the
value of critical node $(1-\mathchorus{d}){\frac{\Psi}{|\mathchorus{C}|}}$ is
greater than non-critical node
$(1-\mathchorus{d}){\frac{1-\Psi}{|\mathchorus{NC}|}}$. If $\Psi$=1, then
value of the critical nodes is 1, and larger significant values are assigned
to critical nodes, while if $\Psi=\frac{|\mathchorus{C}|}{n}$, both the
critical and non-critical nodes show equal effects. Finally, the VMs are
ranked in the descending order of their significance values. VSRCU estimates
the significance value based ranks of VMs using an enhanced version of the
Weighted Page Rank algorithm [30] as mentioned above.

##  6 HA Strategy Selection

The user specifies several high availability constraints regarding response
time and total cost of application execution in the SLA to be requited during
actual operation. HAMU incorporates significance ranks of VMs
($\mathchorus{S}$), response time ($\mathchorus{T}$), failure probability of
$j^{th}$ HA strategy ($\mathchorus{F}_{j}$), and execution cost
($\mathchorus{EC}$) which yields a mapping $\Omega$ defined in Eq. (14) to
select most admissible HA strategy ($Y_{j}$) for VM ($V^{m}_{i}$) of $m^{th}$
user subject to constraints stated in Eqs. (15), (16), (17), where $D$ is
total number of HA strategies.

$\displaystyle\Omega:\sum_{j}^{D}\mathchorus{S}(V^{m}_{i})\times
Y_{j}\times\mathchorus{F}_{j}\quad\forall_{i}\in[1,n]\quad s.t.$ (14)
$\displaystyle\sum_{j}^{D}Y_{j}\times\mathchorus{EC}_{j}\leq
V^{m}_{i}\times\mathchorus{EC}^{m}_{i}\times U_{m},$ (15)
$\displaystyle\sum_{j}^{D}Y_{j}\times\mathchorus{T}_{j}\leq
V^{m}_{i}\times\mathchorus{T}^{m}_{i}\times U_{m},$ (16)
$\displaystyle\sum_{j}^{D}Y_{j}=1,\quad Y_{j}\in\\{0,1\\}$ (17)

In this work, Automatic recovery block (ARP), Multi-version programming (MVP),
and Parallel execution (PE) based HA strategies are adopted:

  * •

ARP: It engages redundant standby images of a VM which are invoked in sequence
if currently an active image of VM fails. ARP failure probability
($\mathchorus{F}^{ARP}$) is computed using Eq. (18), which get fail only if
all the replicated images get fail, where $num$ is the number of replicated
images and $\mathchorus{F}^{ARP}_{i}$ is failure of $i^{th}$ VM.

$\mathchorus{F}^{ARP}=\prod_{i=1}^{num}\mathchorus{F}^{ARP}_{i}$ (18)

  * •

MVP: It appoints multiple active images or versions of a VM instance
concurrently for the execution of a common task and the final output is
obtained by majority voting. Eq. (19) computes its failure probability, where
$num$ is a number of versions ($num$ is an odd number), and
$\mathchorus{f}(i)$ is the failure probability of alternative VM images. MVP
fails only if more than half of redundant VM images get fail.

$\mathchorus{F}^{MVP}=\sum_{i=\frac{num+1}{2}}^{num}\mathchorus{f}(i)$ (19)

  * •

PE: It allows parallel execution of all $num$ versions of $i^{th}$ VM instance
and the first generated response is provided as final output. It fails only if
all the parallel executions get fail and its failure probability is computed
in Eq. (20)

$\mathchorus{F}^{PE}=\prod_{i=1}^{num}\mathchorus{F}^{PE}_{i}$ (20)

##  7 Operational Design and Complexity

The proposed model initializes a list of PMs, VMs, and users, where the users
submit requests for execution of applications to the resource manager module
which assigns these requests on different VMs placed on PMs as stated in
Algorithm 1. For each time-interval {$t1$, $t2$}, VMs resource utilization is
predicted using LSTM, which further helps to determine any overload or
resource-contention problem and mitigate this situation by VM migration,
proactively. The user becomes an ephemeral owner of a group of VMs engaged in
task execution belonging to the respective user’s application, thus creating a
VHAN. On the same line, for each user exclusive VHAN is generated, which are
later transformed into a WDG matrix. An optimal HA strategy is selected by
including only those strategies which satisfies user specified constraints,
among which a HA strategy with the least failure probability is selected as
the optimal strategy for the target VM.

1 Initialize: $List_{{\mathds{S}}}$, $List_{\mathds{V}}$, $List_{\mathds{U}}$;

2

3for  _each time-interval $\\{t_{1},t_{2}\\}$_ do

4

5 Predict $\mathchorus{RU}$ on each VM on a PM and aggregate it to analyse
resource-contention ;

6 Migrate maximum size VM from overloaded PM by applying the steps for PMMU in
Section 4 ;

7

8 User submitted jobs are distributed into tasks to be executed on VMs
(arranged in VHAN) placed on different PMs while satisfying resource
constraints (Eq. (2));

9 Estimate VSR for each VM in VHAN by applying concepts mentioned in Section
5;

10 WDG in the form of $n\times n$ matrix is built from VHAN ;

11 for  _( $j=1$; $j\leq D$; $j++$)_ do

12 if  _Eq. ( 15) && Eq. (16) && Eq. (17) _ then

13 $x_{j}=\mathchorus{F}_{j}$;

14 end if

15 continue;

16

17 end for

18 Select HA strategy which has minimal failure probability among all $x_{j}$;

19

20 end for

21

Algorithm 1 SRE-HM Operational Summary

Step 1 initializes lists of servers, users, and VMs associated with different
users and consumes time-complexity $O(1)$. Let steps 2-15 repeat for $t$ time-
slots, where step 3 appoints LSTM-RNN for prediction of resource utilization
with complexity of $O(\mathchorus{h})$, where $\mathchorus{h}$ is length of
input sequence. Step 4 performs VM migration has $O(\mathchorus{m})$
complexity, where $\mathchorus{m}$ is a number of migrations. Steps 5-7 create
VHAN followed by WDG in the form of $n\times n$ matrix have $O(n^{2})$
computational complexity. Steps 8-13 iterate $D$ times with $O(D)$ complexity
while Step 14 shows $O(1)$ complexity. Hence, overall computational complexity
turn into $O(\mathchorus{h}\mathchorus{m}n^{2}Dt)$.

##  8 Performance Evaluation

###  8.1 SRE-HM Implementation

A SRE-HM prototype is configured with the collaboration of major modules
discussed below:

  * •

VMs Resource Estimation: The future resource usage of different VMs hosted on
each server is predicted and their number and size are scaled accordingly.
Also, any overload or resource contention failure is detected based on
prediction and mitigated by VM migration proactively.

  * •

VMs Allocation: The predicted VMs are assigned to the servers conforming to
the resource distribution constraints specified in Eq. (2).

  * •

User’s Task submission: Each user submits different tasks along with their
deadline and cost of execution, to be assigned to VMs hosted on different
servers.

  * •

Generation of WDG: A WDG is built for each user by establishing links and
invocations randomly among different VMs selected for task execution of the
user.

  * •

Deciding Critical and Non-Critical VMs: Based on the number of invocations of
a VM, greater than a threshold value of invocation (which is set to 3 in the
experiments), are taken as ‘critical VMs’ and remaining VMs are ‘non-critical
VMs’.

  * •

VM Ranks Computation: The VM ranks are estimated for critical and non-critical
VMs exclusively by following the steps mentioned in Section (5).

  * •

HA Strategy Selection and execution: As per the computed ranks of VMs, failure
probability of different HA strategies, cost and deadline of task execution,
an admissible strategy with the least perhaps failure probability is selected
for each VM. This module is extensible, where any ranking algorithm and HA
strategies can be incorporated adaptively.

  * •

Availability and Execution Cost Evaluation: Based on the above modules, the
availability is computed using Eq. (23) while the cost is estimated in terms
of resource utilization and power consumption computed as given below.

###  8.2 Parameters evaluation

The HA performance metrics including MTBF, MTTR, and average availability of
SRE-HM model are evaluated by considering lifecycle of a hypothetical service
as demonstrated in Fig. 3, wherein the variables $DT$, $UT$, and $TT$ are
downtime, uptime, and total time of a service, respectively.

Figure 3: Lifecycle of a service indicating uptime, outage and total time

A service may be either in uptime as illustrated by the variables $UT_{1}$,
$UT_{2}$, $UT_{3}$, and $UT_{4}$ or in downtime defined by variables $DT_{1}$,
$DT_{2}$, and $DT_{3}$. The term $Num_{\mathchorus{F}}$ represents a number of
failures of system (i.e., 3 in given Fig. 3); the MTBF and MTTR are evaluated
using Eqs. (21) and (22), respectively. MTTF and MTTR are stated as the
averages of uptime and downtime, respectively in these equations. Accordingly,
the average availability can be computed using Eq. (23), where
$Num_{\mathchorus{F}}$ is total number of failures, $\sum_{i=1}^{M}{UT_{i}}$
and $\sum_{i=1}^{M}{DT_{i}}$ represent total uptime and downtime of a service,
respectively experienced by $M$ users over time-interval {$t_{1}$, $t_{2}$}.

$MTBF=\int\limits_{\begin{subarray}{c}t_{1}\\\
\mathcal{}\end{subarray}}^{t_{2}}(\frac{\sum_{i=1}^{M}{UT_{i}}}{Num_{\mathchorus{F}}})dt$
(21) $MTTR=\int\limits_{\begin{subarray}{c}t_{1}\\\
\mathcal{}\end{subarray}}^{t_{2}}(\frac{\sum_{i=1}^{M}{DT_{i}}}{Num_{\mathchorus{F}}})dt$
(22) $A_{avg}=\frac{MTBF}{MTBF+MTTR}$ (23)

The resource utilization ($\mathchorus{RU}$) of data centre is estimated using
Eqs. (24) and (25), where $\mathds{N}$ is the number of resources,
$\mathchorus{RU}{C}$ and $\mathchorus{RU}{Mem}$ are CPU and memory of server.
If $k^{th}$ server $PM_{k}$ is active, hosting VMs ($\beta_{k}$ = 1),
otherwise, $\beta_{k}$ = 0.

$\mathchorus{RU}^{DC}=\frac{\sum_{k=1}^{P}{\mathchorus{RU}_{k}^{\mathchorus{C}}}+\sum_{k=1}^{P}{\mathchorus{RU}_{k}{Mem}}}{|\mathds{N}|\times\sum_{k=1}^{P}{\beta_{k}}}$
(24) $\mathchorus{RU}_{k}^{\mathds{R}}=\frac{\sum_{i=1}^{Q}{\omega_{ik}}\times
V_{i}^{\mathds{R}}}{S_{k}^{\mathds{R}}}\quad\forall_{k}\in\\{1,P\\},\mathds{R}\in\\{\mathchorus{C},\mathchorus{Mem}\\}$
(25)

Eq. (26) computes power consumption ($\mathchorus{PW}^{DC}$), where
${PW_{i}}^{max}$, ${PW_{i}}^{min}$, and ${PW_{i}}^{idle}$ are maximum,
minimum, and idle state power consumption, respectively of $i^{th}$ server.

$\mathchorus{PW}^{DC}=\sum_{i=1}^{P}{[{PW_{i}}^{max}-{PW_{i}}^{min}]\times{RU}+{PW_{i}}^{idle}}$
(26)

###  8.3 Experimental Set-up and Dataset

The simulation experiments are executed on a server machine assembled with two
Intel® Xeon® Silver 4114 CPU with 40 core processor and 2.20 GHz clock speed.
The server machine is deployed with 64-bit Ubuntu 16.04 LTS, having main
memory of 128 GB. The data centre environment included three different types
of servers and four types of VMs configuration shown in Tables II and III in
Python. The resource features like power consumption ($PW_{max},PW_{min}$),
MIPS, RAM and memory are taken from real server IBM [31] configuration where
$S_{1}$ is ‘ProLiantM110G5XEON3075’, $S_{2}$ is ‘IBMX3250Xeonx3480’ and
$S_{3}$ is ‘IBM3550Xeonx5675’. The VMs configuration is inspired from the VM
instances of Amazon website [32].

TABLE II: Server Configuration

Server | PE | MIPS | RAM(GB) | $PW_{max}$ |  $PW_{min}$/$PW_{idle}$
---|---|---|---|---|---
$S_{1}$ | 2 | 2660 | 4 | 135 | 93.7
$S_{2}$ | 4 | 3067 | 8 | 113 | 42.3
$S_{3}$ | 12 | 3067 | 16 | 222 | 58.4

TABLE III: VM Configuration VM type | PE | MIPS | RAM(GB)
---|---|---|---
$v_{small}$ | 1 | 500 | 0.5
$v_{medium}$ | 2 | 1000 | 1
$v_{large}$ | 3 | 1500 | 2
$v_{Xlarge}$ | 4 | 2000 | 3

Dataset: Google Cluster Data (GCD) dataset is utilized for performance
estimation of SRE-HM and comparative approaches which contains resources viz.,
CPU, memory, disk I/O request and resource usage information of 672,300 jobs
executed on 12,500 servers for the period of 29 days [33]. The CPU and memory
utilization percentage of VMs are obtained from the given CPU and memory usage
percentage for each task in every five minutes over period of twenty-four
hours.

###  8.4 Results

Table IV reports the performance metrics: MTTR, MTBF, average availability
($\mathds{AV}$), accuracy of failure prediction ($Acu^{Pr}$), average number
of overloads ($\mathds{OV}$), power consumption ($\mathchorus{PW}$), Resource
utilization ($\mathchorus{RU}$), average number of VM migrations
($\mathchorus{Mig}$) achieved for varying percentage of failure-prone VMs
($\mathds{V}_{fp}$) over period of 500 minutes.

TABLE IV: Performance metrics for GCD workloads $\mathds{V}_{fp}$ | $T(min.)$ | $MTTR$ | $MTBF$ | $\mathds{AV}$ | $Acu^{Pr}$ | $\mathds{OV}$ |  $\mathchorus{PW}$ (W) | $\mathchorus{RU}$ | $\mathchorus{Mig}\texttt{\\#}$
---|---|---|---|---|---|---|---|---|---
5 | 100 | 1.47 | 2757.14 | 99.91 | 99.3 | 5 | 8660.9 | 76.2 | 7
250 | 1.05 | 3900 | 99.96 | 98.8 | 7 | 8660.9 | 76.6 | 5
300 | 1.05 | 3900 | 99.96 | 98.6 | 7 | 8660.9 | 76.6 | 5
| 500 | 0.84 | 4900 | 99.98 | 99.6 | 8 | 8660.9 | 76.5 | 4
10 | 100 | 2.73 | 1438.46 | 99.84 | 97.9 | 11 | 8498.6 | 75.8 | 13
250 | 2.1 | 1900 | 99.85 | 98.4 | 9 | 8498.6 | 75.3 | 10
300 | 1.89 | 2122.22 | 99.81 | 95.5 | 11 | 8498.6 | 75.8 | 9
500 | 1.68 | 2400 | 99.93 | 98.7 | 8 | 8498.6 | 75.6 | 8
30 | 100 | 3.99 | 952.63 | 99.58 | 98.8 | 14 | 8601.7 | 77.8 | 19
200 | 3.57 | 1076.47 | 99.66 | 97.6 | 16 | 8601.7 | 76.9 | 17
300 | 3.15 | 1233.33 | 99.74 | 98.8 | 12 | 8601.7 | 76.7 | 15
500 | 2.94 | 1328.57 | 99.78 | 93.7 | 19 | 8601.7 | 76.8 | 14
80 | 100 | 4.62 | 809.09 | 99.43 | 97.9 | 15 | 8578.4 | 74.8 | 22
250 | 4.41 | 852.38 | 99.48 | 98.2 | 18 | 8578.4 | 75.1 | 21
300 | 3.99 | 952.63 | 99.58 | 98.2 | 18 | 8578.4 | 75.1 | 19
500 | 3.36 | 1150.00 | 99.76 | 98.8 | 18 | 8578.4 | 74.9 | 16

The values achieved for MTBF and MTTR depends on the number of failures
($Num_{\mathchorus{F}}$) as depicted in Eqs. (21) and (22), respectively. The
values of uptime ($UT$) are obtained by calculating the product of number of
successfully deployed VMs. The value of MTTR associated with a VM is 0.21
minutes which is reported in [34], [35]. Accordingly, the values of MTTR are
enumerated for different number of VM migrations that changes with the number
of unpredicted VM failures. The resultant values of availability are evaluated
using Eq. (23) depending on the MTBF and MTTR values recorded over time-
interval {$t_{1}$, $t_{2}$} i.e., 100 minutes for the observed experiments.
The availability for the Google Cluster workload is above 99% for all the
observed cases. It can be observed that with increasing number of
$\mathds{V}_{fp}$, the performance of SRE-HM (independent of time) is durable
where $Acu^{Pr}$, and $\mathchorus{RU}$ are greater than 97%, and 74.5%,
respectively while $\mathchorus{PW}$, and $\mathchorus{Mig}$ lesser than 8661
W and 22 VM migrations, respectively.

###  8.5 Comparison

The different versions of SRE-HM including SRE-HM ($S^{+}$), SRE-HM with only
critical VM ranking ($S^{\ast}$), Without SRE-HM ($S^{-}$), and SRE-HM without
VM ranking ($S^{\ast\ast}$) collaborated with three HA strategies ($arp$,
$mvp$, $pe$) are implemented and compared for intermediate result values and
performance metrics.

####  A PM Failure Estimation

Fig. 4(a) compares boxplots for the outcomes of PM failure estimation of SRE-
HM with state-of-the-arts: DNN [18], ES [20], SVM [19], GB [23]. It shows that
the upper, median, as well as lower quartiles have highest value of prediction
accuracy for SRE-HM prediction approach over all the compared methods. On the
same lines, the percentage of resource contention based PM failures (RCF) is
least for SRE-HM up to 72.2% against ES as depicted in Fig. 4(b).

(a) Failure Prediction Accuracy (b) PM Failures

Figure 4: PM Failure Estimation

####  B VM Ranking and HA Strategy Selection

Fig. 5 highlights the comparison of the inter-mediate outcomes achieved during
execution of SRE-HM and its various versions: SRE-HM ($S^{+}$), $S^{\ast}$,
$S^{-}$, $S^{\ast\ast}_{arp}$, $S^{\ast\ast}_{mvp}$, and $S^{\ast\ast}_{pe}$.
Fig. 5(a) shows values of significance ranks obtained for a randomly selected
VMs retrieved over a period of 500 minutes via experimental execution. It is
observed that significance ranks of a VM varies depending upon the number of
invocations between 0 and 1 over period of 500 minutes. The comparative
intermediate resultant values of HA strategy selection (%) for varying number
of failure-prone VMs (%) are shown in Fig. 5(b), where $S^{\ast\ast}_{arp}$,
$S^{\ast\ast}_{mvp}$, $S^{\ast\ast}_{pe}$ show straight lines i.e., 100 %
because these set-ups lack VM rank estimation and HA strategy selection and
executed with respect to single HA strategy only.

(a) VM Ranking (b) HA Strategies

Figure 5:  HA Strategy Selection

####  C HA Analysis

The availability varies with the values of MTBF and MTTR, obtained during
online processing over time-interval {$t_{1}$, $t_{2}$}. The variations
observed (during experimental simulation) in the values of MTTR and MTBF are
shown in Figs. (6) and (7) for Google Cluster workload execution. It is to be
noticed that MTTR decreases when MTBF increases, which specifies a inverse
relation between them. The MTBF increases and MTTR decreases in the order:
$S^{+}$>$S^{\ast\ast}_{pe}$
>$S^{\ast\ast}_{mvp}$>$S^{\ast\ast}_{arp}$>$S^{\ast}$ > $S^{-}$. Accordingly,
Fig. 8 compares $S^{+}$, $S^{\ast}$, $S^{\ast\ast}_{arp}$,
$S^{\ast\ast}_{mvp}$, $S^{\ast\ast}_{pe}$, and ($S^{-}$), where the percentage
of availability is highest for $S^{+}$ and outperforms $S^{-}$ by 19.56% due
to proactive PM failure estimation and adoption of most appropriate HA
strategy on the basis of significance ranking of VMs.

Figure 6: MTTR  Figure 7:  MTBF  Figure 8: Availability

####  D Power Consumption

The power consumption is shown in Fig. 9 which is lesser for $S^{+}$ up to
19.1% as compared with that of $S^{-}$. Further, it is observed that power
consumption of $S^{+}$ is nearly 0.6% higher as compared with
$S^{\ast\ast}_{arp}$ due to adoption of ARP HA strategy for each VM which has
lesser power consumption as compared with MVP, and PE strategies. However, at
the cost of 0.6% increased power consumption, the availability is improved up
to 5.31% by utilizing SRE-HM ($S^{+}$).

Figure 9: Power Consumption

####  E Cost Optimization

Fig. 10 compares the cost optimization in terms of resource utilization and
number of active servers, attained by different versions of SRE-HM viz., With
SRE-HM ($S^{+}$), $S^{\ast\ast}_{arp}$, $S^{\ast\ast}_{mvp}$,
$S^{\ast\ast}_{pe}$, with HA Without SRE-HM ($S^{-}$). Fig. 10 (a) reveals
that $S^{+}$ has highest RU up to 78.96% which is superior to
$S^{\ast\ast}_{pe}$ by 10%. The number of active PMs in case of $S^{+}$ are
reduced up to 26.67% as depicted in Fig. 10 (b) which is due to consolidation
of VMs by including ranking before HA strategy selection for each VM rather
than applying same strategy to all.

(a) Resource Utilization (b) Active Servers

Figure 10: Cost Optimization parameters

####  F SRE-HM v/s State-of-the-arts

SRE-HM model is compared with significant state-of-the-art works discussed in
Section 2 subject to different key characteristics and performance indicators
as shown in Table V. The description of various characteristics and values of
performance metrics are obtained from the published versions of these works
while some other values are computed based on the values of related metrics.
The comparison of different performance parameters are reported in subsequent
subsections which are based on the values obtained during experimental
evaluations of SRE-HM and the compared approaches.

TABLE V: Pandect comparison: SRE-HM v/s state-of-the-arts

Approaches | Key characteristics | Performance indicators
---|---|---
Failure Estimation |  HA Approach |  HA Strategy, Selection |  Availability |  Resource Utilization |  Energy Consumption |  Active PMs |  VM migration
PEFS [18] |  Deep NN |  Replication |  $\times$ |  $\times$ |  70%-72% |  11500.47 |  $\times$ |  $\times$
FAEE [20] |  Exp. Smooth. |  checkpointing |  $\checkmark$ |  82% |  $\times$ |  9825.68 |  $\times$ |  $\checkmark$
HDCC [19] |  SVM and LR |  $\times$ |  $\times$ |  $\times$ |  $\times$ |  $\times$ |  $\times$ |  $\times$
CDEF [23] |  MART-GB |  $\times$ |  $\times$ |  $\times$ |  $\times$ |  $\times$ |  $\times$ |  $\times$
FESTAL [7] |  $\times$ |  Backup |  $\checkmark$ |  95.08% |  Varying |  $\times$ |  Varying |  $\times$
FASTER [27] |  $\times$ |  Backup |  $\checkmark$ |  98.5% |  Varying |  $\times$ |  Varying |  $\times$
OP-MLB [3] |  DE-NN |  $\times$ |  $\times$ |  $\times$ |  64.6% |  8801.67kWH |  45% |  $\checkmark$
WP-SM [36] |  Wiener Filter |  $\times$ |  $\times$ |  $\times$ |  $\times$ |  9001.67 kWH |  51.2% |  $\checkmark$
OHD-MUP [37] |  Multiple LR |  $\times$ |  $\times$ |  $\times$ |  $\times$ |  7701.67 kWH |  31.2% |  $\checkmark$
CHARM [5] |  $\times$ |  Multi-cloud |  $\checkmark$ |  Varying |  $\times$ |  $\times$ |  $\times$ |  $\times$
CHASE [26] |  $\times$ |  scheduling |  $\checkmark$ |  99.1% |  $\times$ |  $\times$ |  $\times$ |  $\times$
SRE-HM |  LSTM-NN |  VM Ranking |  $\checkmark$ |  99.3% |  76.9% |  8660.7 kWH |  53% |  $\checkmark$

##  9 Conclusion and Future Directions

A novel SRE-HM model is proposed which computes significance ranks of VMs.
Based on this ranking, user specified constraints, and failure probability, an
optimal HA strategy is chosen to provide admissible high availability
respective to each VM dedicated for execution of cloud applications. A
resource predictor detects resource contention prior to its occurrence and
alleviates it by migrating VMs from corresponding PM. Implementation and
performance evaluation of proposed model acknowledge that it substantially
improves the availability for users with optimized operational cost for data
centre. In future, the proposed model can be extended with more useful
characteristics of cloud applications to determine their critical nature
before siginificance rank computation and VM collaboration relation during
resource usage prediction to achieve more robust high availability at
optimized cost.

## Acknowledgment

This work is financially supported by National Institute of Technology,
Kurukshetra, India.

## References

  * [1] D. Saxena and A. Singh, “Security embedded dynamic resource allocation model for cloud data centre,” _Electronics Letters_ , 2020.
  * [2] D. Saxena and A. K. Singh, “An intelligent traffic entropy learning-based load management model for cloud networks,” _IEEE Networking Letters_ , vol. 4, no. 2, pp. 59–63, 2022.
  * [3] D. Saxena, A. K. Singh, and R. Buyya, “OP-MLB: An online vm prediction based multi-objective load balancing framework for resource management at cloud datacenter,” _IEEE Transactions on Cloud Computing_ , vol. doi: 10.1109/TCC.2021.3059096, 2021.
  * [4] J. Fang, R. Zhang, Y. Zhao, K. Zheng, X. Zhou, and A. Zhou, “A-dsp: An adaptive join algorithm for dynamic data stream on cloud system,” _IEEE Transactions on Knowledge and Data Engineering_ , 2019.
  * [5] Q. Zhang, S. Li, Z. Li, Y. Xing, Z. Yang, and Y. Dai, “Charm: A cost-efficient multi-cloud data hosting scheme with high availability,” _IEEE Transactions on Cloud computing_ , vol. 3, no. 3, pp. 372–386, 2015.
  * [6] Crn, “Ten biggest cloud outages of 2020,” _https://www.crn.com/slide-shows/cloud/the-10-biggest-cloud-outages-of-2020/11?itc=refresh_ , 2020\.
  * [7] J. Wang, W. Bao, X. Zhu, L. T. Yang, and Y. Xiang, “Festal: fault-tolerant elastic scheduling algorithm for real-time tasks in virtualized clouds,” _IEEE Transactions on Computers_ , vol. 64, no. 9, pp. 2545–2558, 2014.
  * [8] A. K. Singh, D. Saxena, J. Kumar, and V. Gupta, “A quantum approach towards the adaptive prediction of cloud workloads,” _IEEE Transactions on Parallel and Distributed Systems_ , 2021.
  * [9] M. A. Mukwevho and T. Celik, “Toward a smart cloud: A review of fault-tolerance methods in cloud systems,” _IEEE Transactions on Services Computing_ , 2018.
  * [10] P. T. Endo, G. E. Gonçalves, D. Rosendo, D. Gomes, G. L. Santos, A. L. C. Moreira, J. Kelner, D. Sadok, and M. Mahloo, “Highly available clouds: System modeling, evaluations, and open challenges,” in _Research Advances in Cloud Computing_. Springer, 2017, pp. 21–53.
  * [11] S. S. Gill and R. Buyya, “Failure management for reliable cloud computing: A taxonomy, model, and future directions,” _Computing in Science & Engineering_, vol. 22, no. 3, pp. 52–63, 2018.
  * [12] C. H. Costa, Y. Park, B. S. Rosenburg, C.-Y. Cher, and K. D. Ryu, “A system software approach to proactive memory-error avoidance,” in _SC’14: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis_. IEEE, 2014, pp. 707–718.
  * [13] Z. Li and Y. Yang, “A novel network structure with power efficiency and high availability for data centers,” _IEEE Transactions on Parallel and Distributed Systems_ , vol. 29, no. 2, pp. 254–268, 2017.
  * [14] P. T. Endo, G. E. Gonçalves, D. Rosendo, D. Gomes, G. L. Santos, A. L. C. Moreira, J. Kelner, D. Sadok, and M. Mahloo, “Highly available clouds: System modeling, evaluations, and open challenges,” in _Research Advances in Cloud Computing_. Springer, 2017, pp. 21–53.
  * [15] D. Saxena and A. K. Singh, “Ofp-tm: an online vm failure prediction and tolerance model towards high availability of cloud computing environments,” _The Journal of Supercomputing_ , vol. 78, no. 6, pp. 8003–8024, 2022.
  * [16] D. Saxena, I. Gupta, J. Kumar, A. K. Singh, and X. Wen, “A secure and multiobjective virtual machine placement framework for cloud data center,” _IEEE Systems Journal_ , 2021.
  * [17] Z. Zheng, T. C. Zhou, M. R. Lyu, and I. King, “Component ranking for fault-tolerant cloud applications,” _IEEE Transactions on Services Computing_ , vol. 5, no. 4, pp. 540–550, 2011.
  * [18] A. Marahatta, Q. Xin, C. Chi, F. Zhang, and Z. Liu, “Pefs: Ai-driven prediction based energy-aware fault-tolerant scheduling scheme for cloud data center,” _IEEE Trans. on Sustain. Comput._ , 2020.
  * [19] J. Pinto, P. Jain, and T. Kumar, “Hadoop distributed computing clusters for fault prediction,” in _2016 International Computer Science and Engineering Conference (ICSEC)_. IEEE, 2016, pp. 1–6.
  * [20] Y. Sharma, W. Si, D. Sun, and B. Javadi, “Failure-aware energy-efficient vm consolidation in cloud computing systems,” _Future Generation Computer Systems_ , vol. 94, pp. 620–633, 2019.
  * [21] M. Dabbagh, B. Hamdaoui, M. Guizani, and A. Rayes, “Energy-efficient resource allocation and provisioning framework for cloud data centers,” _IEEE Transactions on Network and Service Management_ , vol. 12, no. 3, pp. 377–391, 2015.
  * [22] N. T. Hieu, M. Di Francesco, and A. Ylä-Jääski, “Virtual machine consolidation with multiple usage prediction for energy-efficient cloud data centers,” _IEEE Transactions on Services Computing_ , vol. 13, no. 1, pp. 186–199, 2017.
  * [23] Y. Xu, K. Sui, R. Yao, H. Zhang, Q. Lin, Y. Dang, P. Li, K. Jiang, W. Zhang, J.-G. Lou _et al._ , “Improving service availability of cloud systems by predicting disk error,” in _2018 $\\{$USENIX$\\}$ Annual Technical Conference ($\\{$USENIX$\\}$$\\{$ATC$\\}$ 18)_, 2018, pp. 481–494.
  * [24] H. Adamu, B. Mohammed, A. B. Maina, A. Cullen, H. Ugail, and I. Awan, “An approach to failure prediction in a cloud based environment,” in _2017 IEEE 5th International Conference on Future Internet of Things and Cloud (FiCloud)_. IEEE, 2017, pp. 191–197.
  * [25] D. Saxena, I. Gupta, A. K. Singh, and C.-N. Lee, “A fault tolerant elastic resource management framework towards high availability of cloud services,” _IEEE Transactions on Network and Service Management_ , 2022.
  * [26] M. Jammal, A. Kanso, and A. Shami, “Chase: Component high availability-aware scheduler in cloud computing environment,” in _2015 IEEE 8th International Conference on Cloud Computing_. IEEE, 2015, pp. 477–484.
  * [27] X. Zhu, J. Wang, H. Guo, D. Zhu, L. T. Yang, and L. Liu, “Fault-tolerant scheduling for real-time scientific workflows with elastic resource provisioning in virtualized clouds,” _IEEE Transactions on Parallel and Distributed Systems_ , vol. 27, no. 12, pp. 3501–3517, 2016.
  * [28] R. Jhawar, V. Piuri, and M. Santambrogio, “Fault tolerance management in cloud computing: A system-level perspective,” _IEEE Systems Journal_ , vol. 7, no. 2, pp. 288–297, 2012.
  * [29] J. Kumar, R. Goomer, and A. K. Singh, “Long short term memory recurrent neural network (lstm-rnn) based workload forecasting model for cloud datacenters,” _Procedia Computer Science_ , vol. 125, pp. 676–682, 2018.
  * [30] W. Xing and A. Ghorbani, “Weighted pagerank algorithm,” in _Proceedings. Second Annual Conference on Communication Networks and Services Research, 2004._ IEEE, 2004, pp. 305–314.
  * [31] IBM, “Power model. [online].” _https:// www.ibm.com/_ , 1999.
  * [32] Amazon, “Amazon ec2 instances. [online].” _https:// aws.amazon.com/ec2/instance-types/_ , 1999.
  * [33] C. Reiss, J. Wilkes, and J. L. Hellerstein, “Google cluster-usage traces: format+ schema,” _Google Inc., White Paper_ , pp. 1–14, 2011.
  * [34] J. Araujo, P. Maciel, M. Torquato, G. Callou, and E. Andrade, “Availability evaluation of digital library cloud services,” in _2014 44th Annual IEEE/IFIP International Conference on Dependable Systems and Networks_. IEEE, 2014, pp. 666–671.
  * [35] G. L. Santos, P. T. Endo, G. Gonçalves, D. Rosendo, D. Gomes, J. Kelner, D. Sadok, and M. Mahloo, “Analyzing the it subsystem failure impact on availability of cloud services,” in _2017 IEEE symposium on computers and communications (ISCC)_. IEEE, 2017, pp. 717–723.
  * [36] M. Dabbagh, B. Hamdaoui, M. Guizani, and A. Rayes, “An energy-efficient vm prediction and migration framework for overcommitted clouds,” _IEEE Trans. on Cloud Comput._ , no. 4, pp. 955–966, 2018.
  * [37] T. H. Nguyen, M. Di Francesco, and A. Yla-Jaaski, “Virtual machine consolidation with multiple usage prediction for energy-efficient cloud data centers,” _IEEE Trans. on Serv. Comput._ , 2017.

|  Deepika Saxena received her M.Tech degree in Computer Science and
Engineering from Kurukshetra University Kurukshetra, Haryana, India in 2014.
Currently, she is pursuing her Ph.D from Department of Computer Applications,
National Institute of Technology (NIT), Kurukshetra, India. Her major research
interests are Neural Networks, Evolutionary Algorithms, Resource Management
and Security in Cloud Computing.
---|---
|  Ashutosh Kumar Singh is working as a Professor and Head in the Department
of Computer Applications, National Institute of Technology Kurukshetra, India.
He has research and teaching experience in various Universities of the India,
UK, and Malaysia. He received his PhD in Electronics Engineering from Indian
Institute of Technology, BHU, India and Post Doc from Department of Computer
Science, University of Bristol, UK. He is also Charted Engineer from UK. His
research area includes Verification, Synthesis, Design and Testing of Digital
Circuits, Data Science, Cloud Computing, Machine Learning, Security, Big Data.
He has published more than 330 research papers in different journals,
conferences and news magazines.
---|---