Modern cloud orchestrators like Kubernetes provide a versatile and robust way to host applications at scale. One of their key features is autoscaling, which automatically adjusts cloud resources (compute, memory, storage) in order to adapt to the demands of applications. However, the scope of cloud autoscaling is limited to the datacenter hosting the cloud and it doesn't apply uniformly to the allocation of network resources. In I/O-constrained or data-in-motion use cases this can lead to severe performance degradation for the application. For example, when the load on a cloud service increases and the Wide Area Network (WAN) connecting the datacenter to the Internet becomes saturated, the application flows experience an increase in delay and loss. In many cases this is dealt with overprovisioning network capacity, which introduces additional costs and inefficiencies. On the other hand, thanks to the concept of "Network as Code", the WAN exposes a set of APIs that can be used to dynamically allocate and de-allocate capacity on-demand. In this paper we propose extending the concept of cloud autoscaling into the network to address this limitation. This way, applications running in the cloud can communicate their networking requirements, like bandwidth or traffic profile, to a Software-Defined Networking (SDN) controller or Network as a Service (NaaS) platform. Moreover, we aim to define the concepts of vertical and horizontal autoscaling applied to networking. We present a prototype that automatically allocates bandwidth to the underlay network, according to the requirements of the applications hosted in Kubernetes. Finally, we discuss open research challenges.
翻译:Kubernetes 等现代云管设计器提供了一种多功能和稳健的方式, 用于在规模上托管应用程序。 例如, 其关键特征之一是自动升级, 自动调整云层资源( 计算、 内存、 存储), 以适应应用程序的需求。 但是, 云层自动扩缩的范围仅限于接收云层的数据中心, 并且不统一适用于网络资源的分配。 在 I/ O- Contract 或数据移动使用中, 这可能导致应用程序的性能严重退化。 例如, 当云服务负荷增加和将数据中心连接到互联网的广域网( WAN) 变得饱和时, 应用程序会经历延迟和损失的增加。 然而, 云层自动扩缩的范围仅限于存储网络能力, 这增加了成本和效率。 另一方面, 由于“ Network ” 的概念, 广域网会暴露一套可用于动态地分配和去分配应用程序的功能。 在本文中, 我们提议将云层应用的云层自动缩放概念扩展到网络的网络, 从而将网络的网络定位定位定位 。