Organization: This paper is organized as follows:
Section 2 discusses related work. Section 3 explains
HIOBS’s theoretical aspects and the implementation
of the solution. The evaluation of HIOBS is presented
in Section 4. Section 5 presents the conclusions.
2 RELATED WORK
OpenStack-Cinder (OpenStack, 2017a) implements
cloud block storage as a service by managing phy-
sical storage resources. The core functionality of cin-
der is to support the creation and deletion of volumes
as well as the attachment of volumes to virtual ma-
chines by a self-service Web API. These volumes are
allocated to storage nodes. Theoretically, while the
maximum storage capacity of a storage node is not re-
ached, more volumes can be assigned to that storage
node. Cinder scheduling algorithms can reduce infra-
structure costs by increasing the sharing of physical
storage resources, but they lack support for any per-
formance guarantee demanded by SLA requirements.
The paper (Tremblay et al., 2016) categorizes
four research challenges: workload characterization,
storage node characterization, storage node selection
and online storage node tuning. Our proposed algo-
rithm may be classified as a storage node selection
research. In the paper, the necessity of better algo-
rithms for software-defined storage (SDS) solutions is
raised. It is proposed a workload Aware Storage Plat-
form (WASP), which advantage on deployment auto-
mation and the deployability of the SDS solutions, al-
lowing applications to specify the expected workload,
determining storage node solutions to serve the wor-
kload, and performing timely reconfiguration based
on the changing behavior of the workload over time.
The paper only suggests directions, not applying any
experimentation of its ideas.
In the work (Yao et al., 2014), the authors use the
OpenStack Cinder as a study case for volume sche-
duling in the cloud. They proposed a volume sche-
duling algorithm with the goal of enabling the cloud
management based on IOPS ratio performance to mi-
nimize SLA IOPS violations. The authors conside-
red the available storage and IOPS capacities from
storage nodes for allocating each new volume request.
Precisely, they explored many heuristics at combining
IOPS ratio and storage capacities of the storage nodes.
Although the paper presented efficiency at reducing
the SLA IOPS violations at considering the available
IOPS ratio capacity to select the most suitable storage
node, the paper did not evaluate heterogeneous IOPS
ratio for SLA IOPS requests and storage nodes.
The work (Yao et al., 2015) aimed to solve the
volume scheduling problem as well as in (Yao et al.,
2014). However, in (Yao et al., 2015), the problem
was modeled as a NP-complete problem (Yao et al.,
2015) and treated as a Vector Bin Package Problem
(Gary and Johnson, 1979) with d dimensions. Where
each dimension d represents the capability of a sy-
stem resource like CPU, memory, IOPS ratio, storage
capacity and so on. Then they proposed an objective
function to minimize the number of storage nodes
used to meet the volume requests’ requirements. For
this reason, the authors proposed a heuristic based on
Standard Best Fit (BF) heuristic named Modified Vec-
tor BFD (MVBFD) to process a set of volume reque-
sts arrived for each short period. This proposed algo-
rithm was also not evaluated for heterogeneous SLAs
requests and storage nodes. That work also did not
analyze the size of the time window and its impact on
processing volume requests.
3 HIOBS APPROACH
HIOBS is an SLA-aware approach for block storage
scheduling in heterogeneous cloud environments to
improve the QoS of the SLA IOPS requirements.
SLA IOPS requirements make the cloud block storage
scheduling problem more challenging because they
are directly impacted by the IOPS capacity of the
storage nodes. The main difficulty to provide QoS
to SLA IOPS requirements in heterogeneous environ-
ments is to handle the performance fragmentation of
the available IOPS of the storage nodes.
3.1 Cloud Block Storage Heterogeneous
Problem
Consider that a user of the cloud block storage ser-
vice needs two new volumes to attach to its virtual
machines. Those two volumes will be used by data-
driven applications with different SLA IOPS requi-
rements, i.e. performance requirements, for working
properly. The first application needs a volume capable
of at least 150 IOPS whereas the second application
needs at least 300 IOPS. Also, consider that a cloud
block storage provider has available three storage no-
des with heterogeneous IOPS capacity. The IOPS ca-
pacities of the A, B and C storage nodes are 150, 250
and 350 respectively. Consider now, in the Figure
2, that the user firstly requested Volume 1 with SLA
IOPS of 150. A scheduling policy as in (Yao et al.,
2014) that takes into account the available IOPS of
storage node may choose the storage node C because
it has the largest available IOPS capacity to host the
CLOSER 2018 - 8th International Conference on Cloud Computing and Services Science
92