이 글에서는 Azure Event Grid 네임스페이스에서 자동 스케일링을 활성화하는 방법을 설명합니다. 자동 스케일링은 세 가지 구성 속성만 필요합니다: 활성화 플래그와 최소 및 최대 처리량 단위(TU) 제한. 이벤트 그리드는 모든 스케일링 로직을 내부적으로 관리합니다.
Azure 포털, Azure Resource Manager 템플릿, 또는 REST API를 사용해 자동 확장을 활성화할 수 있습니다.
사전 요구 사항
- Azure 구독입니다. 계정이 없다면, 무료 계정을 만드세요.
- 스탠다드 티어의 이벤트 그리드 네임스페이스입니다.
Important
기본 티어에서는 자동 스케일링이 없습니다.
자동 크기 조정 사용 - Azure Portal
Azure Portal에 로그인합니다.
검색창에서 Event Grid Namespaces 를 입력하고 결과 중에서 선택하세요.
목록에서 네임스페이스를 선택하세요.
설정에서 스케일을 선택합니다.
자동 스케일을 선택하세요.
최소 처리량 단위 값을 설정하세요. 이 값은 네임스페이스가 축소할 수 있는 TU의 최소 수입니다.
최대 처리량 단위 값을 설정하세요. 이 값은 네임스페이스가 확장할 수 있는 최대 TU 수입니다. 최대 지원 값은 40입니다.
적용을 선택합니다.
변경 사항 요약을 검토한 후 새로운 자동 스케일 설정을 적용하려면 확인 을 선택하세요.
메모
변경 사항을 적용한 후 자동 스케일링은 거의 즉시 적용됩니다. 네임스페이스는 활용도를 지속적으로 평가하고 필요에 따라 TU를 조정합니다.
자동 크기 조정 사용 - ARM 템플릿
다음 Azure Resource Manager 템플릿을 사용하여 자동 스케일링이 활성화된 이벤트 그리드 네임스페이스를 생성하거나 업데이트하세요.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"namespaceName": {
"type": "string",
"metadata": { "description": "Name of the Event Grid namespace." }
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": { "description": "Azure region for the namespace." }
},
"minThroughputUnits": {
"type": "int",
"defaultValue": 1,
"minValue": 1,
"maxValue": 40,
"metadata": { "description": "Minimum number of throughput units." }
},
"maxThroughputUnits": {
"type": "int",
"defaultValue": 10,
"minValue": 1,
"maxValue": 40,
"metadata": { "description": "Maximum number of throughput units." }
},
"enableAutoscale": {
"type": "bool",
"defaultValue": true,
"metadata": { "description": "Set to true to enable autoscale." }
}
},
"resources": [
{
"type": "Microsoft.EventGrid/namespaces",
"apiVersion": "2025-11-15-preview",
"name": "[parameters('namespaceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard",
"capacity": "[parameters('minThroughputUnits')]"
},
"properties": {
"autoScaleConfiguration": {
"enableAutoScale": "[parameters('enableAutoscale')]",
"minimumThroughputUnits": "[parameters('minThroughputUnits')]",
"maximumThroughputUnits": "[parameters('maxThroughputUnits')]"
}
}
}
]
}
Azure CLI를 사용하여 템플릿을 배포하세요:
az deployment group create \
--resource-group <resource-group-name> \
--template-file autoscale-namespace.json \
--parameters namespaceName=<namespace-name> \
minThroughputUnits=2 maxThroughputUnits=10
자동 크기 조정 사용 - REST API
REST API를 사용해 이벤트 그리드 네임스페이스를 생성하거나 업데이트할 때 자동 스케일을 활성화할 수 있습니다.
자동 스케일(PUT)이 활성화된 네임스페이스 생성 또는 업데이트
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}?api-version=2025-11-15-preview
요청 본문:
{
"location": "eastus",
"sku": {
"name": "Standard",
"capacity": 1
},
"properties": {
"autoScaleConfiguration": {
"enableAutoScale": true,
"minimumThroughputUnits": 2,
"maximumThroughputUnits": 8
}
}
}
기존 네임스페이스에서 자동 스케일링 업데이트(PATCH)
PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}?api-version=2025-11-15-preview
요청 본문:
{
"properties": {
"autoScaleConfiguration": {
"enableAutoScale": true,
"minimumThroughputUnits": 1,
"maximumThroughputUnits": 10
}
}
}
자동 스케일 설정 검증
Autoscale을 활성화한 후, 네임스페이스 세부 정보를 가져와서 구성을 확인하세요.
REST API
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}?api-version=2025-11-15-preview
응답 본문에는 다음과 autoScaleConfiguration 같은 섹션이 포함됩니다:
{
"id": "/subscriptions/12345678-.../providers/Microsoft.EventGrid/namespaces/my-namespace",
"name": "my-namespace",
"type": "Microsoft.EventGrid/namespaces",
"location": "eastus",
"sku": {
"name": "Standard",
"capacity": 1
},
"properties": {
"provisioningState": "Succeeded",
"autoScaleConfiguration": {
"enableAutoScale": true,
"minimumThroughputUnits": 1,
"maximumThroughputUnits": 10
},
"topicsConfiguration": {
"inputSchema": "CloudEventSchemaV1_0"
},
"topicSpacesConfiguration": {
"state": "Enabled",
"maximumSessionExpiryInHours": 1,
"maximumClientSessionsPerAuthenticationName": 1
},
"publicNetworkAccess": "Enabled",
"isZoneRedundant": false,
"minimumTlsVersionAllowed": "1.2"
},
"systemData": {
"createdBy": "user@contoso.com",
"createdByType": "User",
"createdAt": "2026-01-15T10:30:00.0000000Z",
"lastModifiedBy": "user@contoso.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2026-01-15T11:45:00.0000000Z"
}
}
자동 스케일 비활성화
이 섹션에서는 Azure 포털과 REST API를 사용하여 이벤트 그리드 네임스페이스의 자동 스케일링을 비활성화하는 방법을 보여줍니다. 네임스페이스는 현재 TU 할당을 유지하며 자동으로 확장을 멈춥니다.
Azure portal
Azure 포털을 사용하여 자동 확장을 비활성화하는 방법은 다음과 같습니다:
Azure 포털에서 Event Grid 네임스페이스로 이동합니다.
설정에서 스케일을 선택합니다.
자동 스케일을 끄려면 수동 스케일을 선택하세요.
적용을 선택하여 변경 내용을 저장합니다.
REST API
REST API를 사용할 때는 properties에서 enableAutoScale를 false(으)로 설정하세요.
PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}?api-version=2025-11-15-preview
요청 본문:
{
"properties": {
"autoScaleConfiguration": {
"enableAutoScale": false
}
}
}
모범 사례
- 기본 부하를 감당할 최소 TU 수를 설정하세요. 자동 확장은 사용량 변화를 감지하고 용량을 늘리는 데 시간이 필요합니다. 평상시 트래픽을 감당할 수 있는 최소값을 설정하면 초기 증가 단계에서 스로틀링을 방지할 수 있습니다.
- 예산이 허용하는 최대 TU 수를 너무 높게 설정하지 마세요. 할당된 모든 TU는 비용이 발생합니다. 피크 시간대에 지불할 수 있는 최대 용량으로 설정하세요.
- 교통 체증 시 쿨다운 시간을 고려하세요. 스케일업 후에는 다음 스케일 작전을 시작하기 전 동적 쿨다운 기간이 있습니다. 작업 부하가 유휴에서 최고점으로 몇 초 만에 급증한다면, 초기 폭발을 흡수할 수 있는 최소 TU 수를 설정하세요.
- 모든 카테고리의 TU별 수용 인원 한도를 검토하세요. Autoscale은 이벤트 인그레스, 이벤트 이그레스, MQTT 게시, MQTT 클라이언트 등 모든 카테고리를 함께 평가합니다. 만약 작업 부담이 한 카테고리(예: MQTT 연결)에 집중된다면, TU 요구사항이 주로 그 카테고리에 의해 결정될 수 있습니다.