지연 없음 네트워크 지연에 기반한 애플리케이션 성능 인식 클러스터 스케줄링

읽는 시간: 4 분
...

📝 원문 정보

- Title: No Delay Latency-Driven, Application Performance-Aware, Cluster Scheduling
- ArXiv ID: 1903.07114
- 발행일: 2019-08-20
- 저자: Diana Andreea Popescu and Andrew W. Moore

📝 초록

데이터 센터에서 관찰되는 네트워크 지연의 변동성으로 인해 애플리케이션의 성능은 데이터 센터 내에서의 위치에 의해 결정됩니다. 우리는 NoMora라는 클러스터 스케줄링 아키텍처를 제시합니다. 이 아키텍처의 핵심은 네트워크 지연을 기반으로 한, 애플리케이션 성능을 고려하는 클러스터 스케줄링 정책입니다. 이 정책은 데이터 센터 내에서 호스트 간 측정된 네트워크 지연에 근거한 예상 성능을 반영하여 애플리케이션의 작업을 배치합니다. 또한, 테넌트의 애플리케이션이 높은 네트워크 지연으로 인해 성능이 저하되면 더 나은 위치로 이동시킬 수 있습니다. 초기 결과는 우리의 정책이 전체 평균 애플리케이션 성능을 최대 13.4% 향상시키며, 사전 중단(preemption)이 활성화된 경우 최대 42%까지 향상시킬 수 있음을 보여줍니다. 이는 Google 클러스터 작업 부하에 대해 무작위 정책에 비해 작업 배치 지연을 1.79배로, 중앙값 알고리즘 실행 시간을 1.16배로 개선했습니다. 이는 애플리케이션 성능을 향상시키기 위해 네트워크 지연과 애플리케이션 성능 간의 관계를 활용하고 데이터 센터에서의 현재 네트워크 상태를 고려하면서, 저지연 클러스터 스케줄링의 요구사항을 충족시키는 것을 보여줍니다.

💡 논문 해설

**핵심 요약**: 이 논문은 애플리케이션 성능과 네트워크 지연 간의 관계를 활용하여 클러스터 내에서 애플리케이션을 최적 위치에 배치하는 방법을 제시합니다. 이를 통해 데이터 센터 내부의 네트워크 상태를 고려한 성능 향상을 달성하고자 합니다.

문제 제기: 클라우드 환경에서 애플리케이션의 성능은 여러 요인에 의해 영향을 받습니다. 그중 하나가 바로 네트워크 지연입니다. 데이터 센터 내부에서는 다양한 위치에 따라 네트워크 지연이 달라지는데, 이는 애플리케이션이 실행되는 성능에도 직접적인 영향을 미칩니다. 따라서 클러스터 스케줄링 시스템은 이러한 변화를 고려해 애플리케이션을 최적 위치에 배치해야 합니다.

해결 방안 (핵심 기술): NoMora라는 정책은 네트워크 지연과 애플리케이션 성능 간의 관계를 분석하고 이를 바탕으로 클러스터 내에서 애플리케이션을 최적 위치에 배치합니다. 이는 두 가지 주요 단계로 구성됩니다:

  1. 네트워크 지연 측정: 데이터 센터 내부의 호스트 간 네트워크 지연을 측정하고 이를 기반으로 애플리케이션 성능 예측 모델을 구축합니다.
  2. 애플리케이션 배치 결정: 이 예측 모델과 실제 네트워크 상태를 바탕으로 애플리케이션의 최적 위치를 결정하고, 필요시 애플리케이션을 다른 위치로 이동시킵니다.

주요 성과: NoMora 정책은 전체 평균 애플리케이션 성능을 최대 13.4% 향상시키며, 사전 중단(preemption)이 활성화된 경우 최대 42%까지 향상시킬 수 있음을 보여줍니다. 이는 Google 클러스터 작업 부하에 대해 무작위 정책에 비해 작업 배치 지연을 1.79배로, 중앙값 알고리즘 실행 시간을 1.16배로 개선했습니다.

의의 및 활용: NoMora 정책은 애플리케이션 성능 향상과 클러스터 내에서 네트워크 상태를 고려한 최적 배치를 달성하는 데 중요한 역할을 합니다. 이를 통해 클라우드 환경에서 더 효율적인 리소스 관리를 가능하게 하며, 특히 네트워크 지연이 애플리케이션 성능에 큰 영향을 미치는 상황에서는 더욱 효과적입니다.

📄 논문 발췌 (ArXiv Source)

## 동기

우리는 한 VM에서 Memcached 서버를 실행하고, 다른 5개의 VM에서 네 개의 클라이언트를 실행하는 실험을 수행했습니다. 이 클라이언트들은 Microsoft Azure에서 제공되는 Mutilate 벤치마크를 사용하여 일정 기간 동안 서버에 요청을 보냅니다. 우리는 벤치마크가 보고한 초당 요청 수를 측정합니다. 같은 설정(동일한 호스트 사양 및 소프트웨어)으로 10번의 실험을 수행했지만, 세 가지 다른 환경에서 수행했습니다. VM은 Korea South 존(KS), 그리고 일요일 저녁에 네트워크가 덜 이용되는 영국 남부 존(United Kingdom South)에서 배포되었습니다.

[[IMG_PROTECT_1]]

세 가지 경우의 성능이 상이하며, 같은 존 내에서도 성능 차이를 확인할 수 있습니다. 두 번째 시나리오에서는 최대 성능의 80% 미만을 달성했으며, 첫 번째 시나리오에서는 전체 성능의 약 50%만 달성했습니다. 이는 애플리케이션 배치 위치와 데이터 센터 내의 현재 네트워크 상태에 따라 성능 차이가 발생함을 의미합니다.

다른 실험에서, 우리는 네트워크 지연이 VM 간 일정하지 않다는 것을 확인했습니다. 2019년 1월 27일 주 동안 수행된 실험에서는 Round-Trip Time (RTT)을 여러 시간(1천만 측정치)에 걸쳐 측정하였습니다. 이는 GCP에서 대여한 두 개의 기본 유형 VM 간에 UDP 프로브를 사용하여 수행되었습니다.

[[IMG_PROTECT_2]]

애플리케이션 성능 예측

실험 데이터 획득

네트워크 지연과 애플리케이션 성능 사이의 관계를 결정하기 위해, 우리는 이전에 설명한 방법론을 사용했습니다. 네트워크 시스템에 일정량의 지연을 주입하고, 네트워크 지연이 얼마나 증가되었는지에 따라 애플리케이션 성능이 어떻게 변화하는지를 측정하였습니다. 실험용 테스트베드는 이전 논문에서 설명한 것과 동일합니다.

각 호스트에는 Intel Xeon E5-2430L v2 Ivy Bridge CPU가 장착되어 있으며, 6개의 코어와 2.4GHz 속도로 작동하며 64GB RAM을 갖추고 있습니다. 또한 Intel X520 NIC이 장착되어 있어 SFP+ 포트 두 개를 통해 Arista 7050Q 스위치를 통해 $`10`$Gbps로 연결됩니다. 호스트는 Ubuntu Server 16.04, 커널 버전 4.4.0-75-generic을 실행합니다.

각 애플리케이션에는 특정 성능 지표가 있습니다(표 [tab:app-settings] 참조). 우리는 먼저 각 작업에 대한 최적의 성능을 결정하기 위해 기본 성능을 측정하였습니다. 이후, 서버 또는 애플리케이션의 주요 구성 요소가 실행되는 호스트와 클라이언트 또는 애플리케이션의 워커가 실행되는 다른 호스트 간에 일방향으로 $`1\mu`$s에서 $`500\mu`$s 사이의 값을 스윕하면서 일정량의 지연을 주입했습니다. 따라서 총 지연 값은 $`2\mu`$s에서 $`1000\mu`$s까지입니다.

[[IMG_PROTECT_3]]

성능 모델링

우리는 애플리케이션 성능이 네트워크 지연에 의존하는 함수를 각 애플리케이션별로 작성합니다. SciPy의 curve_fit 함수를 사용하여 실험 데이터와 함수 p 간의 관계를 모델링합니다. curve_fit은 파라미터의 최적 값을 반환하여 $`\mathit{p}(x\_data, parameters) - y\_data`$의 제곱 오차 합을 최소화하도록 합니다.

MATH
\begin{equation}
Normalised\_performance = \mathit{p}(static\_latency)
\end{equation}
클릭하여 더 보기

키-값 저장소: Memcached

Memcached는 임시 메모리에 다양한 데이터를 저장하는 널리 사용되는 키-밸류 스토어입니다. 클라이언트들은 네트워크를 통해 멀티테이트 서버에 저장된 데이터에 접근할 수 있습니다.

[[IMG_PROTECT_4]]

머신 러닝 애플리케이션

STRADS Lasso 회귀

STRADS는 중간 크기의 클러스터 사이즈(1에서 100개 기계)를 대상으로 하는 분산형 머신 러닝 프레임워크입니다. 우리는 네트워크 지연이 이 프레임워크 내에서 구현된 Lasso 회귀 애플리케이션에 미치는 영향을 조사했습니다.

[[IMG_PROTECT_5]]

TensorFlow

TensorFlow는 고성능 머신 러닝 애플리케이션을 위한 오픈 소스 프레임워크입니다. 우리는 TensorFlow의 성능 예측 모델을 구축하고, 이를 NoMora 정책에 통합했습니다.

[[IMG_PROTECT_6]]


📊 논문 시각자료 (Figures)

Figure 1



Figure 2



Figure 3



Figure 4



Figure 5



Figure 6



Figure 7



Figure 8



Figure 9



Figure 10



Figure 11



Figure 12



Figure 13



Figure 14



Figure 15



감사의 말씀

이 글의 저작권은 연구하신 과학자분들께 있으며, 인류 문명 발전에 공헌해주신 노고에 감사를 드립니다.

검색 시작

검색어를 입력하세요

↑↓
ESC
⌘K 단축키