자동 크기 조정 요소 식별

완료됨

자동 크기 조정을 사용하면 웹앱을 규모 확장한 후에 다시 규모 감축해야 하는 조건을 지정할 수 있습니다. 효과적으로 자동 크기 조정하면 피크 시간에 대량의 요청을 처리할 수 있는 충분한 리소스를 확보하는 한편, 수요가 감소할 때 비용을 관리할 수 있습니다.

리소스 사용량에 따라 요소의 조합에 따라 규모 감축 및 규모 확장할 시기를 감지하도록 자동 크기 조정을 구성할 수 있습니다. 자동 크기 조정은 일정에 따라 구성할 수도 있습니다.

이 단원에서는 서비스 자동 스케일링에 사용할 수 있는 요소를 지정하는 방법에 대해 알아봅니다.

자동 크기 조정 및 App Service 계획

자동 크기 조정은 웹앱에서 사용하는 App Service 계획의 기능입니다. 웹앱이 규모 확장되면 Azure에서 App Service 계획에 정의된 하드웨어의 새 인스턴스를 앱에 시작합니다.

런어웨이 자동 크기 조정을 방지하기 위해 App Service 계획에 인스턴스 제한이 있습니다. 비싼 가격 책정 계층의 계획에는 더 높은 제한이 있습니다. 자동 스케일링은 이 제한보다 더 많은 인스턴스를 만들 수 없습니다.

참고

App Service 계획의 가격 책정 계층 중 일부는 자동 크기 조정을 지원하지 않습니다.

자동 크기 조정 조건

자동 크기 조정 조건을 만들어 자동 크기 조정 방법을 나타냅니다. Azure에서 제공하는 두 가지 자동 크기 조정 옵션은 다음과 같습니다.

  • 디스크 큐 길이 또는 처리 대기 중인 HTTP 요청 수와 같은 메트릭에 따라 크기 조정합니다.
  • 일정에 따라 특정 인스턴스 수로 크기 조정합니다. 예를 들어 하루 중 특정 시간, 특정 날짜 또는 요일에 규모 확장하도록 조정할 수 있습니다. 종료 날짜도 지정하면 시스템이 해당 시점에 다시 규모 감축됩니다.

특정 인스턴스 수로만 크기 조정하면 정의된 개수의 인스턴스로만 규모 확장할 수 있습니다. 증분 방식으로 규모 확장해야 하는 경우 동일한 자동 크기 조정 조건에서 메트릭 및 일정 기반 자동 크기 조정을 결합할 수 있습니다. 이에 따라 하루 중 특정 시간 사이에서만 HTTP 요청 수가 임계값을 초과하는 경우 시스템이 규모 확장되도록 조정할 수 있습니다.

여러 자동 크기 조정 조건을 만들어 서로 다른 일정과 메트릭을 처리할 수 있습니다. 이런 조건 중 하나가 적용되면 Azure에서 서비스를 자동으로 스케일링합니다. App Service 계획에는 다른 조건이 적용되지 않을 경우 사용되는 기본 조건도 있습니다. 이 조건은 항상 활성 상태이며 일정이 없습니다.

자동 크기 조정 규칙에 대한 메트릭

메트릭에 따라 자동 크기 조정하려면 하나 이상의 자동 크기 조정 규칙을 정의해야 합니다. 자동 크기 조정 규칙은 모니터링할 메트릭과 이 메트릭이 정의된 임계값을 초과할 때 자동 크기 조정에서 대응하는 방법을 지정합니다. 웹앱을 모니터링할 수 있는 메트릭은 다음과 같습니다.

  • CPU 비율. 모든 인스턴스의 CPU 사용률을 나타냅니다. 값이 높으면 인스턴스가 CPU에 바인딩되어 클라이언트 요청을 처리하는 데 지연이 발생할 수 있음을 나타냅니다.
  • 메모리 비율. 모든 인스턴스에 걸친 애플리케이션의 메모리 점유율을 캡처합니다. 값이 높으면 사용 가능한 메모리가 부족할 수 있으며 하나 이상의 인스턴스가 실패할 수 있음을 나타냅니다.
  • 디스크 큐 길이. 모든 인스턴스의 미해결 I/O 요청 수를 측정한 것입니다. 값이 높으면 디스크 경합이 발생할 수 있음을 나타냅니다.
  • Http 큐 길이. 웹앱에서 처리 대기 중인 클라이언트 요청 수를 보여 줍니다. 이 숫자가 크면 408(시간 초과) HTTP 오류로 인해 클라이언트 요청이 실패할 수 있습니다.
  • 데이터 입력. 모든 인스턴스에서 받은 바이트 수입니다.
  • 데이터 출력. 모든 인스턴스에서 보낸 바이트 수입니다.

다른 Azure 서비스에 대한 메트릭에 따라 크기 조정할 수도 있습니다. 예를 들어 웹앱이 Service Bus 큐에서 받은 요청을 처리하는 경우 Azure Service Bus 큐에 있는 항목 수가 임계 길이를 초과하면 웹앱의 추가 인스턴스를 스핀업하는 것이 좋습니다.

자동 크기 조정 규칙에서 메트릭을 분석하는 방법

자동 크기 조정은 시간 경과에 따른 모든 인스턴스의 메트릭 값 추세를 분석하여 작동합니다. 분석은 다단계 프로세스입니다.

첫 번째 단계에서 자동 크기 조정 규칙은 시간 조직으로 알려진 기간 동안 모든 인스턴스의 메트릭에 대해 검색된 값을 집계합니다. 각 메트릭에는 자체의 시간 조직이 있지만, 대부분의 경우 이 기간은 1분입니다. 집계된 값은 시간 집계라고 합니다. 사용 가능한 옵션은 평균, 최소, 최대, 합계, 마지막, 개수입니다.

1분 간격은 메트릭의 변경이 자동 스케일링을 가치 있게 만들 수 있을 만큼 충분히 오래 지속하는지 여부를 결정하는 짧은 간격입니다. 따라서 자동 크기 조정 규칙은 시간 집계에서 계산된 값을 기간으로 알려진 더 긴 사용자 지정 기간 동안 추가로 집계하는 두 번째 단계를 수행합니다. 최소 기간은 5분입니다. 예를 들어 기간이 10분으로 설정되면 자동 스케일링 규칙에서 시간 조직에 대해 계산된 10개의 값을 집계합니다.

기간에 대한 집계 계산은 시간 조직의 집계 계산과 다를 수 있습니다. 예를 들어 시간 집계가 평균이고 수집된 통계가 1분 시간 조직에 걸친 CPU 비율인 경우, 매분마다 해당 분에 대한 모든 인스턴스의 평균 CPU 백분 사용률이 계산됩니다. 시간 조직 통계가 최대로 설정되고 규칙의 기간이 10분으로 설정된 경우, 규칙이 임계값을 초과했는지 여부를 결정하는 데 CPU 백분율 사용률에 대한 10개의 평균 값 중 최댓값이 됩니다.

자동 크기 조정 작업

자동 크기 조정 규칙에서 메트릭이 임계값을 초과했다고 감지하면 자동 크기 조정 작업을 수행할 수 있습니다. 자동 크기 조정 작업은 규모 확장 또는 규모 감축일 수 있습니다. 스케일 아웃 작업은 인스턴스 수를 늘리고 스케일 인 작업은 인스턴스 수를 줄입니다. 자동 크기 조정 작업은 연산자(예: 보다 작음, 보다 큼, 같음 등)를 사용하여 임계값에 대응하는 방법을 결정합니다. 규모 확장 작업은 일반적으로 보다 큼 연산자를 사용하여 메트릭 값을 임계값과 비교합니다. 규모 감축 작업은 보다 작음 연산자를 사용하여 메트릭 값을 임계값과 비교하는 경향이 있습니다. 자동 크기 조정 작업은 사용 가능한 수를 늘리거나 줄이는 대신 인스턴스 수를 특정 수준으로 설정할 수도 있습니다.

자동 크기 조정 작업에는 분 단위로 지정된 휴지 기간이 있습니다. 이 간격 동안에는 크기 조정 규칙이 다시 트리거되지 않습니다. 이는 시스템이 자동 크기 조정 이벤트 간에 안정화될 수 있도록 하기 위한 것입니다. 인스턴스를 시작하거나 종료하는 데 시간이 걸리므로 수집된 메트릭에서 몇 분 동안 크게 변경되지 않았음을 보여 줄 수도 있습니다. 최소 휴지 기간은 5분입니다.

자동 크기 조정 규칙 연결

워크로드가 감소하면 규모 감축을 계획해야 합니다. 자동 크기 조정 규칙은 동일한 자동 크기 조정 조건에서 쌍으로 정의하는 것이 좋습니다. 하나의 자동 크기 조정 규칙은 메트릭이 상한 임계값을 초과할 때 시스템을 규모 확장하는 방법을 나타내야 합니다. 그런 다음, 다른 하나의 규칙은 동일한 메트릭이 하한 임계값 미만으로 떨어질 때 시스템을 다시 스케일링하는 방법을 정의해야 합니다.

자동 크기 조정 규칙 결합

단일 자동 크기 조정 조건에는 여러 자동 크기 조정 규칙(예: 규모 확장 규칙 및 해당 규모 감축 규칙)이 포함될 수 있습니다. 그러나 자동 크기 조정 조건의 자동 크기 조정 규칙은 직접 관련될 필요가 없습니다. 동일한 자동 크기 조정 조건에서 정의할 수 있는 네 가지 규칙은 다음 과 같습니다.

  • HTTP 큐 길이가 10을 초과하면 1만큼 규모 확장합니다.
  • CPU 사용률이 70%를 초과하면 1만큼 규모 확장합니다.
  • HTTP 큐 길이가 0이면 1만큼 규모 감축합니다.
  • CPU 사용률이 50% 미만이면 1만큼 규모 감축합니다.

규모 확장 여부를 결정할 때 자동 스케일링 규칙(HTTP 큐 길이가 10을 초과 또는 CPU 사용률이 70%를 초과) 중 하나라도 충족되면 자동 스케일링 작업이 수행됩니다. 규모 감축할 때 모든 규모 감축 규칙(HTTP 큐 길이가 0 미만 CPU 사용률이 50% 미만)이 충족되는 경우에만 자동 스케일링 작업이 실행됩니다. 규모 감축 규칙이 하나만 충족되면 규모를 감축해야 하는 경우 규칙을 별도의 자동 크기 조정 조건으로 정의해야 합니다.