Granularity of Control in Cloud Autoscaling
6.1.1 Motivation and Challenges
Undoubtedly, objective-dependency has great impact on the achieved global benefits.
Therefore, reaching the right granularity of control during the decision making process of autoscaling is extremely important as it needs to cope with the correct objective-dependency. By granularity of control, we refer to which objectives should be considered in the same decision making process for optimisation in the autoscaling. Nevertheless, determining the right granularity of control in autoscaling is a major challenge. One one hand, local optimisation of objectives (e.g., optimise objectives per-VM) might not
opti-mise the global benefit due to the presence of objective-dependency caused by overlapping sensitivity. On the other hand, a global optimisation in the cloud is likely to result in large overhead in searching for an autoscaling decision. As a result, there is a trade-offs between global benefit and overhead in the design. In particular, the difficulty is that the objective-dependency tends to dynamic and uncertain in nature. It becomes even harder providing that the QoS models are subject to dynamic changes in their inputs, as we discussed in Chapter 4. The crucial challenge is how can we obtain the correct in-formation about the time-varying objective-dependency, which can be used to determine the effect of a given granularity of control on the global benefits and thus reach the right granularity.
As we have extensively surveyed in Chapter 2, a common problem in existing autoscal-ing approaches for the cloud is that they are not designed to be self-aware with respect to the dependency of QoS and cost objectives for all cloud-based services. Precisely, they cluster the cloud into fixed regions and granularity of control; optimise for QoS and cost objectives and aggregate the results in each region. For example, existing autoscaling approaches aim at either global optimum in one global region (e.g., cloud-level control) or local optimum in different local regions (e.g., PM-level, VM-level and service-level con-trol) asynchronously and independently. Both solutions ignore QoS and cost sensitivity as their decision making assumes fixed region granularity. Given that the cloud tends to be dynamic and its QoS sensitivity changes at runtime, these approaches can result in inappropriate clustering of regions, which can lead to non-optimal global benefit or large overhead when optimising for the said regions. Both global benefit and the overhead are sensitive to the number of services and their objectives in the decision making process.
Therefore, the trade-offs between global benefit and overhead is influenced by the region granularity. Consider now a complicated scenario, where the region granularity is linear to both global benefit and overhead in a given optimisation algorithm: Figure 6.1 shows
Better global benefits
Finer region granularity
Service-level VM-level
PM-level
Cloud-level
Less overhead
Figure 6.1: Approximated Relationship of Fixed Region Granularities to Global Benefit and Overhead in Cloud.
the likely trend of different fixed region granularities in relation to the global benefit and overhead. Based on the degree of granularity of control in decision making, we classify the approaches for cloud autoscaling into 4 categories, as shown in Figure 6.1. We can see that finer region granularity implies less number of services and the related objectives within each region. This tends to result in worse global benefit but smaller overhead.
Consequently, achieving globally-optimal benefit in the cloud call for novel and adap-tive approach that is capable to dynamically determine the right granularity of control on-the-fly.
6.1.2 Contributions
The problem, which this chapter addresses is how the autoscaling system can dynamically and efficiently determine an autoscaling decision that produces globally-optimal benefit.
To achieve such, we propose a self-aware and self-adaptive approach for determining the right granularity of control, which exploits on the QoS modelling approach from Chapter 4 and 5. Through the awareness of the sensitivity and dependency amongst objectives, this approach can assist the autoscaling process in efficiently produce globally-optimal benefit with reduced overhead. The novelty is that QoS and cost objectives of cloud-based services are dynamically clustered into independent regions where any objectives of a region are
independent to those of the other regions, as a result each region can be optimised locally.
In particular, we dynamically determine the level of region granularity on-the-fly. This mechanism is the key enabler of realising self-awareness for determining granularity of control. Here, self-awareness provide us with seamless and dynamic clustering of the regions for QoS and cost objectives. To the best of our knowledge, we are the first to consider dynamic granularity of control for autoscaling in the cloud, therefore the proposed approach in this chapter can be seen as a contribution to the fundamentals of elasticity in the cloud enabled by autoscaling. The experiment results reveal that our self-aware and self-adaptive approach is able to produce similar global benefit to the PM-level control, and better than cloud-level, VM-level and service-level controls. On the other hand, it produces smaller overhead than the cloud-level and the PM-level controls; and could be similar to that of the service-level and the VM-level ones. In particular, the achieved global benefit and overhead in our approach tends to be better when it is possible to have more independent regions.
6.2 Problem Analysis and Models
We adopt the same cloud system model, assumptions and the generic QoS model as de-scribed in Chapter 4. In addition, we do not consider global resources contention caused by shortage in cloud capacity; our approach works for cases where software and hard-ware resources tend to be available, which is normal in a cloud environment. Henceforth, we assume that the maximum demand of software and hardware resources for all cloud service-instances (e.g., according to their budget) should be satisfied by the capability of the cloud provider. Under such assumption, we eliminate extreme cases where the ca-pacity of cloud provider reaches its limits causing likely global resources contention. This is because the increasing demand of each service-instance would eventually be satisfied by scale up/out as long as the cost does not exceed the budget. We believe this is a
reasonable assumption as in realistic scenarios, proper admission control can be applied to restrict the number of cloud-based service-instances. Moreover, in case where the cloud provider actually encounters capacity shortage, the unsatisfied services can be switched to an alternative provider via a cloud selection mechanism, which presumably hold our assumption. However, the design of admission control and selection mechanism is outside the scope of this thesis.