본문 바로가기

Nutanix

Acropolis Dynamic Scheduling (ADS) - Nutanix Lazen Service

반응형

이번 포스팅에서는 Nutanix Acropolis에서 기본으로 제공하고있는 Acropolis Dynamic Scheduling(ADS) 서비스에 대한 설명을 하려고 합니다.

 

ADS(Acropolis Dynamic Scheduling)는 일정 기간 동안 클러스터에 컴퓨팅 및 스토리지 I/O 경합 또는 핫스팟이 있는지 사전 예방적으로 모니터링합니다. ADS가 문제를 감지하면 ADS는 VM을 한 호스트에서 다른 호스트로 마이그레이션하여 클러스터의 핫스팟을 제거하는 마이그레이션 계획을 생성합니다.

 

Nutanix Lazen은 ADS를 담당하는 서비스입니다. 즉, ADS는 기능의 이름이고, 이 기능을 수행하는 CVM 컴포넌트의 이름은 Lazen 입니다.

 

그럼, Lazen이 어떤 방식으로 클러스터를 모니터링 하고, 핫스팟을 방지 또는 제거하는 기능을 수행하는지 알아보겠습니다. Nutanix Portal AHV Admin 가이드에 보면, ADS를 일으키는 트리거를 설명하는 부분에 다음과 같이 나와있습니다.

ADS monitors the following resources:
   VM CPU Utilization: Total CPU usage of each guest VM.Storage
   CPU Utilization: Storage controller (Stargate) CPU usage per VM or iSCSI targe

Lazen은 가상머신의 CPU사용량과 스토리지 사용량을 기반으로 클러스터의 핫스팟 발생여부를 판단합니다. 가상머신의 CPU 사용량을 직접 모니터링이 가능하고 스토리지 사용량은 각 가상머신 또는 iSCSI 타겟의 스토리지 컨트롤러(스타게이트) 서비스의 CPU 사용량을 모니터링 하여 그 사용량을 측정합니다.

  ** 스타게이트(Stargate)는 CVM 서비스중 하나로 Disk I/O를 직접 처리하는 컴포넌트

 

그렇다면 얼마동안 자원경합이나 핫스팟이 발생해야 Lazen이 ADS 기능을 수행할까? 하는 생각이 들 수 있습니다.

AHV Admin 가이드에 따르면 아래 내용과 같이 소개되고 있습니다.

When Is a Hotspot Detected?
  Lazan runs every 15 minutes and analyzes the resource usage for at least that period of time. If the resource utilization of an AHV host remains >85% for the span of 15 minutes, Lazan triggers migration tasks to remove the hotspot.
Note: For a storage hotspot, ADS looks at the last 40 minutes of data and uses a smoothing algorithm to use the most recent data. For a CPU hotspot, ADS looks at the last 10 minutes of data only, that is, the average CPU usage over the last 10 minutes.

Lazen의 모니터링은 기본적으로 매 15분마다 실행 되며, 사용률이 85%이상일 때 ADS 기능(핫스팟 제거 여부에 대한 트리거)을 작동시킬지 판단을 하게 됩니다. 다만, 실행 될 때마다 ADS 기능을 작동시키는 것은 아니고, 다양한 정책에 따라 작동여부를 판단하게 됩니다. 마이그레이션 정책은 기존 설정된 HA 정책 및 Host Affinity / Anti Affinity 정책을 우선시 합니다.

 

기본적으로, Lazen은 이 리소스를 마이그레이션 시켰을 때, 클러스터 전체적으로 성능에 이득이 있을 때 마이그레이션을 작동 시킵니다. 분명한 핫스팟이 발생 하였으나, VM이 마이그레이션이 되지 않는 경우를 AHV Admin 가이드에서 다음 두가지 시나리오를 예로 들고있습니다.

 

시나리오 1. 핫스팟을 발생시킨 가상머신을 다른 호스트로 옮겨도 핫스팟이 해결되지 않는 경우(다른 곳으로 옮겨도 또 다른 핫스팟이 생기는 시나리오)

예를 들어, CPU 사용량이 큰 가상머신 한대가 있습니다. 이 가상머신은 CPU를 100% 사용하며, 이 경우 호스트 전체의 75%를 사용하게 됩니다. 다른 호스트는 최대 40%의 사용량으로 로드됩니다. 이 경우 다른 호스트도 경합을 일으키지 않고는 대형 VM을 수용할 수 없습니다. Lazan은 경합을 위해 한 호스트 또는 VM을 다른 호스트보다 우선시하지 않으므로 현재 호스팅된 VM을 그대로 둡니다.

 

시나리오 2. 클러스터 내 All-Flash 노드의 숫자가 복제계수보다 작을 경우

클러스터가 RF2 구성일 경우 모든 플래시 노드에서 VM을 성공적으로 마이그레이션하려면 클러스터에 최소 2개의 All-Flash 노드가 있어야 합니다.

 

가상 리소스의 워크로드를 어느정도 균등하게 배분(로드밸런싱)하여 자원경합을 막고, 성능을 유지하는일은 중요합니다. 이런 관점에서 ADS기능의 역할은 중요하게 보입니다. 이런 기능이 어느 조건에서 어떻게 동작하는지 알아야, 운영하는 입장에서 더 효율적인 클러스터를 관리할 수 있을 것이라고 생각합니다. 이번 포스팅이 도움이 되기를 바랍니다.

 

감사합니다.

 

[참고자료] Nutanix Support - AHV Administration Guide

반응형