| Literature DB >> 35458853 |
Quang-Minh Nguyen1, Linh-An Phan1, Taehong Kim1.
Abstract
Kubernetes (K8s) is expected to be a key container orchestration tool for edge computing infrastructures owing to its various features for supporting container deployment and dynamic resource management. For example, its horizontal pod autoscaling feature provides service availability and scalability by increasing the number of replicas. kube-proxy provides traffic load-balancing between replicas by distributing client requests equally to all pods (replicas) of an application in a K8s cluster. However, this approach can result in long delays when requests are forwarded to remote workers, especially in edge computing environments where worker nodes are geographically dispersed. Moreover, if the receiving worker is overloaded, the request-processing delay can increase significantly. To overcome these limitations, this paper proposes an enhanced load balancer called resource adaptive proxy (RAP). RAP periodically monitors the resource status of each pod and the network status among worker nodes to aid in load-balancing decisions. Furthermore, it preferentially handles requests locally to the maximum extent possible. If the local worker node is overloaded, RAP forwards its requests to the best node in the cluster while considering resource availability. Our experimental results demonstrated that RAP could significantly improve throughput and reduce request latency compared with the default load-balancing mechanism of K8s.Entities:
Keywords: Kubernetes; containerization; edge computing; kube-proxy; load-balancing; metric-server; microservice
Mesh:
Year: 2022 PMID: 35458853 PMCID: PMC9030099 DOI: 10.3390/s22082869
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.847
Figure 1Kubernetes architecture.
Figure 2Load-balancing algorithms of the default kube-proxy and RAP: (a) round-robin, (b) random, and (c) RAP.
Figure 3Load-balancing algorithms of (a) userspace and (b) RAP in K8s-based edge computing architecture.
Key notation.
| Notation | Description |
|---|---|
|
| Application deployed in edge computing |
|
| Resource parameter including CPU, RAM, and latency |
|
| Set of remote workers |
|
| Individual remote worker, where |
|
| Resource |
|
| Individual denominator of resource |
|
| Weight factor of resource |
|
| Score of each worker node |
|
| Score of the best worker node |
Figure 4Architecture of RAP in an edge computing environment.
Figure 5Effect of threshold on cluster performance.
Figure 6Cluster performance according to the network delay between workers: (a) throughput and (b) latency.
Ratio type.
| Test Cases | Requests | Note | Ratio |
|---|---|---|---|
| 1–6 | Concentrated requests | [1, 2, 4, 8, 16, 32]:0:0:0 | |
| 7 | Distributed | Balance | 2:2:2:2 |
| 8 | 4:4:4:4 | ||
| 9 | 8:8:8:8 | ||
| 10 | 16:16:16:16 | ||
| 11 | Imbalance | 8:4:4:4 | |
| 12 | 16:4:4:4 | ||
| 13 | 32:4:4:4 | ||
| 14 | Equal total | 32:2:1:1 | |
| 15 | 16:8:8:4 | ||
| 16 | 12:8:8:8 | ||
Figure 7Effect of centralization requests on the cluster performance: (a) throughput, (b) latency, and (c) application resources.
Figure 8Total throughput of cluster in the distributed request experiment.