Cost Minimization in Multi-cloud Systems with Runtime Microservice Re-orchestration

2401.01408

YC

0

Reddit

0

Published 5/9/2024 by Marco Zambianco, Silvio Cretti, Domenico Siracusa
Cost Minimization in Multi-cloud Systems with Runtime Microservice Re-orchestration

Abstract

Multi-cloud systems facilitate a cost-efficient and geographically-distributed deployment of microservice-based applications by temporary leasing virtual nodes with diverse pricing models. To preserve the cost-efficiency of multi-cloud deployments, it is essential to redeploy microservices onto the available nodes according to a dynamic resource configuration, which is often performed to better accommodate workload variations. However, this approach leads to frequent service disruption since applications are continuously shutdown and redeployed in order to apply the new resource assignment. To overcome this issue, we propose a re-orchestration scheme that migrates microservice at runtime based on a rolling update scheduling logic. Specifically, we propose an integer linear optimization problem that minimizes the cost associated to multi-cloud virtual nodes and that ensures that delay-sensitive microservices are co-located on the same regional cluster. The resulting rescheduling order guarantees no service disruption by repacking microservices between the available nodes without the need to turn off the outdated microservice instance before redeploying the updated version. In addition, we propose a two-step heuristic scheme that effectively approximates the optimal solution at the expense of close-to-zero service disruption and QoS violation probability. Results show that proposed schemes achieve better performance in terms of cost mitigation, low service disruption and low QoS violation probability compared to baseline schemes replicating Kubernetes scheduler functionalities.

Create account to get full access

or

If you already have an account, we'll log you in

Overview

  • This paper proposes a cost minimization approach for managing microservices across multiple cloud providers.
  • The key idea is to dynamically re-orchestrate microservices at runtime to optimize resource allocation and reduce costs.
  • The authors develop an optimization model and heuristic algorithms to find the most cost-effective deployment of microservices.
  • Experiments show the approach can significantly reduce costs compared to static resource allocation.

Plain English Explanation

Businesses often use a mix of cloud services from different providers to run their applications. This can be complex to manage, as they need to decide how to allocate their computing resources across the various clouds to minimize costs.

The researchers in this paper tackle this challenge by focusing on microservices - small, modular software components that can be deployed and scaled independently. They develop a system that can automatically re-arrange, or "re-orchestrate," these microservices at runtime to find the most cost-effective deployment across the available cloud resources.

The core of their approach is an optimization model that considers factors like resource prices, service requirements, and performance constraints to determine the optimal placement of each microservice. They also design heuristic algorithms to quickly solve this optimization problem, rather than relying on slow, brute-force methods.

Through experiments, the researchers show that their dynamic re-orchestration system can significantly reduce the total costs of running a microservices-based application, compared to more static resource allocation approaches. This could help businesses better manage their cloud computing bills and infrastructure.

Technical Explanation

The paper presents a framework for cost minimization in multi-cloud microservices environments. The key innovation is the ability to dynamically re-orchestrate microservices at runtime to optimize resource allocation and reduce overall costs.

The authors develop an optimization model that considers factors like resource prices, service requirements, and performance constraints to determine the most cost-effective placement of each microservice across the available cloud providers. They also design heuristic algorithms to efficiently solve this optimization problem, rather than relying on computationally expensive exact solvers.

The optimization model formulation and heuristic algorithms are detailed in the paper, drawing on concepts from resource-aware deployment of dynamic DNNs, scheduling distributed applications, and optimal allocation of tasks.

The researchers evaluate their approach through extensive experiments, demonstrating significant cost savings compared to static resource allocation strategies. This builds on related work in when computing follows vehicles and online network resource allocation.

Critical Analysis

The paper presents a well-designed and thoroughly evaluated approach for cost optimization in multi-cloud microservices environments. However, a few potential limitations and areas for further research are worth noting:

  1. Real-world Applicability: The experiments are conducted on simulated workloads, and the authors acknowledge the need to validate the approach on real-world, production-scale microservices deployments.

  2. Dynamic Workload Assumptions: The model assumes that microservice resource requirements are known in advance or can be accurately predicted. In practice, workloads may be more volatile, requiring the system to adapt to changing demands in real-time.

  3. Heterogeneous Cloud Environments: The current framework focuses on homogeneous cloud resources within each provider. Extending the model to handle more diverse cloud offerings, such as specialized hardware or spot instances, could further improve cost savings.

  4. Multi-objective Optimization: While the primary focus is on cost minimization, other important metrics like application performance, reliability, or energy efficiency could be incorporated into a more comprehensive optimization framework.

Conclusion

This paper presents an innovative approach for dynamically re-orchestrating microservices across multi-cloud environments to minimize costs. The optimization-based framework and heuristic algorithms developed by the researchers demonstrate the potential to significantly reduce the computing expenses of businesses running microservices-based applications.

As cloud computing continues to grow in importance, tools that can intelligently manage resources and costs across multiple providers will become increasingly valuable. The techniques discussed in this paper represent an important step forward in this direction, with opportunities for further refinement and real-world deployment.



This summary was produced with help from an AI and may contain inaccuracies - check out the links to read the original source documents!

Related Papers

🌀

Cost-Optimal Microservices Deployment with Cluster Autoscaling and Spot Pricing

Dasith Edirisinghe, Kavinda Rajapakse, Pasindu Abeysinghe, Sunimal Rathnayake

YC

0

Reddit

0

Microservices architecture has been established as an ideal software architecture for cloud-based software development and deployment, offering many benefits such as agility and efficiency. Microservices are often associated with containers and container orchestration systems for deployment, as containerization provides convenient tools and techniques for resource management, including the automation of orchestration processes. Among the factors that make the cloud suitable for commercial software deployment, transient pricing options like AWS Spot Pricing are particularly attractive as they allow consumers to significantly reduce cloud costs. However, the dynamic nature of resource demand and the abrupt termination of spot VMs make transient pricing challenging. Nonetheless, containerization and container orchestration systems open new avenues to optimize the cost of microservices deployments by leveraging spot pricing on the public cloud while achieving application and business goals. We propose SpotKube, an open-source, Kubernetes-based, application-aware, genetic algorithm-based solution for cost optimization, which autoscales clusters for microservices-based applications hosted on public clouds with spot pricing options. SpotKube analyzes application characteristics and recommends the optimal configuration for resource allocation to the cluster. It consists of an elastic cluster autoscaler powered by an optimization algorithm that ensures cost-effective microservices deployment while meeting application performance requirements and handling abrupt termination of nodes, thereby minimizing the impact on system availability. We implement and evaluate SpotKube with representative microservices-based applications in a real public cloud setup, demonstrating the effectiveness of our approach against alternative optimization strategies.

Read more

5/22/2024

Collaborative Resource Management and Workloads Scheduling in Cloud-Assisted Mobile Edge Computing across Timescales

Collaborative Resource Management and Workloads Scheduling in Cloud-Assisted Mobile Edge Computing across Timescales

Lujie Tang, Minxian Xu, Chengzhong Xu, Kejiang Ye

YC

0

Reddit

0

Due to the limited resource capacity of edge servers and the high purchase costs of edge resources, service providers are facing the new challenge of how to take full advantage of the constrained edge resources for Internet of Things (IoT) service hosting and task scheduling to maximize system performance. In this paper, we study the joint optimization problem on service placement, resource provisioning, and workloads scheduling under resource and budget constraints, which is formulated as a mixed integer non-linear programming problem. Given that the frequent service placement and resource provisioning will significantly increase system configuration costs and instability, we propose a two-timescale framework for resource management and workloads scheduling, named RMWS. RMWS consists of a Gibbs sampling algorithm and an alternating minimization algorithm to determine the service placement and resource provisioning on large timescales. And a sub-gradient descent method has been designed to solve the workload scheduling challenge on small timescales.We conduct comprehensive experiments under different parameter settings. The RMWS consistently ensures a minimum 10% performance enhancement compared to other algorithms, showcasing its superiority. Theoretical proofs are also provided accordingly.

Read more

6/3/2024

Network-Aware Reliability Modeling and Optimization for Microservice Placement

Network-Aware Reliability Modeling and Optimization for Microservice Placement

Fangyu Zhang, Yuang Chen, Hancheng Lu, Yongsheng Huang

YC

0

Reddit

0

Optimizing microservice placement to enhance the reliability of services is crucial for improving the service level of microservice architecture-based mobile networks and Internet of Things (IoT) networks. Despite extensive research on service reliability, the impact of network load and routing on service reliability remains understudied, leading to suboptimal models and unsatisfactory performance. To address this issue, we propose a novel network-aware service reliability model that effectively captures the correlation between network state changes and reliability. Based on this model, we formulate the microservice placement problem as an integer nonlinear programming problem, aiming to maximize service reliability. Subsequently, a service reliability-aware placement (SRP) algorithm is proposed to solve the problem efficiently. To reduce bandwidth consumption, we further discuss the microservice placement problem with the shared backup path mechanism and propose a placement algorithm based on the SRP algorithm using shared path reliability calculation, known as the SRP-S algorithm. Extensive simulations demonstrate that the SRP algorithm reduces service failures by up to 29% compared to the benchmark algorithms. By introducing the shared backup path mechanism, the SRP-S algorithm reduces bandwidth consumption by up to 62% compared to the SRP algorithm with the fully protected path mechanism. It also reduces service failures by up to 21% compared to the SRP algorithm with the shared backup mechanism.

Read more

5/29/2024

When `Computing follows Vehicles': Decentralized Mobility-Aware Resource Allocation in the Edge-to-Cloud Continuum

When `Computing follows Vehicles': Decentralized Mobility-Aware Resource Allocation in the Edge-to-Cloud Continuum

Zeinab Nezami, Emmanouil Chaniotakis, Evangelos Pournaras

YC

0

Reddit

0

The transformation of smart mobility is unprecedented--Autonomous, shared and electric connected vehicles, along with the urgent need to meet ambitious net-zero targets by shifting to low-carbon transport modalities result in new traffic patterns and requirements for real-time computation at large-scale, for instance, augmented reality applications. The cloud computing paradigm can neither respond to such low-latency requirements nor adapt resource allocation to such dynamic spatio-temporal service requests. This paper addresses this grand challenge by introducing a novel decentralized optimization framework for mobility-aware edge-to-cloud resource allocation, service offloading, provisioning and load-balancing. In contrast to related work, this framework comes with superior efficiency and cost-effectiveness under evaluation in real-world traffic settings and mobility datasets. This breakthrough capability of 'computing follows vehicles' proves able to reduce utilization variance by more than 40 times, while preventing service deadline violations by 14%-34%.

Read more

5/7/2024