Multi-cloud computing has become increasingly popular with enterprises looking to avoid vendor lock-in. While most cloud providers offer similar functionality, they may differ significantly in terms of performance and/or cost. A customer looking to benefit from such differences will naturally want to solve the multi-cloud configuration problem: given a workload, which cloud provider should be chosen and how should its nodes be configured in order to minimize runtime or cost? In this work, we consider solutions to this optimization problem. We develop and evaluate possible adaptations of state-of-the-art cloud configuration solutions to the multi-cloud domain. Furthermore, we identify an analogy between multi-cloud configuration and the selection-configuration problems commonly studied in the automated machine learning (AutoML) field. Inspired by this connection, we utilize popular optimizers from AutoML to solve multi-cloud configuration. Finally, we propose a new algorithm for solving multi-cloud configuration, CloudBandit (CB). It treats the outer problem of cloud provider selection as a best-arm identification problem, in which each arm pull corresponds to running an arbitrary black-box optimizer on the inner problem of node configuration. Our experiments indicate that (a) many state-of-the-art cloud configuration solutions can be adapted to multi-cloud, with best results obtained for adaptations which utilize the hierarchical structure of the multi-cloud configuration domain, (b) hierarchical methods from AutoML can be used for the multi-cloud configuration task and can outperform state-of-the-art cloud configuration solutions and (c) CB achieves competitive or lower regret relative to other tested algorithms, whilst also identifying configurations that have 65% lower median cost and 20% lower median time in production, compared to choosing a random provider and configuration.
翻译:多云计算在企业中越来越受欢迎,企业希望避免供应商锁定。虽然大多数云端供应商提供类似的功能,但它们在性能和(或)成本方面可能差异很大。希望从这些差异中受益的客户自然希望解决多球配置问题:鉴于工作量,应当选择云端供应商,以及如何配置节点,以最大限度地减少运行时间或成本?在这项工作中,我们考虑优化问题的解决方案。我们开发并评价最先进的云层配置解决方案对多球域的可能调整。此外,我们确定多球型配置和在自动机器学习(AutomilML)字段中通常研究的筛选配置和选择配置问题之间的类比。受此连接的启发,我们利用来自Automlor的流行优化工具来解决多球配置问题。最后,我们提出了解决多球式配置的新算法,CloudbBanditit(CBBB) 。我们把云端供应商选择的外部问题作为最佳的识别中位值,每个臂拉近于运行一个任意的黑箱优化配置配置,在内部结构(Autload)的轨道配置中,可以使用多球型配置中选择一个最高级配置的结果。 我们的实验显示,可以使用多球度配置中,可以使用一个对多个配置进行最低的计算方法。