Azure Virtual Machine Scale Set는 애플리케이션을 실행하는 가상 머신의 수를 늘리거나 줄일 수 있습니다. 인스턴스 수는 다음과 같은 여러 가지 방법으로 업데이트할 수 있습니다.
- 확장 집합 용량 수동 증가 또는 감소
- 설정된 일정에 따라
- 메트릭 임계값을 기반으로 하는 규칙에 따라
- 자동으로 예측 인공지능이 발견한 사용 패턴에 따라
이 자동화된 탄력적 동작은 관리 오버헤드를 줄여 애플리케이션의 성능을 모니터링하고 최적화합니다. 이 문서에서는 사용 가능한 성능 메트릭과 자동 크기 조정이 수행할 수 있는 작업에 대한 개요를 제공합니다.
비고
자동 크기 조정을 사용하려면 확장 집합이 추가할 인스턴스의 구성을 정의하는 가상 머신 크기 조정 프로필로 정의되어야 합니다. Virtual Machine 크기 조정 프로필에 대해 자세히 알아봅니다.
수동 크기 조정
속성을 sku.capacity 업데이트하여 가상 머신 확장 집합에서 인스턴스 수를 수동으로 늘리거나 줄일 수 있습니다.
- 기존 가상 머신 확장 집합으로 이동합니다.
- 설정에서 크기 조정 탭을 선택합니다.
- 수동 배율을 선택하지 않은 경우 선택합니다.
- 인스턴스 수를 업데이트합니다.
- 저장 단추를 누릅니다.
자동 크기 조정의 이점
애플리케이션 수요가 증가하면 확장 집합의 가상 머신에 대한 부하가 증가합니다. 이 증가된 부하가 간단한 요구가 아니라 일관된 경우 확장 집합의 가상 머신 수를 늘리고 줄이도록 자동 크기 조정 규칙을 구성할 수 있습니다.
비고
확장 집합에 대해 자동 인스턴스 복구를 사용하는 경우 확장 집합의 최대 인스턴스 수는 1,000개일 수 있습니다. 자동 인스턴스 복구에 대해 자세히 알아봅니다.
이러한 가상 머신이 만들어지고 애플리케이션이 배포되면 확장 집합이 부하 분산 장치를 통해 트래픽을 분산하기 시작합니다. CPU 또는 메모리와 같이 모니터링할 메트릭, 애플리케이션 로드가 지정된 임계값을 충족해야 하는 기간 및 확장 집합에 추가할 가상 머신 수를 제어합니다.
저녁이나 주말에는 애플리케이션 수요가 줄어들 수 있습니다. 이 감소된 부하가 일정 기간 동안 일관된 경우 확장 집합의 가상 머신 수를 줄이도록 자동 크기 조정 규칙을 구성할 수 있습니다. 이 규모 감축 작업은 현재 수요를 충족하는 데 필요한 수의 인스턴스만 실행하므로 확장 집합의 실행 비용을 줄입니다.
호스트 기반 메트릭 사용
가상 머신에서 사용할 수 있는 호스트 메트릭을 기본 제공하는 자동 크기 조정 규칙을 만들 수 있습니다. 호스트 메트릭을 사용하면 더 많은 에이전트 및 데이터 컬렉션을 설치하거나 구성할 필요 없이 확장 집합에서 가상 머신의 성능을 확인할 수 있습니다. 이러한 메트릭을 사용하는 자동 크기 조정 규칙은 CPU 사용량, 메모리 수요 또는 디스크 액세스에 대한 응답으로 가상 머신의 수를 확장하거나 확장할 수 있습니다.
호스트 기반 메트릭을 사용하는 자동 크기 조정 규칙은 다음 도구 중 하나를 사용하여 만들 수 있습니다.
더 자세한 성능 메트릭을 사용하는 자동 크기 조정 규칙을 만들려면 가상 머신에 Azure 진단 확장을 설치 및 구성 하거나 App Insights를 사용하여 애플리케이션을 구성할 수 있습니다.
호스트 기반 메트릭, Azure 진단 확장을 사용하는 게스트 내 가상 머신 메트릭 및 App Insights를 사용하는 자동 크기 조정 규칙은 다음 구성 설정을 사용할 수 있습니다.
메트릭 원본
자동 크기 조정 규칙은 다음 원본 중 하나의 메트릭을 사용할 수 있습니다.
| 메트릭 원본 | 사용 사례 |
|---|---|
| 현재 확장 집합 | 더 많은 에이전트를 설치하거나 구성할 필요가 없는 호스트 기반 메트릭의 경우 |
| 스토리지 계정 | Azure 진단 확장은 성능 메트릭을 Azure Storage에 쓴 다음, 자동 크기 조정 규칙을 트리거하는 데 사용됩니다. |
| Service Bus 큐 | 애플리케이션 또는 다른 구성 요소는 Azure Service Bus 큐에서 메시지를 전송하여 규칙을 트리거할 수 있습니다. |
| Application Insights (애플리케이션 인사이트) | 앱에서 직접 메트릭을 스트리밍하는 애플리케이션에 설치된 계측 패키지입니다. |
자동 크기 조정 규칙 조건
자동 크기 조정 규칙을 만들 때 사용할 수 있는 호스트 기반 메트릭은 다음과 같습니다. Azure 진단 확장 또는 App Insights를 사용하는 경우 자동 크기 조정 규칙에서 모니터링하고 사용할 메트릭을 정의합니다.
| 지표 이름 |
|---|
| CPU 사용률 |
| 네트워크 인 |
| 네트워크 아웃 |
| 디스크 읽기 바이트 |
| 디스크 쓰기 바이트 |
| 디스크 읽기 작업/초 |
| 디스크 쓰기 작업/초 |
| 남은 CPU 크레딧 |
| 사용된 CPU 크레딧 |
지정된 메트릭을 모니터링하는 자동 크기 조정 규칙을 만들 때 규칙은 다음 메트릭 집계 작업 중 하나를 살펴봅니다.
- 평균
- 최소
- 최대
- 총계
- 마지막
- 수량
그런 다음, 다음 연산자 중 하나를 사용하여 정의된 임계값과 메트릭을 비교할 때 자동 크기 조정 규칙이 트리거됩니다.
- 초과
- 보다 크거나 같음
- 보다 작음
- 작거나 같음
- 같음
- 같지 않음
규칙이 트리거되는 경우의 작업
자동 크기 조정 규칙이 트리거되면 확장 집합은 다음 방법 중 하나로 자동으로 확장할 수 있습니다.
| 크기 조정 작업 | 사용 사례 |
|---|---|
| 다음을 기준으로 개수 늘이기 | 만들 가상 머신의 고정 수입니다. 적은 수의 가상 머신을 사용하는 확장 집합에 유용합니다. |
| 다음을 기준으로 백분율 늘이기 | 가상 머신의 백분율 기반 증가입니다. 고정된 증가로 성능이 크게 향상되지 않을 수 있는 대규모 확장 집합에 적합합니다. |
| 다음으로 개수 늘이기 | 원하는 최대 용량에 도달하는 데 필요한 만큼의 가상 머신을 만듭니다. |
| 다음을 기준으로 개수 줄이기 | 제거할 고정된 수의 가상 머신입니다. 적은 수의 가상 머신을 사용하는 확장 집합에 유용합니다. |
| 퍼센트를 감소시키기 | 가상 머신의 백분율 기반 감소입니다. 고정된 감소로 리소스 소비 및 비용이 눈에 띄게 감소하지 않을 수 있는 대규모 확장 집합에 적합합니다. |
| 다음으로 개수 줄이기 | 원하는 최소 용량에 도달하려면 필요한 만큼의 가상 머신을 제거합니다. |
Azure 진단 확장을 사용하는 게스트 내 가상 머신 메트릭
Azure 진단 확장은 가상 머신 내에서 실행되는 에이전트입니다. 에이전트는 성능 메트릭을 모니터링하고 Azure Storage에 저장합니다. 이러한 성능 메트릭에는 디스크의 AverageReadTime 또는 CPU용 PercentIdleTime 과 같은 가상 머신의 상태에 대한 자세한 정보가 포함되어 있습니다. CPU 사용량 또는 메모리 사용량의 비율뿐만 아니라 가상 머신 성능에 대한 보다 자세한 인식을 기반으로 자동 크기 조정 규칙을 만들 수 있습니다.
Azure 진단 확장을 사용하려면 가상 머신에 대한 Azure Storage 계정을 만들고, Azure 진단 에이전트를 설치한 다음, 특정 성능 카운터를 스토리지 계정으로 스트리밍하도록 가상 머신을 구성해야 합니다.
자세한 내용은 Linux 가상 머신 또는 Windows 가상 머신에서 Azure 진단 확장을 사용하도록 설정하는 방법에 대한 문서를 참조하세요.
App Insights를 사용하는 애플리케이션 수준 메트릭
애플리케이션의 성능에 대한 가시성을 높일 수 있도록 Application Insights를 사용할 수 있습니다. 애플리케이션에서 앱을 모니터링하고 Azure로 원격 분석을 보내는 작은 계측 패키지를 설치합니다. 애플리케이션의 응답 시간, 페이지 로드 성능 및 세션 수와 같은 메트릭을 모니터링할 수 있습니다. 이러한 애플리케이션 메트릭은 고객 환경에 영향을 미칠 수 있는 실행 가능한 인사이트를 기반으로 규칙을 트리거할 때 세분화되고 포함된 수준에서 자동 크기 조정 규칙을 만드는 데 사용할 수 있습니다.
App Insights에 대한 자세한 내용은 Application Insights란?을 참조하세요.
예약된 자동 크기 조정
일정에 따라 자동 크기 조정 규칙을 만들 수도 있습니다. 이러한 일정 기반 규칙을 사용하면 고정 시간에 가상 머신 수를 자동으로 조정할 수 있습니다. 성능 기반 규칙을 사용하면 자동 크기 조정 규칙이 트리거되고 새 가상 머신이 프로비전되기 전에 애플리케이션에 성능에 영향을 줄 수 있습니다. 이러한 수요를 예상할 수 있는 경우 추가 가상 머신이 프로비전되고 증가하는 고객 사용 및 애플리케이션 수요에 대비합니다.
다음 예제는 일정 기반 자동 크기 조정 규칙의 사용에 도움이 될 수 있는 시나리오입니다.
- 고객 수요가 증가하는 작업일 시작 시 가상 머신 수를 자동으로 확장합니다. 작업일이 끝나면 애플리케이션 사용량이 적은 경우 하룻밤 사이에 리소스 비용을 최소화하기 위해 가상 머신 수를 자동으로 조정합니다.
- 특정 월 또는 회계 주기 동안 사용량이 많은 애플리케이션이 있는 부서의 경우 증가된 수요를 원활하게 처리하도록 가상 머신 수를 자동으로 조정합니다.
- 마케팅 이벤트, 프로모션 또는 휴일 판매가 있는 경우 예상 고객 수요보다 먼저 가상 머신 수를 자동으로 확장할 수 있습니다.
제한점
- 지정된 확장 집합에 대해 최대 20개 자동 크기 조정 규칙을 사용할 수 있습니다.
다음 단계
다음 도구 중 하나를 사용하여 호스트 기반 메트릭을 사용하는 자동 크기 조정 규칙을 만들 수 있습니다.
가상 머신을 관리하는 방법에 대한 자세한 내용은 Azure PowerShell을 사용하여 Virtual Machine Scale Sets 관리를 참조하세요.
자동 크기 조정 규칙이 트리거되면 경고를 생성하는 방법을 알아보려면 자동 크기 조정 작업을 사용하여 Azure Monitor에서 이메일 및 웹후크 경고 알림을 보냅니다. 감사 로그를 사용하여 Azure Monitor에서 이메일 및 웹후크 경고 알림을 보낼 수도 있습니다.