이 문서에서는 영역 중복 컨테이너 레지스트리를 설정하는 방법을 설명합니다.
영역 중복은 가용성 영역을 지원하는 지역의 모든 Azure Container Registries에 대해 기본적으로 사용하도록 설정되므로 추가 비용 없이 리소스의 복원력이 자동으로 향상됩니다. 이 향상된 기능은 기본 및 표준을 비롯한 모든 SKU에 적용되며 지원되는 지역의 새 레지스트리와 기존 레지스트리 모두에 롤아웃되었습니다.
중요합니다
Azure Portal 및 CLI는 아직 영역 중복 업데이트를 정확하게 반영하지 않을 수 있습니다.
zoneRedundancy
지원되는 지역의 모든 레지스트리에 대해 영역 중복이 활성화되어 있더라도 레지스트리 구성의 속성은 여전히 false로 표시될 수 있습니다. 이 기본 동작을 보다 투명하게 반영하도록 포털 및 API 화면을 적극적으로 업데이트하고 있습니다. 이전에 사용하도록 설정된 모든 기능은 예상대로 계속 작동합니다.
가용성 영역 지원 요구 사항 및 기능 및 다중 지역 배포 옵션에 대한 자세한 내용은 Azure Container Registry의 안정성을 참조하세요.
Prerequisites
영역 중복 레지스트리 만들기
프리미엄 서비스 계층에서 영역 중복 레지스트리를 만들려면 Azure Portal, Azure CLI 또는 Bicep 파일을 사용합니다.
Azure Portal에 로그인합니다.
리소스 만들기>컨테이너>컨테이너 레지스트리를 선택합니다.
기본 사항 탭에서 리소스 그룹을 선택하거나 만들고, 고유한 레지스트리 이름을 입력합니다.
위치의 가용성 영역을 지원하는 지역(예: 미국 동부)을 선택합니다.
SKU에서 프리미엄을 선택합니다.
가용성 영역에서 사용을 선택합니다.
필요에 따라 더 많은 레지스트리 설정을 구성한 다음, 검토 + 만들기를 선택합니다.
만들기를 선택하여 레지스트리 인스턴스를 배포합니다.
Azure CLI 버전 2.17.0 이상 또는 Azure Cloud Shell이 있는지 확인합니다. 설치 또는 업그레이드해야 하는 경우 Azure CLI 설치를 참조하세요.
가용성 영역을 지원하는 지역에 리소스 그룹이 없는 경우 az group create 를 실행하여 리소스 그룹을 만듭니다(값으로 바꾸기 <resource-group-name>
및 <___location>
사용).
az group create --name <resource-group-name> --___location <___location>
eastus와 같은 가용성 영역을 지원하는 지역을 선택합니다.
az acr create 명령을 실행하여 프리미엄 서비스 계층에서 영역 사용 레지스트리를 만드세요. <resource-group-name>
, <container-registry-name>
, <region-name>
를 사용자 값으로 바꾸세요.
az acr create \
--resource-group <resource-group-name> \
--name <container-registry-name> \
--___location <region-name> \
--zone-redundancy enabled \
--sku Premium
명령 출력에서 레지스트리의 zoneRedundancy
속성을 확인합니다.
zoneRedundancy
이(가) "Enabled"
으로 설정되면 레지스트리는 영역 중복성을 갖습니다.
{
[...]
"zoneRedundancy": "Enabled"
}
가용성 영역을 지원하는 지역에 리소스 그룹이 없는 경우 az group create 를 실행하여 리소스 그룹을 만듭니다(값으로 바꾸기 <resource-group-name>
및 <___location>
사용).
az group create --name <resource-group-name> --___location <___location>
영역 중복 레지스트리를 만들려면 다음 Bicep 파일을 새 파일에 복사하고 같은 파일 이름을 registryZone.bicep
사용하여 저장합니다.
기본적으로 Bicep 파일은 레지스트리에서 영역 중복을 사용하도록 설정합니다.
@description('Globally unique name of your Azure Container Registry')
@minLength(5)
@maxLength(50)
param containerRegistryName string = 'acr${uniqueString(resourceGroup().id)}'
@description('Location for registry home replica.')
param ___location string = resourceGroup().___location
@description('Enable admin user for registry. This is not recommended for production use.')
param adminUserEnabled bool = false
@description('Enable zone redundancy of registry\'s home replica. Requires the registry\'s region supports availability zones.')
@allowed([
'Enabled'
'Disabled'
])
param containerRegistryZoneRedundancy string = 'Enabled'
// Tier of your Azure Container Registry. Geo-replication and zone redundancy require Premium SKU.
var acrSku = 'Premium'
resource containerRegistry 'Microsoft.ContainerRegistry/registries@2025-04-01' = {
name: containerRegistryName
___location: ___location
sku: {
name: acrSku
}
properties: {
adminUserEnabled: adminUserEnabled
zoneRedundancy: containerRegistryZoneRedundancy
}
}
output containerRegistryLoginServer string = containerRegistry.properties.loginServer
다음 az deployment group create 명령을 실행하여 이전 템플릿 파일(값 바꾸기 <resource-group-name>
및 <registry-name>
사용)을 사용하여 레지스트리를 만듭니다.
Note
매개 변수 없이 템플릿을 배포하면 고유한 이름이 만들어집니다.
az deployment group create \
--resource-group <resource-group-name> \
--template-file registryZone.json \
--parameters containerRegistryName=<registry-name>